comments and guarding