protected function prepare_properties( $properties ) {
		$result = [];
		$value  = $this->get_value();
		$value  = is_array( $value ) ? $value : [];

		foreach ( $properties as $property ) {
			$render_property = clone $property->get_options();
			$value_slug      = $property->get_slug( true );

			if ( array_key_exists( $value_slug, $value ) ) {
				$render_property->value = $value[$value_slug];
			} else {
				$render_property->value = null;
			}

			$render_property->slug = $this->html_name( $property );

			$result[] = $render_property;
		}

		return $result;
	}