public static new OscBundle Unpack(byte[] bytes, ref int start, int end) { string address = unpackString(bytes, ref start); if (!address.Equals(Bundle)) { return(null); // TODO } long timestamp = unpackLong(bytes, ref start); OscBundle bundle = new OscBundle(timestamp); while (start < end) { int length = unpackInt(bytes, ref start); int sub_end = start + length; bundle.Append(OscPacket.Unpack(bytes, ref start, sub_end)); } return(bundle); }