fonction type