Dev: rewrite