sur1:=plot::Surface([cos(u),sin(u),v*sin(u)]
,u=-PI/4..PI/4,v=-1..1,Color=RGB::Red):
sur2:=plot::Surface([cos(u),sin(u),v*sin(u)]
,u=3*PI/4..5*PI/4,v=-1..1,Color=RGB::Red):
sur3:=plot::Surface([sin(u),cos(u),v*sin(u)]
,u=-PI/4..PI/4,v=-1..1,Color=RGB::Red):
sur4:=plot::Surface([sin(u),cos(u),v*sin(u)]
,u=3*PI/4..5*PI/4,v=-1..1,Color=RGB::Red):


sur5:=plot::Surface([v*sin(u),cos(u),sin(u)]
,u=-PI/4..PI/4,v=-1..1,Color=RGB::Grey):
sur6:=plot::Surface([v*sin(u),cos(u),sin(u)]
,u=3*PI/4..5*PI/4,v=-1..1,Color=RGB::Grey):
sur7:=plot::Surface([v*sin(u),sin(u),cos(u)]
,u=-PI/4..PI/4,v=-1..1,Color=RGB::Gray):
sur8:=plot::Surface([v*sin(u),sin(u),cos(u)]
,u=3*PI/4..5*PI/4,v=-1..1,Color=RGB::Gray):

sur9:=plot::Surface([cos(u),v*sin(u),sin(u)]
,u=-PI/4..PI/4,v=-1..1,Color=RGB::Blue):
sur10:=plot::Surface([cos(u),v*sin(u),sin(u)]
,u=3*PI/4..5*PI/4,v=-1..1,Color=RGB::Blue):
sur11:=plot::Surface([sin(u),v*sin(u),cos(u)]
,u=-PI/4..PI/4,v=-1..1,Color=RGB::Blue):
sur12:=plot::Surface([sin(u),v*sin(u),cos(u)]
,u=3*PI/4..5*PI/4,v=-1..1,Color=RGB::Blue):
plot(sur1,sur2,sur3,sur4,sur5,sur6,sur7,sur8,sur9,sur10,sur11,sur12,Scaling=Constrained)