public long[] Type_GetFields (long id, out string[] names, out long[] types, out int[] attrs) {
PacketReader r = SendReceive (CommandSet.TYPE, (int)CmdType.GET_FIELDS, new PacketWriter ().WriteId (id));
int n = r.ReadInt ();
long[] res = new long [n];
names = new string [n];
types = new long [n];
attrs = new int [n];
for (int i = 0; i < n; ++i) {
res [i] = r.ReadId ();
names [i] = r.ReadString ();
types [i] = r.ReadId ();
attrs [i] = r.ReadInt ();
}
return res;
}