andyet-ify
fix merge conflicts; pull in upstream