fixed order-of-operations bug with singleton