meged all code into a single file