require PHP 5.4+