modify for Rule-base