few more implementations, and blueprint restructuring