push my algo final