refactored zero