add openWithCallback and return values