public static IMaybe <string> NameFromVariable(Verb verb) => verb.As <Push>() .Map(push => push.Value.As <Variable>()) .Map(variable => variable.Name);