works with atoms, but not well