Implement all, cast, catch and race