initial structure & dependencies