#include #include int main(void){ unsigned int A,B,C,i,j,k,t,u; long long k2; while(1){ scanf("%d %d %d %d\n",&A,&B,&C,&k); if(!A && !B && !C && !k)break; i=0;j=C; k2=(long long)1<<((long long)k); while(1){ if(A<=B && ( (B-A)%C==0) ){ i+=(B-A)/C; printf("%d\n",i); break; } if(!j){ printf("FOREVER\n"); break; } /* printf("%lld %d %lld %d %lld %d\n",k2,A,k2-A,C,(k2-A)/C,k); */ t=(k2-A)/C; i+=t; u=(k2-A)%C; if(u)i++; A=C-u; /*printf("na==%d, nb==%d, nc==%d, t==%d, i==%d, u==%d\n",A,B,C,t,i,u); */ j--; } } return 0; }