#include "libstd"
proc main()
{
var mat = [
[
[1.,0.,-1.],
[1.,1.,-1.],
[0.,1.,-1.],
[-1.,1.,-1.],
[-1.,0.,-1.],
[-1.,-1.,-1.],
[0.,-1.,-1.],
[1.,-1.,-1.]
],[
[1.,0.,0.],
[1.,1.,0.],
[0.,1.,0.],
[-1.,1.,0.],
[-1.,0.,0.],
[-1.,-1.,0.],
[0.,-1.,0.],
[1.,-1.,0.]
],[
[1.,0.,1.],
[1.,1.,1.],
[0.,1.,1.],
[-1.,1.,1.],
[-1.,0.,1.],
[-1.,-1.,1.],
[0.,-1.,1.],
[1.,-1.,1.]
]
];
var pol = mat.polar();
var cart = pol.cartesian();
print("3(I2,X),F8.5,X,2(I4,X),3(I2,X)",
Int(mat.round()),
pol[:,:,0],
Int((pol[:,:,1:]*180.0/math::PI).round()),
Int(cart.round()));
}