push method refactorization and debugging