upgrade singleton so static methods work