@snusnu Great idea, will switch the code to look like that. I'm guessing that the advantages is related to having a factory method and letting the task to know how to build itself instead of the external users of the class knowing how to do such thing.