misc. utilities i have written over the years