updated rules to use results object