public static function run($class, $method, array $params, $implementation) {
		$implementation = static::_bcImplementation($class, $method, $params, $implementation);

		if (!static::hasApplied($class, $method)) {
			return $implementation($params);
		}
		return static::_chain($class, $method)->run($params, $implementation);
	}