bound function refactor and adjust some params