public String GetString(char sid) {
if (sid < standardStrings.Length) return standardStrings[sid];
if (sid >= standardStrings.Length+(stringOffsets.Length-1)) return null;
int j = sid - standardStrings.Length;
int p = GetPosition();
Seek(stringOffsets[j]);
StringBuilder s = new StringBuilder();
for (int k=stringOffsets[j]; k<stringOffsets[j+1]; k++) {
s.Append(GetCard8());
}
Seek(p);
return s.ToString();
}