It works, except for using Marshal for arguments.