defining function supported