add utils for ease for callback