hoa.2d.recomposer works but needs some clean up and doc