private static int Serialize(long value, byte[] target, int offset)
{
var abs = (int)value;
var pos = 10 + offset;
byte[] num;
do
{
var div = abs / 100;
var rem = abs - div * 100;
num = DateNumbers[rem];
target[pos--] = num[1];
target[pos--] = num[0];
abs = div;
if (abs == 0) break;
} while (pos > offset);
pos += ZeroOffset[num[0] - 48];
var len = offset + 10 - pos;
Buffer.BlockCopy(target, pos + 1, target, offset, len);
return offset + len;
}