working on gear interaction