Very clean and flexible