https://medium.com/knowledge-pills/is-the-c-extension-an-example-of-the-open-closed-principle-5da39baa07be