 		mutableFields.updateValue(value, forKey: field)
 	}
 	
-	public init(type: String, id: String? = nil, fields: [String: Encodable?] = [String: Encodable?]()) {
+	public init(type: String, id: String? = nil, fields: [String: Encodable?]? = nil) {
 		self.type = type
 		self.id = id 
-		self.mutableFields = fields 
+		if let fields = fields {
+			self.mutableFields = fields
+		}
 	}
 }
 

	public var id: String?
	
	/// Fields and values that would be encoded for update or insert to Salesforce
	public fileprivate(set) var mutableFields: [String: Encodable?]
	
	fileprivate var container: KeyedDecodingContainer<RecordCodingKey>?
	

		self.type = type
		self.id = id
		self.container = topContainer
	}
	
	/// Encodes this record.
