i think i have all cases covered for existing functionality