Tonight, I found a programming puzzle while reading the blog "It's common sense, stupid". I solved the puzzle, but I don't know what to do next. Do you know what I am supposed to do once the puzzle is solved? Here is the puzzle for your enjoyment:

```                      ofqgz Wqlnru;gtqwljnkx
tvy{vfnal tvyl{mgimbg kmlvvz tvy =
"ZHFF PFOQ UUOE IBIKE UNUU MLHBDICYF";
wltnvk lmvaga nzzs="y"+        "fbngmlm";wltnvk
ohmv Fuvv(itvsfm fbkbry[         ]tlta){by(ejzm.Ymgzxz
==0)Fuvv(tkk,skam);meli            {ay(ueol=="")kilnla
;qy(tvyl=="")ueol[               1]=tvys;pnz tkkm=tlta[
0];otv skat=65;qgm            ejzj=nzzn-ejza;  vvm
tvylm=nzzl-97;          mx(Vbnz.BlPwmnrz(tkkm
))tltx=(tkkh-tltal+26)    %26;Vsfliym.Pkmlx((wuik
)(tvyi+ueoz));Feag(ueol.Lytlneqgz(1),
ejzm.Fculxjbht(1));}}}}
```

The solution to the puzzle is the following C# program. The puzzle is a simple cryptogram where the jey is 'unittest'.

```using System;
namespace arg
{
class args
{
static string arg = "GNSX WMKY BABW PIESL AAMB THPIJVUFM";
static string argz = "u" + "nittest";
static void Main(params string[] args)
{
if (args.Length == 0) Main(arg, argz);
else
{
if (args == "") return;
if (args == "") args = argz;
var argu = args;
var argg = 65;
int argp = argu - argg;
int argss = args - 97;
if (Char.IsLetter(argu)) argp = (argp - argss + 26) % 26;
Console.Write((char)(argp + argg));
Main(args.Substring(1),args.Substring(1));
}
}
}
}
```

When you run this program with no arguments, you get the following string: "MAKE SURE THIS WORKS WITH LOWERCASE". Ironically, the program does not process strings contains lowercase.

I used cryptanalysis and a bit of python script to solve the puzzle. This was entertaining.