code: protected void BuildFDSubrsOffsets(int Font,int FD)
  	{
  		// Initiate to -1 to indicate lsubr operator present
  		fonts[Font].PrivateSubrsOffset[FD] = -1;
  		// Goto beginning of objects
          seek(fonts[Font].fdprivateOffsets[FD]);
          // While in the same object:
          while (getPosition() < fonts[Font].fdprivateOffsets[FD]+fonts[Font].fdprivateLengths[FD])
          {
          	getDictItem();
          	// If the dictItem is the "Subrs" then find and store offset, 
          	if (key=="Subrs")
          		fonts[Font].PrivateSubrsOffset[FD] = ((Integer)args[0]).intValue()+fonts[Font].fdprivateOffsets[FD];
          }
          //Read the lsubr index if the lsubr was found
          if (fonts[Font].PrivateSubrsOffset[FD] >= 0)
          	fonts[Font].PrivateSubrsOffsetsArray[FD] = getIndex(fonts[Font].PrivateSubrsOffset[FD]); 
  	}
docs: The function finds for the FD array processed the local subr offset and its
  offset array.
  @param Font the font
  @param FD The FDARRAY processed