type defence