pragma singleton compiling added