Changed the get-canoe function into a macro. Also, create a function to check for success.