private ZArray VisitArray(ZArray array)
{
if (array == null) return null;
ZArray result = (ZArray)base.VisitTypeNode((ArrayType)array);
result.LowerBounds = (int[])array.LowerBounds.Clone();
result.Sizes = (int[])array.Sizes.Clone();
result.domainType = this.VisitTypeNode(array.domainType);
return result;
}