adding dependencies
adding rules function