Properly implemented GunType