def build_from_hash(attributes)
      return nil unless attributes.is_a?(Hash)
      self.class.swagger_types.each_pair do |key, type|
        key_attr = self.class.attribute_map[key].to_s
        key_attr[0] = key_attr[0].downcase
        if type =~ /\AArray<(.*)>/i
          # check to ensure the input is an array given that the the attribute
          # is documented as an array but the input is not
          if attributes[key_attr.to_sym].is_a?(Array)
            self.send("#{key}=", attributes[key_attr.to_sym].map{ |v| _deserialize($1, v) } )
          end
        elsif !attributes[key_attr.to_sym].nil?
          self.send("#{key}=", _deserialize(type, attributes[key_attr.to_sym]))
        end # or else data not found in attributes(hash), not an issue as the data can be optional
      end
      self
    end
def build_from_hash(attributes)
      return nil unless attributes.is_a?(Hash)
      self.class.swagger_types.each_pair do |key, type|
        key_attr = self.class.attribute_map[key].to_s
        key_attr[0] = key_attr[0].downcase
        if type =~ /\AArray<(.*)>/i
          # check to ensure the input is an array given that the the attribute
          # is documented as an array but the input is not
          if attributes[key_attr.to_sym].is_a?(Array)
            self.send("#{key}=", attributes[key_attr.to_sym].map{ |v| _deserialize($1, v) } )
          end
        elsif !attributes[key_attr.to_sym].nil?
          self.send("#{key}=", _deserialize(type, attributes[key_attr.to_sym]))
        end # or else data not found in attributes(hash), not an issue as the data can be optional
      end
      self
    end
Checks equality by comparing each attribute.
 @param [Object] Object to be compared
 @see the `==` method
 @param [Object] Object to be compared
 Calculates hash code according to all attributes.
 @return [Fixnum] Hash code
 Builds the object from hash
 @param [Hash] attributes Model attributes in the form of hash
 @return [Object] Returns the model itself