add dynamic rule loading