public int ReadListHead()
{
int arity = 0;
byte tag = Read1SkipVersion();
switch (tag)
{
case OtpExternal.NilTag:
arity = 0;
break;
case OtpExternal.ListTag:
arity = Read4BE();
break;
default:
throw OnBadTag(
tag,
OtpExternal.NilTag,
OtpExternal.ListTag);
}
return arity;
}