#include<iostream>
#include<cmath>
using namespace std;
int main(){
int a,b,d2=0,d=0,m=0,m2=0,b2=0,b3=0,b4=0,r=0,a2,a3;
cin>>a>>b;
a2=a,a3=b;
while(a2!=a3){
if(a2>a3){
a2=(a2-1)%a3+1;
}else{
a3=(a3-1)%a2+1;
}
}
a/=a2;
b/=a3;
cout<<a/b<<'.';
b4=b;
while(b%2==0){
b/=2;
b2++;
}
while(b%5==0){
b/=5;
b3++;
}
b=b4;
for(int c=0;c<max(b2,b3);c++){
cout<<(a*int(pow(10,c+1))/b)%10;
}
while(b%2==0){
b/=2;
}
while(b%5==0){
b/=5;
}
if(a%b4==0){
cout<<0;
}
d2=9%b;
a%=b;
for(int e=0;e>=0;e++){
if(d2==0){
d=e+1;
break;
}
d2=(d2*10+9)%b;
}
char c[d],c2[d];
int c3[d]={},c4[d]={};
for(int f=0;f<d;f++){
c[f]=57;
c2[f]=48;
}
for(int g=0;g<d-int(log10(b));g++){
m=0;
for(int h=g;h<=(g==d-int(log10(b))-1?g+int(log10(b)):g+int(log10(b))+1);h++){
m=m*10+c[h]-48;
}
m2=m/b;
m%=b;
for(int h=g;h<=(g==d-int(log10(b))-1?g+int(log10(b)):g+int(log10(b))+1);h++){
c[h]=int(m/pow(10,(g==d-int(log10(b))-1?g+int(log10(b)):g+int(log10(b))+1)-h))%10+48;
c2[h]+=int(m2/pow(10,(g==d-int(log10(b))-1?g+int(log10(b)):g+int(log10(b))+1)-h))%10;
}
}
for(int g=d-1;g>=0;g--){
c3[g]+=(c2[g]-48)*a;
if(c3[g]>=10){
c3[g-1]=(c3[g])/10;
c3[g]=(c3[g])%10;
}
}
d2=0;
for(int c=0;c<b2;c++){
if(d>1){
for(int e=0;e<d;e++){
d2=c3[e]*10+c3[(e+1)%d];
c4[(e-1+d)%d]+=d2/2/10;
c4[e]+=d2/2%10;
c3[e]=0;
c3[(e+1)%d]=d2%2;
}
for(int f=0;f<d;f++){
c3[f]=c4[f];
c4[f]=0;
}
}else if(b!=1){
c3[0]=(c3[0]*11/2)%10;
}
}
for(int c=0;c<b3;c++){
if(d>1){
for(int e=0;e<d;e++){
d2=c3[e]*10+c3[(e+1)%d];
c4[(e-1+d)%d]+=d2/5/10;
c4[e]+=d2/5%10;
c3[e]=0;
c3[(e+1)%d]=d2%5;
}
for(int f=0;f<d;f++){
c3[f]=c4[f];
}
}else if(b!=1){
c3[0]=(c3[0]*11/5)%10;
}
}
for(int f=0;f<d;f++){
if(c3[f]!=0){
r=1;
}
}
if(r==1){
cout<<'(';
for(int h=0;h<d;h++){
cout<<c3[h];
if(int(h+max(0.0,log10(a/b))+3)%76==75){
cout<<endl;
}
}
cout<<')';
}
}