using System;
using System.Linq;
namespace RedditDailyProgrammer
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(number110Decode("Jr;;p ept;f"));
Console.WriteLine(number110Decode("Lmiyj od ,u jrtp"));
Console.WriteLine(number110Decode("Trffoy $22- Dp;brf/"));
}
static string number110Decode(string msg)
{
string unshift = " QWERTYUIOP{}ASDFGHJKL:\"ZXCVBNM<>?qwertyuiop[]asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+`1234567890-=";
return new string(msg.Select((ch) => unshift[Math.Max(unshift.IndexOf(ch) - 1, 0)]).ToArray());
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKCm5hbWVzcGFjZSBSZWRkaXREYWlseVByb2dyYW1tZXIKewogICAgY2xhc3MgUHJvZ3JhbQoJewogICAgICAgICAgICBzdGF0aWMgdm9pZCBNYWluKHN0cmluZ1tdIGFyZ3MpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKG51bWJlcjExMERlY29kZSgiSnI7O3AgZXB0O2YiKSk7CiAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShudW1iZXIxMTBEZWNvZGUoIkxtaXlqIG9kICx1IGpydHAiKSk7CiAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShudW1iZXIxMTBEZWNvZGUoIlRyZmZveSAkMjItIERwO2JyZi8iKSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHN0YXRpYyBzdHJpbmcgbnVtYmVyMTEwRGVjb2RlKHN0cmluZyBtc2cpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0cmluZyB1bnNoaWZ0ID0gIiBRV0VSVFlVSU9Qe31BU0RGR0hKS0w6XCJaWENWQk5NPD4/cXdlcnR5dWlvcFtdYXNkZmdoamtsOyd6eGN2Ym5tLC4vfiFAIyQlXiYqKClfK2AxMjM0NTY3ODkwLT0iOwogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBzdHJpbmcobXNnLlNlbGVjdCgoY2gpID0+IHVuc2hpZnRbTWF0aC5NYXgodW5zaGlmdC5JbmRleE9mKGNoKSAtIDEsIDApXSkuVG9BcnJheSgpKTsKICAgICAgICAgICAgfQoJfQp9Cg==