updated (mostly) for 2.3