forked from: forked from: abstract cells

