useful things
first pass