almost works
nasty's copy