#include <iostream>
#include <bits/stdc++.h>
typedef long long ll;
using namespace std;
void Code_By_Mohamed_Khaled() {
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
}
ll Sum_of_range(ll l, ll r) {
if (l > r) return 0;
return r * (r + 1) / 2 - l * (l - 1) / 2;
}
ll mod=1e9+7;
ll add(ll a, ll b) {return ((b % mod) + (a % mod)) % mod;}
ll mul(ll a, ll b) {return ((b % mod) * (a % mod)) % mod;}
int main() {
Code_By_Mohamed_Khaled();
// (A+B)%C=D if D>=C the no solution
// i have two test cases A+B==D or A+B==D+C then get A from to equations and minimize answer
// if A==0 A should be positive then A=C
long long b,c,d;cin>>b>>c>>d;
if (d>=c) {
cout<<-1;
return 0;
}
long long a=(d-b+c)%c;
if (a==0)cout<<c;
else cout<<a;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KdHlwZWRlZiBsb25nIGxvbmcgbGw7CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnZvaWQgQ29kZV9CeV9Nb2hhbWVkX0toYWxlZCgpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsKICAgIGNvdXQudGllKG51bGxwdHIpOwp9CmxsIFN1bV9vZl9yYW5nZShsbCBsLCBsbCByKSB7CiAgICBpZiAobCA+IHIpIHJldHVybiAwOwogICAgcmV0dXJuIHIgKiAociArIDEpIC8gMiAtIGwgKiAobCAtIDEpIC8gMjsKfQpsbCBtb2Q9MWU5Kzc7CmxsIGFkZChsbCBhLCBsbCBiKSB7cmV0dXJuICgoYiAlIG1vZCkgKyAoYSAlIG1vZCkpICUgbW9kO30KbGwgbXVsKGxsIGEsIGxsIGIpIHtyZXR1cm4gKChiICUgbW9kKSAqIChhICUgbW9kKSkgJSBtb2Q7fQppbnQgbWFpbigpIHsKICAgIENvZGVfQnlfTW9oYW1lZF9LaGFsZWQoKTsKICAgIC8vIChBK0IpJUM9RCAgICAgICAgICAgaWYgRD49QyB0aGUgbm8gc29sdXRpb24KICAgIC8vIGkgaGF2ZSB0d28gdGVzdCBjYXNlcyAgQStCPT1EICBvciBBK0I9PUQrQyAgdGhlbiBnZXQgQSBmcm9tIHRvIGVxdWF0aW9ucyBhbmQgbWluaW1pemUgYW5zd2VyCiAgICAvLyBpZiBBPT0wIEEgc2hvdWxkIGJlIHBvc2l0aXZlIHRoZW4gQT1DCiAgICBsb25nIGxvbmcgYixjLGQ7Y2luPj5iPj5jPj5kOwogICAgaWYgKGQ+PWMpIHsKICAgICAgICBjb3V0PDwtMTsKICAgICAgICByZXR1cm4gMDsKICAgIH0KICAgIGxvbmcgbG9uZyBhPShkLWIrYyklYzsKICAgIGlmIChhPT0wKWNvdXQ8PGM7CiAgICBlbHNlIGNvdXQ8PGE7CiAgICByZXR1cm4gMDsKfQ==