public function create($data) {
		// hydrate
		$serializer = Kstruktur::getSerializer();
		$model = $serializer->hydrate(new Kstruktur(), $data);
		$this->hydrateRelationships($model, $data);

		// dispatch pre save hooks
		$this->dispatch(KstrukturEvent::PRE_CREATE, $model, $data);
		$this->dispatch(KstrukturEvent::PRE_SAVE, $model, $data);

		// validate
		$validator = $this->getValidator();
		if ($validator !== null && !$validator->validate($model)) {
			return new NotValid([
				'errors' => $validator->getValidationFailures()
			]);
		}

		// save and dispatch post save hooks
		$model->save();
		$this->dispatch(KstrukturEvent::POST_CREATE, $model, $data);
		$this->dispatch(KstrukturEvent::POST_SAVE, $model, $data);

		return new Created(['model' => $model]);
	}