Refactored rules
Added Rules and Utils