split utils into separate module