developer structure