added xblock generation