refactor function order