model + componentBuilder