i hate singleton