Add conso & emptyo; some borrowed utils