private int GetDigestOffset(byte[] vec, DigestPosition pos)
{
switch (pos) {
case DigestPosition.First:
return (vec[8]+vec[9]+vec[10]+vec[11]) % 728 + 12;
case DigestPosition.Second:
return (vec[772]+vec[773]+vec[774]+vec[775]) % 728 + 776;
default:
throw new ArgumentException();
}
}