Created initializer and generator for the same.
To be tested.
Some changes to test the initializer, generator etc.