public static BEncodeValue Parse(Stream d, byte firstByte)
{
BEncodeValue value2;
char ch = (char)firstByte;
switch (ch)
{
case 'd':
value2 = new ValueDictionary();
break;
case 'l':
value2 = new ValueList();
break;
case 'i':
value2 = new ValueNumber();
break;
default:
value2 = new ValueString();
break;
}
if (value2 is ValueString)
{
((ValueString)value2).Parse(d, (byte)ch);
return(value2);
}
value2.Parse(d);
return(value2);
}