public static IIdentifiable GetIdentity(InputIdentity key)
        {
            switch (key)
            {
                case InputIdentity.A:
                    return new Identity(NsInput + key, "A", "A");
                case InputIdentity.B:
                    return new Identity(NsInput + key, "B", "B");
                case InputIdentity.C:
                    return new Identity(NsInput + key, "C", "C");
                default:
                    break;
            }

            throw new NotImplementedException(key.ToString());
        }
 public IBaseInput GetInput(InputIdentity identity)
 {
     var id = GetIdentity(identity).Id;
     return Inputs
         .Where(i => i.Id == id)
         .SingleOrDefault();
 }