fix #303 all bulk generation routines should throw on null AND empty