final public static function setUp(\Psr\Log\LoggerInterface $logger = null, $traceAlwaysOn = false, \Closure $lastAction = null, $ignore = [])
	{
		ini_set('display_errors', 0);

		error_reporting(E_ALL - array_sum($ignore));

		self::$ignore = $ignore;

		self::$defaultErrorPath = [
			'text'	=>	__DIR__ . '/templates/text.php',
			'html'	=>	__DIR__ . '/templates/html.php',
			'json'	=>	__DIR__ . '/templates/json.php',
			'xml'	=>	__DIR__ . '/templates/xml.php'
		];

		self::$httpHandler = (new Response())->withTypeNegotiation()->withStatus(500);

		self::$logger = $logger;
		self::$trace = $traceAlwaysOn;
		self::$lastAction = $lastAction;

		set_exception_handler(['Exception\BooBoo','exceptionHandler']);
		set_error_handler(['Exception\BooBoo','errorHandler']);
		register_shutdown_function(['Exception\BooBoo','shutdownFunction']);
	}