# fibonacci number fib(n,1)=fib(n);


fib(n_,x_) := if((n)>2, expand((fib((n)-1,x)*x+fib((n)-2,x))), if((n)< -2, expand((-fib((n)+1,x)*x+fib((n)+2,x))) ));
fib(0,x_) :=0;
fib(1,x_):=1;
fib(2,x_):=x;
fib(-1,x_):=1;
fib(-2,x_):= -x;


#fib(n_) := if(n==0,0,If(abs(n)<2,1, if(n==-2,-1, if((n)< -2,(-fib((n)+1)+fib((n)+2)) ))));
fib(n_):=fib(n,1);