to prefix all library components read from GDS files pointed to by
an abstract view (other than the cell itself) with a prefix. But
this does not account for the fact that the same library may be read
by other cells. The solution is for every cell in the library, check
if there is a cell in magic with the same name which is also an abstract
view that points to the same GDS library. Those cells do not get
prefixes. At the same time, however, it was discovered that the GDS
cellname character limit is set at 32, and so prefixes must be kept
short. To keep the prefixes unique, the prefix was changed to a 4
character random alphanumeric sequence, and a warning is issued if
any GDS cell exceeds the 32 character limit.