anchor.diff:      phones = (m["phones"] as Iterable<Map>)?.map((m) => new Item.fromMap(m));
       postalAddresses = (m["postalAddresses"] as Iterable<Map>)?.map((m) => new PostalAddress.fromMap(m));
     }
  +
  +  static Map _toMap(Contact contact){
  +    print("Begin tomap");
  +    var emails, phones, postalAddresses = [];
  +    for(Item email in contact.emails){
  +      emails.add(Item._toMap(email));
  +    }
  +    for(Item phone in contact.phones){
  +      phones.add(Item._toMap(phone));
  +    }
  +    for(PostalAddress address in contact.postalAddresses){
  +      postalAddresses.add(PostalAddress._toMap(address));
  +    }
  +    print("Begin returning");
  +    print("Name is ${contact.givenName}");
  +    print("Last name is ${contact.familyName}");
  +    return {
  +      "displayName": contact.displayName,
  +      "givenName": contact.givenName,
  +      "middleName": contact.middleName,
  +      "familyName": contact.familyName,
  +      "prefix": contact.prefix,
  +      "suffix": contact.suffix,
  +      "company" : contact.company,
  +      "jobTitle": contact.jobTitle,
  +      "emails" : emails,
  +      "phones" : phones,
  +      "postalAddresses" : postalAddresses
  +    };
  +  }
  +
   }
   
   class PostalAddress{
  
positive.code:   Contact();
  
    String displayName, givenName, middleName, prefix, suffix, familyName, company, jobTitle;
    Iterable<Item> emails;
    Iterable<Item> phones;
    Iterable<PostalAddress> postalAddresses;
  
    Contact.fromMap(Map m){
      displayName = m["displayName"];
  
negative.code:     region = m["region"];
      country = m["country"];
    }
  
    static Map _toMap(PostalAddress address) => {
      "label": address.label,
      "street": address.street,
      "city": address.city,
      "postcode": address.postcode,
      "region": address.region,
      "country": address.country
    };
  
  }
  
  /**
  