add defaults for callback