Flick Input

Time Limit : 1 sec, Memory Limit : 65536 KB

Flick Input

A: フリック入力

二次元が大好きな大学生,通称2D君は,長年使用していたガラパゴス携帯からスマホに買いかえた.初めてスマホを操作した2D君は,文字入力の方式が,昔の携帯と少し違うことに気付いた.スマホでは,画面をタッチ・フリックできることを利用して,フリック入力という方式が採用されていたのである(フリックとは,「画面上で指を滑らせて弾く操作」を意味する).フリック入力は,次に示すような文字入力方式である.

フリック入力では,図A(a)のように,0-9の10個のボタンにより入力を行う(#と*については,今回は省略している).各ボタンには,図のようにあ行-わ行が1つずつ割り当てられている.

図A: スマホのボタン詳細

ある1つのボタンは,図A(b)に表す方法により操作することができる.つまり,

  • ボタンを「タッチ」するだけだと,そのボタンに対応する「あ段」の文字を出力
  • ボタンを「左に向かってフリック」すると,「い段」を出力
  • ボタンを「上に向かってフリック」すると,「う段」を出力
  • ボタンを「右に向かってフリック」すると,「え段」を出力
  • ボタンを「下に向かってフリック」すると,「お段」を出力

ということである.フリック入力の仕方を全てのボタンについて表すと図A(c)のようになる.「ん」を出力するためには,ボタン0を上側にフリックすることに注意してほしい.

あなたの仕事は,フリック入力の操作を示す文字列が与えられたとき,その操作の結果出力される文字列を求めることである.

Input

フリック入力の操作を表す文字列が,1行で与えられる(2文字以上1000文字以下).この文字列は,操作するボタンを表す'0'-'9'の数字と,フリック方向を表す'T','L','U','R','D'の5種類の文字の組み合わせからなる.

フリック方向を表す文字は,次の意味を表す.

  • 'T':タッチするだけ
  • 'L':左にフリックする
  • 'U':上にフリックする
  • 'R':右にフリックする
  • 'D':下にフリックする

例えば,"2D"は,「2のボタンを下に向かってフリック」という操作を表すため,「こ」を出力することができる.

与えられる文字列は,数字1文字とフリック方向を表す1文字が交互に現れる.また,必ず数字1文字から始まり,フリック方向を表す1文字で終わる.さらに,図A(c)において,文字がない場所に向かってフリックを行うことはない("8L"などの入力はない).

Output

フリック入力操作の結果を表す文字列をローマ字表記で出力せよ.

ローマ字の子音には,

  • か行:'k'
  • さ行:'s'
  • た行:'t'
  • な行:'n'
  • は行:'h'
  • ま行:'m'
  • や行:'y'
  • ら行:'r'
  • わ行:'w'

を使用すること.ひらがな1文字を表すローマ字は,上記で表される子音と母音('a','i','u','e','o')をセットにして2文字で出力すること."shi"や"fu"はこの条件に反するため間違いである.ただし,「あ行」の文字は母音1文字だけを出力し,「ん」は'n'を2回続けて"nn"と出力すること.

文字列の最後には,改行を出力すること.

Sample Input 1

5R2D

Sample Output 1

neko

Sample Input 2

8U9U6U0T

Sample Output 2

yuruhuwa

Sample Input 3

9L4U7R1L2D0U4R3U4D

Sample Output 3

ritumeikonntesuto

Source: Aizu Competitive Programming Camp 2012 , Day 1, Aizu-Wakamatsu, Japan, 2012-09-03
Problem Setter:  THE 2DM@STER(@Respect2D, @slip0110, @_shnyh) ,  @kioa341, @utisam