only half working, but the abs->|| thing is... interesting
groups now working; lots of new over-the-top substitutions