some changes to use it with composer autoload