protected function setup_storage() {
		$storage = $this->get_option( 'storage' );

		if ( 'option' === $storage ) {
			$storage = Option_Storage::get_instance();
		} elseif ( 'thememod' === $storage ) {
			$storage = Theme_Mod_Storage::get_instance();
		} elseif ( is_string( $storage ) && is_subclass_of( $storage, Storage::class ) ) {
			$storage = new $storage;
		} elseif ( is_callable( $storage ) ) {
			$storage = $storage( $this );
		}

		if ( $storage instanceof Storage ) {
			$this->set_storage( $storage );
		}
	}