rpn~l~j~h~e}c}a}_}]|[}Z}XWVUTSRRQQQPPOONNNNNNOQUY]aeim}p|s{uzwzxzxyxywyvyuysyrypynylyjyhzfzdza{_{]{[|Z}X~WVUTSSRRQQPPPOOOOOOPRVZ_cgkoruxyz~z}z}z|y|w|u|s|q|p|m|k}i}f}d~b~`~^~\~ZYXWVU