private void AdjustTabOrder(PdfArray annots, PdfIndirectReference ind, PdfNumber nn)
{
int v = nn.IntValue;
List<int> t;
if (!tabOrder.TryGetValue(annots, out t)) {
t = new List<int>();
int size = annots.Size - 1;
for (int k = 0; k < size; ++k) {
t.Add(zero);
}
t.Add(v);
tabOrder[annots] = t;
annots.Add(ind);
}
else {
int size = t.Count - 1;
for (int k = size; k >= 0; --k) {
if (t[k] <= v) {
t.Insert(k + 1, v);
annots.Add(k + 1, ind);
size = -2;
break;
}
}
if (size != -2) {
t.Insert(0, v);
annots.Add(0, ind);
}
}
}