1) Incorporation of changes from the free software version to the commercial product code.
2) Start of the development of the free software code. The solid lines represent developments in the next stable version while broken lines reflect the current development (new or experimental).
3) End of the cycle of the free software project. Stable version available. Start of the development of new versions of the commercial product, based on the stable version of the free software platform.
4) Merger of the versions.
5) End of the development cycle of the commercial product. Stable version available.
6) Merger of the commercial product code with that of the free software application.