add 12 - blocking and nonblocking handlers