elaborated more rules