package Ġa Ċ Ċ import Ġjava . io . File Ċ Ċ fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĊĠĠĠ Ġ// Ġexample Ċ // ĠĠĠ Ġvar Ġinput Ġ= Ġ" abc de ". to Mutable List () Ċ // ĠĠĠ Ġval Ġmoves Ġ= ĠlistOf (" s 1 ", Ġ" x 3 / 4 ", Ġ" pe / b ") ĊĊĠĠĠ Ġ// Ġproduction ĊĠĠĠ Ġvar Ġinput Ġ= Ġ" abcdefgh ijkl mn op ". to Mutable List () ĊĠĠĠ Ġval Ġmoves Ġ= ĠFile (" input . txt "). read Text (). trim (). split (",") ĊĊĠĠĠ Ġfor Ġ( move Ġin Ġmoves ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( move [ 0 ]) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ' s ' Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġn Ġ= Ġmove . substring ( 1 ). toInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġve ge Ġ= Ġinput . sub List ( input . size Ġ- Ġn , Ġinput . size ) Ġ// . to Mutable List () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġele je Ġ= Ġinput . sub List ( 0 , Ġinput . size Ġ- Ġn ) Ġ// . to Mutable List () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinput Ġ= Ġ( ve ge Ġ+ Ġele je ). to Mutable List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ' x ' Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparts Ġ= Ġmove . substring ( 1 ). split ("/ "). map Ġ{ Ġit . toInt () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtmp Ġ= Ġinput [ parts [ 0 ]] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinput [ parts [ 0 ]] Ġ= Ġinput [ parts [ 1 ]] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinput [ parts [ 1 ]] Ġ= Ġtmp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ' p ' Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġc 1 Ġ= Ġmove [ 1 ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġc 2 Ġ= Ġmove [ move . length - 1 ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos 1 Ġ= Ġinput . indexOf ( c 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos 2 Ġ= Ġinput . indexOf ( c 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtmp Ġ= Ġinput [ pos 1 ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinput [ pos 1 ] Ġ= Ġinput [ pos 2 ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinput [ pos 2 ] Ġ= Ġtmp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprintln ( input ) ĊĠĠĠ Ġprintln ( input . join ToString ("")) Ċ }