made it more module friendly