subroutine char SEGMENTS int MAP_FROM real ATOM_RAD int MAP_MASK char FILE_MASK dele atom sele segm name #* end key other sele segm name SEGMENTS .a .n KEY_MASK end symm sele KEY_MASK end around sele segm name SEGMENTS end \ dist ATOM_RAD + 1. cut set rad sele KEY_MASK end sele segm name #* .or other end \ overlap 1.5 ATOM_RAD make map MAP_MASK from MAP_FROM init -9999 \ around 10 sele KEY_MASK end real make map MAP_MASK atom ( radii mask ) select KEY_MASK end make map MAP_MASK + 1 from MAP_MASK init 9999 copy make map MAP_MASK from MAP_MASK + 1 fill MAP_MASK write over file FILE_MASK map MAP_MASK xplor key other drop return subroutine int MAP_MASK int MAP_CELL int GRID_ARO make map MAP_MASK from MAP_CELL init -9999 \ around GRID_ARO sele KEY_MASK end real make map MAP_MASK atom mask ATOM_RAD select KEY_MASK end ! fill the holes in envelope that have HOLE_SIZE grid points in diameter make map MAP_MASK + 1 from MAP_MASK init 9999 copy make map MAP_MASK from MAP_MASK + 1 fill HOLE_SIZE write over file FILE_MASK map MAP_MASK xplor return