update lifecycle methods to maybe fix race condition???