extra::term overhaul