splitted module up into files