add singletons and static