add abstract feature