public static Value PostalAddress(G.PostalAddress x) => new Entity
 {
     [nameof(x.AddressLines)]       = IEnumerable(x.AddressLines),
     [nameof(x.Recipients)]         = IEnumerable(x.Recipients),
     [nameof(x.Sublocality)]        = String(x.Sublocality),
     [nameof(x.Locality)]           = String(x.Locality),
     [nameof(x.AdministrativeArea)] = String(x.AdministrativeArea),
     [nameof(x.SortingCode)]        = String(x.SortingCode),
     [nameof(x.PostalCode)]         = String(x.PostalCode),
     [nameof(x.LanguageCode)]       = String(x.LanguageCode),
     [nameof(x.RegionCode)]         = String(x.RegionCode),
     [nameof(x.Organization)]       = String(x.Organization),
     [nameof(x.Revision)]           = Int32(x.Revision),
 };
        public static G.PostalAddress PostalAddress(Value x)
        {
            var addr = new G.PostalAddress
            {
                Sublocality        = String(x.EntityValue[nameof(G.PostalAddress.Sublocality)]),
                Locality           = String(x.EntityValue[nameof(G.PostalAddress.Locality)]),
                AdministrativeArea = String(x.EntityValue[nameof(G.PostalAddress.AdministrativeArea)]),
                SortingCode        = String(x.EntityValue[nameof(G.PostalAddress.SortingCode)]),
                PostalCode         = String(x.EntityValue[nameof(G.PostalAddress.PostalCode)]),
                LanguageCode       = String(x.EntityValue[nameof(G.PostalAddress.LanguageCode)]),
                RegionCode         = String(x.EntityValue[nameof(G.PostalAddress.RegionCode)]),
                Organization       = String(x.EntityValue[nameof(G.PostalAddress.Organization)]),
                Revision           = Int32(x.EntityValue[nameof(G.PostalAddress.Revision)]),
            };

            addr.AddressLines.AddRange(IEnumerable <string>(x.EntityValue[nameof(G.PostalAddress.AddressLines)]));
            addr.Recipients.AddRange(IEnumerable <string>(x.EntityValue[nameof(G.PostalAddress.Recipients)]));
            return(addr);
        }