Very nice implementation and very fast. The setting these three parameters seems a bit mysterious to me. How would one interpret them in order to properly instantiate a model?