proc main()
{
    var vals = {-1b,1ub,-1s,1us,-1,1u,-1l,1ul,-1.h,-1.,-1.d};
    var absv = foreach (vals[i]) {vals[i].abs()};
    var res = new Array(5,vals.length());
    var rows = {' ', "abs", "signum", "min", "max" }.reshape(5,1);
    res[0,:] = foreach(vals[i]) {?? vals[i]};
    res[1,:] = absv;
    res[2,:] = foreach (vals[i]) {vals[i].signum()};
    res[3,:] = foreach (vals[i]) {absv[i].min(vals[i])};
    res[4,:] = foreach (vals[i]) {absv[i].max(vals[i])};
    print("V,X", rows, res);
}