Add intersection routines