* implement iterator to create new blocks (see [yield keyword](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/yield)) * use [Queue](https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.queue-1?view=net-6.0) to store next blocks * display in ui