reworked splice code, still ugly