type dependency