var('x,y,u,v')
cara = parametric_plot3d((4*cos(x)*cos(y),4*cos(x)*sin(y),6*sin(x)),(x,0,2*pi),(y,0,pi),mesh=true)
nariz = parametric_plot3d((2*cos(u)*cos(v),4+2*cos(u)*sin(v),2*sin(u)),(u,0,2*pi),(v,0,pi),mesh=true,color='red')
ojoDer = parametric_plot3d((-2+cos(u)*cos(v),3+cos(u)*sin(v),3+2*sin(u)),(u,0,2*pi),(v,0,pi),mesh=true,color='white')
ojoIzq = parametric_plot3d((2+cos(u)*cos(v),3+cos(u)*sin(v),3+2*sin(u)),(u,0,2*pi),(v,0,pi),mesh=true,color='white')
pupilDer = parametric_plot3d((-2+0.5*cos(u)*cos(v),4+0.5*cos(u)*sin(v),3+sin(u)),(u,0,2*pi),(v,0,pi),mesh=true,color='black')
pupilIzq = parametric_plot3d((2+0.5*cos(u)*cos(v),4+0.5*cos(u)*sin(v),3+sin(u)),(u,0,2*pi),(v,0,pi),mesh=true,color='black')
gorro = parametric_plot3d((v(2 + cos(v/2)* sin(u) - sin(v/2)*sin(2*u))*cos(v),sin(v/2)* sin(u) + cos(v/2) *sin(2* u),5+(2 + cos(v/2)* sin(u) - sin(v/2)* sin(2 *u))* sin(v)),(u,0,2*pi),(v,0,2*pi),mesh=true,color='green')
cuello = parametric_plot3d(( 6/3* (cos(u)* cos(2*v) + sqrt(2)* sin(u)* cos(v))* cos(u) / (sqrt(2) - sin(2*u)* sin(3*v)), 10/3* (cos(u)* sin(2*v) - sqrt(2)* sin(u)* sin(v))* cos(u) / (sqrt(2) - sin(2*u)* sin(3*v)) , -5 + -1* sqrt(2)* cos(u)* cos(u) / (sqrt(2) - sin(2*u)* sin(3*v)) ),(u,0,pi),(v,0,pi),mesh=true,color='orange')
cara+nariz+ojoDer+ojoIzq+pupilDer+pupilIzq+gorro+ cuello