rule interpreter