C Looooops
题号:NC50577
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

对于C语言的
for (variable = A; variable != B; variable += C)  statement;

循环语句,问在$k$位存储系统中循环几次才会结束。若在有限次内结束,则输出循环次数。否则输出死循环。

输入描述:

多组数据,每组数据一行四个整数A,B,C,k。k表示k位存储系统。
读入以0 0 0 0结束。

输出描述:

若在有限次内结束,则输出循环次数。否则输出FOREVER。
示例1

输入

复制
3 3 2 16
3 7 2 16
7 3 2 16
3 4 2 16
0 0 0 0

输出

复制
0
2
32766
FOREVER

备注:

对于全部数据,