18.1 User subroutines and utilities