var('u,v,a,b,c,d')
g1 = parametric_plot3d([(a*sin(b))/3+2, a/3, a*cos(b)], (a, -1, 1), (b, 0, 2*pi+0.5), plot_points=[50,50], aspect_ratio=[1,1,1])
g2 = parametric_plot3d([2*sin(c)*cos(d), sin(c)*sin(d), cos(c)], (c,0, 2*pi), (d, 0, 2*pi), plot_points=[50,50])
g3 = parametric_plot3d([sin(c)*cos(d)+3,cos(c)*cos(d),sin(d)], (c, 0, pi), (d, 0, 2*pi) )
g4 = parametric_plot3d([sin(c)*cos(d)/4+3,cos(c)*cos(d)/4,sin(d)/3+1], (c, 0, pi), (d, 0, 2*pi) )
g5 = parametric_plot3d([sin(c)*cos(d)/5+3.2,cos(c)*cos(d)/5+0.2,sin(d)/3+1], (c, 0, pi), (d, 0, 2*pi) )
g6 = parametric_plot3d([sin(c)*cos(d)/5+3.2,cos(c)*cos(d)/5-0.2,sin(d)/3+1], (c, 0, pi), (d, 0, 2*pi) )
g1 + g2 + g3 + g4 +g5 +g6