anchor.diff:        setDomain( domain );
         return this;
       }
  -  
  +
       /**
       * @hint Sets the subdomain to use for this authenticated domain
       */
  
positive.code:         setIps( ips );
        else
          setIps( ips.listToArray() );
    
        return this;
      }
    
      /**
      * @hint Appends a single ip to the ips array
      */
      public any function addIp( required string ip ) {
        variables.ips.append( ip );
    
        return this;
      }
    
  
      /**
      * @hint Because the domain is the only required field this helper builds the body based on the parameters passed in.
      */
      public string function build() {
    
        var body = '';
        var properties = getPropertyValues();
        var count = properties.len();
  
negative.code:       );
        return '{' & body & '}';
      }
  
      private string function serializeIps( required array data ) {
        var serializedData = data.reduce(
          function( result, item, index ) {
            if ( result.len() ) result &= ',';
  
            return result & '"#item#"';
          }, ''
        );
  
        return '[' & serializedData & ']';
      }
  
  
      /**
      * @hint converts the array of properties to an array of their keys/values, while filtering those that have not been set
      */
      private array function getPropertyValues() {
  
        var propertyValues = getProperties().map(
          function( item, index ) {
            return {
  