#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
long long x,y,m,n,l,a,b,p;
long long exgcd(long long a,long long b,long long &xx,long long &yy){
if(b == 0){
xx = 1;
yy = 0;
return a;
}
long long ans = exgcd(b,a%b,xx,yy);
long long tmp = xx;
xx = yy; yy = tmp - a/b*yy;
return ans;
}
void init(){
a = m-n;
b = l;
p = y-x;
long long xx,yy;
long long ans = exgcd(a,b,xx,yy);
long long kb = p/ans;
if(p % ans == 0){
xx *= kb;
b /= ans;
if(b < 0) b = -b;
long long nn = xx % b;
if(nn <= 0) nn+= b;
printf("%lld\n",nn);
}
else
printf("Impossible\n");
}
int main(){
while(~scanf("%lld%lld%lld%lld%lld",&x,&y,&m,&n,&l)){
init();
}
}
通解:x = x1+b/gcd * t (x1 = x0*(c/gcd) )