First iteration towards #12