Abstract Gear Design