#include const int buffer=1<<13; char buff[buffer]; int cnt=0; //getInt() reads and returns one integer at a time int getInt() { int number = 0; while(buff[cnt] < '0' || '9' < buff[cnt]) if(++cnt >= buffer) fread(buff, buffer, 1, stdin), cnt = 0; while('0' <= buff[cnt] && buff[cnt] <= '9') { number = number * 10 + buff[cnt] - '0'; if(++cnt >= buffer) fread(buff, buffer, 1, stdin), cnt = 0; } return number; } char rez[20]; int main() { // freopen("data.in","r",stdin); // freopen("data.out","w",stdout); int n,a,b; while(true) { n=getInt(); a=getInt(); b=getInt(); if(n==0 && a==0 && b==0) return 0; int i; for(i=10; n; i--) { rez[i]=n%10; if(rez[i]==a) rez[i]=b; rez[i]+='0'; n/=10; } while(rez[i+1]=='0') i++; if(i==10) { i=9; } //rez[i]=0; puts(rez+i+1); } }