SPL Debug: Going to throw exception [ Ex | Ex1 ]. SPL Debug: Now throwing the exception [ Ex | Ex1 ]. SPL Debug: Got exception Ex1: I am Ex1. ([ Ex | Ex1 ]) in: ???? (byte NUM in code block 'example34.spl') called by: ???? (byte NUM in code block 'example34.spl') called by: ROOT (byte NUM in code block 'example34.spl') SPL Debug: Going to throw exception [ Ex | Ex2 ]. SPL Debug: Now throwing the exception [ Ex | Ex2 ]. SPL Debug: Got exception Ex: I am Ex2. ([ Ex | Ex2 ]) SPL Debug: Going to throw exception [ Ex | Ex2 ]. SPL Debug: Now throwing the exception [ Ex | Ex2 ]. SPL Debug: Got exception Ex2: I am Ex2. ([ Ex | Ex2 ]) SPL Debug: Going to throw exception [ Ex ]. SPL Debug: Now throwing the exception [ Ex ]. SPL Runtime Error: Thrown uncaught exception: [ Ex ] >> This is an example exception object. >> Nice to have descriptions on exceptions.. ;-) in: ???? (byte NUM in code block 'example34.spl') called by: ???? (byte NUM in code block 'example34.spl') called by: ROOT (byte NUM in code block 'example34.spl')