[FIX] restructure AtomicObjectFactory