function Create($data) {
		if (!$this->allowBlankCreate && !$data)
			return;
		$this->LoadSchema();

		if ($this->enforceTypes)
			foreach ($this->schema as $key => $props)
				if (isset($data[$key]) || $props['type'] == 'json-import')
					$data[$key] = $this->UnCastType($props['type'], isset($data[$key]) ? $data[$key] : null, $data);

		$this->ResetQuery(array(
			'method' => 'create',
			'table' => $this->table,
			'data' => $data,
		));

		$this->Trigger('access', $data);
		if (!$this->continue)
			return FALSE;

		$this->Trigger('push', $data);
		if (!$this->continue)
			return FALSE;

		$this->Trigger('create', $data);
		if (! $data = $this->FilterFields($data, 'set')) // Nothing to save
			return FALSE;
		if (!$this->continue)
			return FALSE;

		$this->db->insert($this->table, $data);
		$id = $this->db->insert_id();

		$this->Trigger('created', $id, $data);
		return $this->returnRow ? $this->Get($id) : $id;
	}