Added return value and exception modification capability.