add rule is finally implemented