Question: Need help understanding code

Need help understanding the following code fragment (skipping the implementation details of procedure A). I am a  student and program primarily in Java and I do not have Maple s/w. I browsed through Maple programming guide but have not yet deciphered the code. Any help will be greatly appreciated.

Thank you.

_____________________________________________________________________________

f:=proc(J)

L:=map((x)->[x[1], (x[2] + x[3] * I) / x[1] + 50 * (1+I) / abs(J[1][2])], J);

R:=Vector([L]);

T,r:=abs(L[1][3]),L[1][4];

A(L[1][5],L[2][6],L[3][7],L[1][8],L[2][9],L[3][10],R,T,r);

A(L[1][11],L[2][12],L[4][13],L[1][14],L[2][15],L[4][16],R,T,r);

A(L[1][17],L[3][18],L[4][19],L[1][20],L[3][21],L[4][22],R,T,r);

A(L[2][23],L[3][24],L[4][25],L[2][26],L[3][27],L[4][28],R,T,r);

plots[display](seq(plottools[circle]([Re(R[i][29]),Im(R[i][30])],abs(1/R[i][31])),i= 1..numelems(R))):

end proc:

_____________________________________________________________________________

Procedure is called as:

f([[-1, 0, 0], [2, 1, 0], [2, -1, 0], [3, 0, 2]]);

_____________________________________________________________________________

Please Wait...