public void Visit(CThing cThing)
 {
     Result = new CTransformedThing(cThing, Arg);
 }
 class CTransformedThing : ITransformedThing { public CTransformedThing(CThing cThing, int arg)
                                               {
                                               }