function1's code