import numpy as np EPS=1e-8 a,b,c=map(lambda x:int(x)*(10**18),input().split()) if a==b==0: if c: print(0) else: print(-1) elif a==0: x=sorted(set(np.roots([b,c]))) for i in range(len(x)-1,-1,-1): if str(type(x[i]))!="": if abs(x[i].imag)>EPS: del x[i] else: x[i]=x[i].real x=sorted(set(x)) print(len(x)) if len(x): print(*x,sep='\n') else: x=sorted(set(np.roots([a,b,c]))) for i in range(len(x)-1,-1,-1): if str(type(x[i]))!="": if abs(x[i].imag)>EPS: del x[i] else: x[i]=x[i].real x=sorted(set(x)) print(len(x)) if len(x): print(*x,sep='\n')