adjust msg handler interface