#declare sinx=X-X*X*X/(2*3)+X*X*X*X*X/(2*3*4*5)-X*X*X*X*X*X*X/(2*3*4*5*6*7)+X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9)-X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11)+X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34*35)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34*35*36*37)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34*35*36*37*38*39) #declare cosx=1-X*X/(2)+X*X*X*X/(2*3*4)-X*X*X*X*X*X/(2*3*4*5*6)+X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8)-X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10)+X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12)-X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34*35*36)-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34*35*36*37*38)+X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X/(2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20*21*22*23*24*25*26*27*28*29*30*31*32*33*34*35*36*37*38*39*40)