azalea_protocol/packets/game/
c_container_set_content.rs

1use azalea_buf::AzBuf;
2use azalea_inventory::ItemStack;
3use azalea_protocol_macros::ClientboundGamePacket;
4
5#[derive(Clone, Debug, AzBuf, ClientboundGamePacket, PartialEq)]
6pub struct ClientboundContainerSetContent {
7    #[var]
8    pub container_id: i32,
9    #[var]
10    pub state_id: u32,
11    pub items: Vec<ItemStack>,
12    pub carried_item: ItemStack,
13}
14
15#[cfg(test)]
16mod tests {
17    use std::io::Cursor;
18
19    use azalea_buf::AzaleaRead;
20
21    use super::ClientboundContainerSetContent;
22
23    #[test]
24    fn test_read_write_container_set_content() {
25        let contents = [
26            1, 2, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
27            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
28            0, 0, 0, 0, 0, 0, 0, 1, 196, 6, 0, 0, 0,
29        ];
30        let mut buf = Cursor::new(contents.as_slice());
31        let packet = ClientboundContainerSetContent::azalea_read(&mut buf).unwrap();
32        println!("{:?}", packet);
33
34        assert_eq!(buf.position(), contents.len() as u64);
35
36        let mut buf = Vec::new();
37        packet.write(&mut buf).unwrap();
38        assert_eq!(buf, contents);
39    }
40
41    #[test]
42    fn test_read_write_big_container_set_content() {
43        #[rustfmt::skip]
44        let contents = [10, 1, 90, 1, 170, 5, 2, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 8, 0, 0, 0, 1, 0, 17, 80, 114, 101, 118, 105, 111, 117, 115, 32, 80, 97, 103, 101, 32, 40, 54, 41, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 62, 5, 231, 107, 8, 147, 65, 45, 135, 242, 47, 95, 58, 70, 91, 105, 0, 0, 1, 254, 3, 2, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 8, 0, 0, 0, 1, 0, 8, 80, 97, 103, 101, 32, 55, 47, 56, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 25, 24, 96, 187, 51, 242, 65, 97, 131, 122, 26, 153, 143, 122, 216, 134, 0, 0, 1, 148, 3, 2, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 8, 0, 0, 0, 1, 0, 13, 78, 101, 120, 116, 32, 80, 97, 103, 101, 32, 40, 56, 41, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 203, 101, 74, 157, 4, 159, 71, 173, 149, 228, 121, 170, 64, 127, 182, 58, 0, 0, 1, 223, 5, 2, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 8, 0, 0, 0, 1, 0, 25, 71, 111, 32, 66, 97, 99, 107, 32, 116, 111, 32, 67, 105, 116, 121, 32, 83, 101, 108, 101, 99, 116, 105, 111, 110, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 134, 183, 152, 100, 133, 118, 74, 35, 179, 188, 177, 175, 164, 81, 113, 14, 0, 0, 1, 157, 9, 2, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 8, 0, 0, 0, 1, 0, 6, 83, 101, 97, 114, 99, 104, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 65, 126, 18, 219, 85, 224, 70, 89, 177, 255, 35, 221, 5, 138, 243, 157, 0, 0, 0, 0, 0, 0, 1, 251, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 47, 12, 197, 190, 121, 244, 75, 144, 170, 28, 179, 220, 82, 113, 250, 18, 0, 0, 1, 241, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 144, 255, 123, 43, 53, 133, 71, 98, 163, 18, 128, 43, 9, 102, 109, 17, 0, 0, 1, 141, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 122, 201, 62, 11, 115, 80, 78, 42, 164, 59, 191, 218, 36, 100, 99, 28, 0, 0, 1, 175, 2, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 254, 1, 161, 38, 93, 186, 70, 76, 133, 57, 77, 149, 86, 143, 160, 210, 0, 0, 1, 169, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 59, 28, 30, 213, 214, 194, 67, 236, 152, 225, 40, 235, 18, 182, 106, 118, 0, 0, 1, 181, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 89, 127, 100, 45, 23, 41, 69, 93, 187, 167, 229, 42, 235, 37, 203, 200, 0, 0, 1, 164, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 80, 82, 232, 142, 122, 39, 78, 76, 139, 86, 231, 223, 147, 188, 151, 31, 0, 0, 1, 252, 6, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 110, 202, 120, 27, 81, 112, 68, 6, 176, 78, 138, 236, 74, 155, 102, 36, 0, 0, 1, 254, 6, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 250, 148, 180, 54, 223, 106, 65, 72, 133, 155, 228, 152, 38, 164, 13, 76, 0, 0, 1, 203, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 104, 50, 30, 169, 227, 21, 78, 111, 145, 140, 61, 251, 171, 87, 237, 156, 0, 0, 1, 141, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 116, 16, 80, 89, 88, 134, 73, 130, 159, 154, 11, 187, 152, 47, 15, 246, 0, 0, 1, 205, 2, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 198, 182, 15, 238, 191, 229, 78, 55, 167, 200, 119, 172, 172, 194, 250, 64, 0, 0, 1, 225, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 125, 180, 76, 110, 110, 204, 75, 122, 164, 224, 99, 32, 106, 188, 93, 128, 0, 0, 1, 196, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 14, 58, 78, 26, 151, 80, 68, 89, 138, 123, 32, 101, 206, 101, 33, 218, 0, 0, 1, 190, 9, 4, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 102, 102, 53, 102, 49, 53, 8, 0, 4, 116, 101, 120, 116, 0, 6, 79, 114, 97, 110, 103, 101, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 6, 121, 101, 108, 108, 111, 119, 8, 0, 4, 116, 101, 120, 116, 0, 13, 32, 69, 110, 101, 114, 103, 121, 32, 83, 119, 111, 114, 100, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 13, 2, 2, 23, 105, 111, 110, 58, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 95, 100, 97, 109, 97, 103, 101, 64, 24, 0, 0, 0, 0, 0, 0, 0, 1, 4, 22, 105, 111, 110, 58, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 95, 115, 112, 101, 101, 100, 63, 252, 204, 204, 204, 204, 204, 205, 0, 1, 1, 7, 51, 104, 111, 114, 105, 122, 111, 110, 115, 101, 110, 100, 58, 119, 101, 97, 112, 111, 110, 47, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 47, 111, 114, 97, 110, 103, 101, 95, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 24, 115, 5, 163, 74, 89, 79, 249, 146, 120, 81, 85, 5, 199, 50, 36, 8, 0, 14, 105, 111, 110, 58, 99, 117, 115, 116, 111, 109, 105, 116, 101, 109, 0, 19, 69, 78, 69, 82, 71, 89, 95, 83, 87, 79, 82, 68, 95, 79, 82, 65, 78, 71, 69, 0, 0, 1, 170, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 228, 45, 52, 184, 186, 231, 64, 249, 154, 85, 220, 89, 185, 191, 18, 132, 0, 0, 1, 148, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 208, 70, 163, 62, 217, 139, 70, 183, 137, 197, 67, 252, 152, 48, 227, 138, 0, 0, 1, 162, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 254, 202, 177, 230, 229, 182, 73, 123, 155, 132, 135, 87, 114, 149, 42, 115, 0, 0, 1, 250, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 185, 163, 63, 49, 137, 40, 68, 201, 185, 96, 22, 91, 249, 114, 84, 156, 0, 0, 1, 160, 6, 7, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 111, 108, 100, 8, 0, 4, 116, 101, 120, 116, 0, 6, 80, 111, 119, 101, 114, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 8, 76, 101, 103, 103, 105, 110, 103, 115, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 3, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 4, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 7, 80, 111, 119, 101, 114, 58, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 101, 49, 101, 49, 101, 49, 8, 0, 4, 116, 101, 120, 116, 0, 5, 53, 48, 48, 48, 48, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 3, 32, 47, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 101, 49, 101, 49, 101, 49, 8, 0, 4, 116, 101, 120, 116, 0, 5, 53, 48, 48, 48, 48, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 0, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 3, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 13, 77, 111, 100, 115, 32, 40, 108, 105, 109, 105, 116, 58, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 101, 49, 101, 49, 101, 49, 8, 0, 4, 116, 101, 120, 116, 0, 1, 49, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 2, 41, 58, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 13, 2, 0, 24, 105, 111, 110, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 95, 108, 101, 103, 103, 105, 110, 103, 115, 64, 20, 0, 0, 0, 0, 0, 0, 0, 5, 1, 24, 105, 111, 110, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 95, 108, 101, 103, 103, 105, 110, 103, 115, 64, 0, 0, 0, 0, 0, 0, 0, 0, 5, 1, 7, 44, 104, 111, 114, 105, 122, 111, 110, 115, 101, 110, 100, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 47, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 95, 108, 101, 103, 103, 105, 110, 103, 115, 4, 0, 28, 2, 75, 1, 23, 104, 111, 114, 105, 122, 111, 110, 115, 101, 110, 100, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 0, 0, 1, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 22, 105, 111, 110, 58, 116, 111, 111, 108, 95, 109, 111, 100, 105, 102, 105, 99, 97, 116, 105, 111, 110, 115, 0, 0, 0, 4, 0, 0, 0, 0, 3, 0, 9, 105, 111, 110, 58, 112, 111, 119, 101, 114, 0, 0, 195, 80, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 222, 50, 97, 187, 223, 130, 78, 27, 181, 50, 191, 193, 220, 26, 166, 32, 8, 0, 14, 105, 111, 110, 58, 99, 117, 115, 116, 111, 109, 105, 116, 101, 109, 0, 20, 80, 79, 87, 69, 82, 95, 65, 82, 77, 79, 82, 95, 76, 69, 71, 71, 73, 78, 71, 83, 0, 0, 1, 206, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 92, 15, 75, 242, 229, 111, 69, 230, 135, 17, 151, 154, 254, 156, 73, 69, 0, 0, 1, 197, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 237, 209, 204, 250, 47, 89, 72, 89, 151, 44, 64, 89, 253, 12, 194, 68, 0, 0, 1, 253, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 139, 69, 194, 233, 38, 229, 66, 224, 170, 40, 138, 147, 33, 232, 61, 126, 0, 0, 1, 241, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 180, 235, 163, 39, 91, 237, 70, 48, 177, 149, 170, 41, 26, 167, 129, 237, 0, 0, 1, 213, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 202, 18, 209, 104, 36, 46, 76, 49, 166, 97, 11, 72, 137, 61, 236, 127, 0, 0, 1, 145, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 78, 5, 94, 87, 195, 173, 75, 190, 141, 204, 226, 162, 70, 68, 236, 32, 0, 0, 1, 174, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 67, 94, 169, 41, 126, 228, 74, 154, 147, 81, 231, 116, 151, 234, 148, 174, 0, 0, 1, 160, 6, 7, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 111, 108, 100, 8, 0, 4, 116, 101, 120, 116, 0, 6, 80, 111, 119, 101, 114, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 10, 67, 104, 101, 115, 116, 112, 108, 97, 116, 101, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 3, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 4, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 7, 80, 111, 119, 101, 114, 58, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 101, 49, 101, 49, 101, 49, 8, 0, 4, 116, 101, 120, 116, 0, 5, 53, 48, 48, 48, 48, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 3, 32, 47, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 101, 49, 101, 49, 101, 49, 8, 0, 4, 116, 101, 120, 116, 0, 5, 53, 48, 48, 48, 48, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 0, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 3, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 13, 77, 111, 100, 115, 32, 40, 108, 105, 109, 105, 116, 58, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 101, 49, 101, 49, 101, 49, 8, 0, 4, 116, 101, 120, 116, 0, 1, 49, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 7, 35, 55, 54, 56, 97, 56, 97, 8, 0, 4, 116, 101, 120, 116, 0, 2, 41, 58, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 13, 2, 0, 26, 105, 111, 110, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 95, 99, 104, 101, 115, 116, 112, 108, 97, 116, 101, 64, 20, 0, 0, 0, 0, 0, 0, 0, 6, 1, 26, 105, 111, 110, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 95, 99, 104, 101, 115, 116, 112, 108, 97, 116, 101, 64, 0, 0, 0, 0, 0, 0, 0, 0, 6, 1, 7, 46, 104, 111, 114, 105, 122, 111, 110, 115, 101, 110, 100, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 47, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 95, 99, 104, 101, 115, 116, 112, 108, 97, 116, 101, 4, 0, 28, 3, 75, 1, 23, 104, 111, 114, 105, 122, 111, 110, 115, 101, 110, 100, 58, 112, 111, 119, 101, 114, 95, 97, 114, 109, 111, 114, 0, 0, 1, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 22, 105, 111, 110, 58, 116, 111, 111, 108, 95, 109, 111, 100, 105, 102, 105, 99, 97, 116, 105, 111, 110, 115, 0, 0, 0, 4, 0, 0, 0, 0, 3, 0, 9, 105, 111, 110, 58, 112, 111, 119, 101, 114, 0, 0, 195, 80, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 53, 127, 15, 194, 212, 201, 74, 70, 155, 232, 218, 234, 82, 153, 238, 47, 8, 0, 14, 105, 111, 110, 58, 99, 117, 115, 116, 111, 109, 105, 116, 101, 109, 0, 22, 80, 79, 87, 69, 82, 95, 65, 82, 77, 79, 82, 95, 67, 72, 69, 83, 84, 80, 76, 65, 84, 69, 0, 0, 1, 97, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 100, 41, 241, 127, 125, 34, 74, 58, 133, 101, 247, 96, 145, 221, 60, 238, 0, 0, 1, 193, 9, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 86, 207, 202, 78, 106, 201, 69, 109, 177, 216, 70, 183, 142, 31, 252, 142, 0, 0, 1, 228, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 129, 79, 1, 9, 230, 105, 65, 230, 141, 182, 24, 27, 16, 35, 39, 28, 0, 0, 1, 144, 7, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 215, 204, 51, 17, 142, 220, 76, 120, 140, 230, 249, 238, 88, 171, 55, 182, 0, 0, 1, 190, 9, 4, 0, 5, 10, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 103, 114, 101, 101, 110, 8, 0, 4, 116, 101, 120, 116, 0, 5, 71, 114, 101, 101, 110, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 6, 121, 101, 108, 108, 111, 119, 8, 0, 4, 116, 101, 120, 116, 0, 13, 32, 69, 110, 101, 114, 103, 121, 32, 83, 119, 111, 114, 100, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 13, 2, 2, 23, 105, 111, 110, 58, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 95, 100, 97, 109, 97, 103, 101, 64, 24, 0, 0, 0, 0, 0, 0, 0, 1, 4, 22, 105, 111, 110, 58, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 95, 115, 112, 101, 101, 100, 63, 252, 204, 204, 204, 204, 204, 205, 0, 1, 1, 7, 50, 104, 111, 114, 105, 122, 111, 110, 115, 101, 110, 100, 58, 119, 101, 97, 112, 111, 110, 47, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 47, 103, 114, 101, 101, 110, 95, 101, 110, 101, 114, 103, 121, 95, 115, 119, 111, 114, 100, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 72, 52, 170, 201, 22, 92, 65, 184, 150, 136, 65, 82, 84, 115, 106, 113, 8, 0, 14, 105, 111, 110, 58, 99, 117, 115, 116, 111, 109, 105, 116, 101, 109, 0, 18, 69, 78, 69, 82, 71, 89, 95, 83, 87, 79, 82, 68, 95, 71, 82, 69, 69, 78, 0, 0, 1, 136, 2, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 0, 165, 77, 13, 179, 51, 70, 68, 191, 96, 26, 204, 238, 96, 249, 216, 0, 0, 1, 159, 9, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 194, 171, 221, 186, 156, 251, 64, 2, 133, 121, 107, 227, 126, 27, 88, 6, 0, 0, 1, 128, 6, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 183, 245, 245, 213, 233, 254, 75, 183, 157, 222, 154, 9, 0, 186, 209, 255, 0, 0, 1, 131, 9, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 48, 31, 245, 210, 195, 183, 77, 84, 130, 121, 149, 159, 163, 96, 14, 174, 0, 0, 1, 180, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 236, 182, 64, 231, 198, 112, 78, 24, 128, 144, 124, 223, 190, 183, 218, 155, 0, 0, 1, 153, 7, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 24, 101, 83, 78, 117, 67, 77, 192, 173, 51, 135, 133, 24, 84, 180, 243, 0, 0, 1, 168, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 121, 78, 175, 38, 3, 164, 66, 129, 157, 35, 76, 224, 199, 236, 82, 219, 0, 0, 1, 160, 5, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 63, 89, 122, 3, 188, 16, 76, 29, 137, 182, 222, 54, 115, 93, 215, 85, 0, 0, 1, 161, 3, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 68, 122, 30, 52, 205, 241, 66, 229, 162, 100, 143, 216, 152, 182, 103, 235, 0, 0, 1, 199, 2, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 234, 252, 235, 31, 201, 181, 70, 138, 134, 166, 65, 26, 173, 44, 174, 189, 0, 0, 1, 245, 1, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 110, 110, 28, 171, 11, 212, 67, 199, 189, 34, 188, 84, 105, 66, 42, 131, 0, 0, 1, 229, 4, 1, 0, 0, 10, 10, 0, 18, 80, 117, 98, 108, 105, 99, 66, 117, 107, 107, 105, 116, 86, 97, 108, 117, 101, 115, 7, 0, 11, 105, 111, 110, 58, 105, 102, 45, 117, 117, 105, 100, 0, 0, 0, 16, 203, 97, 235, 205, 232, 71, 68, 32, 164, 18, 197, 153, 84, 138, 196, 239, 0, 0, 0, 1, 141, 4, 0, 0, 1, 204, 4, 0, 0, 1, 161, 2, 0, 0, 1, 155, 3, 0, 0, 3, 220, 3, 0, 0, 1, 201, 3, 0, 0, 1, 207, 3, 0, 0, 1, 197, 3, 0, 0, 1, 202, 3, 0, 0, 1, 199, 3, 0, 0, 1, 157, 5, 0, 0, 1, 151, 5, 0, 0, 1, 169, 2, 0, 0, 1, 90, 0, 0, 1, 193, 1, 0, 0, 1, 92, 0, 0, 1, 205, 3, 0, 0, 0, 0, 1, 162, 6, 0, 0, 1, 162, 6, 0, 0, 1, 251, 6, 0, 0, 0, 1, 214, 7, 0, 0, 0, 1, 183, 5, 0, 0, 1, 212, 6, 0, 0, 1, 213, 7, 0, 0, 1, 244, 5, 0, 0, 1, 159, 5, 0, 0, 1, 202, 4, 0, 0, 1, 142, 5, 0, 0, 0, 1, 194, 4, 0, 0, 0, 0];
45        let mut buf = Cursor::new(contents.as_slice());
46        let packet = ClientboundContainerSetContent::azalea_read(&mut buf).unwrap();
47        println!("{:?}", packet);
48
49        assert_eq!(buf.position(), contents.len() as u64);
50
51        let mut re_encoded = Vec::new();
52        packet.write(&mut re_encoded).unwrap();
53
54        // TODO: make FormattedText re-encode to the same bytes and then
55        // uncomment the code below
56
57        // assert_eq!(buf, contents);
58
59        // let mut re_decoded = Cursor::new(re_encoded.as_slice());
60        // let re_decoded_packet =
61        //     ClientboundContainerSetContent::azalea_read(&mut
62        // re_decoded).unwrap(); println!("{:?}", packet);
63
64        // assert_eq!(re_decoded.position(), re_encoded.len() as u64);
65
66        // assert_eq!(packet, re_decoded_packet);
67    }
68
69    #[test]
70    fn test_read_hypixel_container_set_content() {
71        #[rustfmt::skip]
72        let contents = [0, 1, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 193, 7, 3, 0, 13, 0, 1, 5, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 103, 114, 101, 101, 110, 8, 0, 4, 116, 101, 120, 116, 0, 10, 71, 97, 109, 101, 32, 77, 101, 110, 117, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 13, 40, 82, 105, 103, 104, 116, 32, 67, 108, 105, 99, 107, 41, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 8, 1, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 38, 82, 105, 103, 104, 116, 32, 67, 108, 105, 99, 107, 32, 116, 111, 32, 98, 114, 105, 110, 103, 32, 117, 112, 32, 116, 104, 101, 32, 71, 97, 109, 101, 32, 77, 101, 110, 117, 33, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 1, 132, 9, 3, 0, 5, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 103, 114, 101, 101, 110, 8, 0, 4, 116, 101, 120, 116, 0, 11, 77, 121, 32, 80, 114, 111, 102, 105, 108, 101, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 13, 40, 82, 105, 103, 104, 116, 32, 67, 108, 105, 99, 107, 41, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 8, 2, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 48, 82, 105, 103, 104, 116, 45, 99, 108, 105, 99, 107, 32, 116, 111, 32, 98, 114, 111, 119, 115, 101, 32, 113, 117, 101, 115, 116, 115, 44, 32, 118, 105, 101, 119, 32, 97, 99, 104, 105, 101, 118, 101, 109, 101, 110, 116, 115, 44, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 1, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 35, 97, 99, 116, 105, 118, 97, 116, 101, 32, 78, 101, 116, 119, 111, 114, 107, 32, 66, 111, 111, 115, 116, 101, 114, 115, 32, 97, 110, 100, 32, 109, 111, 114, 101, 33, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 57, 1, 9, 76, 105, 108, 77, 97, 110, 77, 97, 114, 1, 128, 85, 54, 33, 54, 28, 66, 45, 141, 149, 252, 101, 48, 182, 236, 157, 1, 8, 116, 101, 120, 116, 117, 114, 101, 115, 156, 3, 101, 119, 111, 103, 73, 67, 74, 48, 97, 87, 49, 108, 99, 51, 82, 104, 98, 88, 65, 105, 73, 68, 111, 103, 77, 84, 99, 122, 79, 68, 65, 119, 77, 106, 69, 53, 77, 122, 77, 52, 77, 121, 119, 75, 73, 67, 65, 105, 99, 72, 74, 118, 90, 109, 108, 115, 90, 85, 108, 107, 73, 105, 65, 54, 73, 67, 73, 52, 77, 68, 85, 49, 77, 122, 89, 121, 77, 84, 77, 50, 77, 87, 77, 48, 77, 106, 74, 107, 79, 71, 81, 53, 78, 87, 90, 106, 78, 106, 85, 122, 77, 71, 73, 50, 90, 87, 77, 53, 90, 67, 73, 115, 67, 105, 65, 103, 73, 110, 66, 121, 98, 50, 90, 112, 98, 71, 86, 79, 89, 87, 49, 108, 73, 105, 65, 54, 73, 67, 74, 77, 97, 87, 120, 78, 89, 87, 53, 78, 89, 88, 73, 105, 76, 65, 111, 103, 73, 67, 74, 122, 97, 87, 100, 117, 89, 88, 82, 49, 99, 109, 86, 83, 90, 88, 70, 49, 97, 88, 74, 108, 90, 67, 73, 103, 79, 105, 66, 48, 99, 110, 86, 108, 76, 65, 111, 103, 73, 67, 74, 48, 90, 88, 104, 48, 100, 88, 74, 108, 99, 121, 73, 103, 79, 105, 66, 55, 67, 105, 65, 103, 73, 67, 65, 105, 85, 48, 116, 74, 84, 105, 73, 103, 79, 105, 66, 55, 67, 105, 65, 103, 73, 67, 65, 103, 73, 67, 74, 49, 99, 109, 119, 105, 73, 68, 111, 103, 73, 109, 104, 48, 100, 72, 65, 54, 76, 121, 57, 48, 90, 88, 104, 48, 100, 88, 74, 108, 99, 121, 53, 116, 97, 87, 53, 108, 89, 51, 74, 104, 90, 110, 81, 117, 98, 109, 86, 48, 76, 51, 82, 108, 101, 72, 82, 49, 99, 109, 85, 118, 78, 122, 107, 53, 77, 106, 81, 120, 77, 122, 107, 52, 77, 68, 99, 121, 78, 87, 85, 120, 90, 109, 81, 52, 90, 109, 89, 53, 90, 68, 81, 53, 77, 106, 69, 50, 89, 50, 69, 52, 90, 71, 73, 120, 78, 109, 73, 119, 77, 106, 69, 50, 89, 50, 74, 108, 77, 84, 78, 104, 90, 87, 77, 50, 77, 87, 89, 53, 77, 109, 69, 50, 77, 68, 74, 109, 89, 109, 82, 109, 89, 109, 77, 121, 78, 83, 73, 75, 73, 67, 65, 103, 73, 72, 48, 75, 73, 67, 66, 57, 67, 110, 48, 61, 1, 172, 5, 65, 102, 47, 110, 109, 50, 97, 51, 72, 111, 56, 79, 118, 78, 65, 119, 70, 102, 56, 74, 105, 83, 117, 52, 52, 55, 86, 73, 73, 104, 70, 77, 103, 116, 67, 120, 79, 67, 113, 82, 105, 65, 51, 48, 104, 86, 84, 119, 118, 83, 112, 50, 118, 81, 121, 55, 49, 97, 121, 70, 90, 48, 87, 111, 55, 65, 109, 71, 84, 53, 119, 83, 43, 106, 48, 114, 102, 97, 100, 117, 108, 114, 106, 79, 109, 104, 67, 70, 71, 71, 66, 50, 51, 87, 89, 101, 111, 102, 76, 108, 57, 86, 101, 109, 56, 98, 67, 81, 115, 110, 112, 73, 43, 43, 47, 101, 48, 79, 89, 99, 89, 89, 55, 118, 102, 47, 83, 82, 111, 66, 80, 47, 75, 99, 48, 105, 57, 55, 114, 120, 79, 52, 55, 82, 113, 57, 107, 71, 73, 111, 105, 75, 69, 83, 72, 81, 104, 107, 83, 78, 47, 115, 106, 110, 106, 108, 98, 56, 115, 101, 76, 74, 72, 98, 53, 113, 53, 97, 69, 108, 53, 73, 67, 83, 73, 111, 122, 75, 65, 71, 98, 111, 57, 99, 103, 49, 74, 50, 66, 108, 87, 65, 111, 74, 78, 113, 101, 56, 101, 65, 100, 51, 110, 113, 109, 72, 101, 77, 105, 120, 77, 89, 97, 69, 106, 52, 113, 65, 72, 122, 110, 77, 85, 121, 98, 104, 68, 56, 107, 53, 112, 118, 83, 57, 76, 108, 115, 98, 65, 109, 106, 51, 88, 70, 120, 56, 117, 80, 78, 122, 108, 53, 55, 103, 85, 53, 47, 68, 101, 106, 49, 101, 72, 68, 69, 79, 50, 51, 100, 84, 88, 114, 74, 121, 108, 71, 116, 78, 56, 74, 82, 102, 115, 106, 83, 47, 76, 109, 112, 87, 55, 52, 121, 70, 117, 105, 118, 74, 71, 71, 107, 52, 74, 55, 109, 97, 55, 71, 76, 108, 77, 82, 107, 69, 115, 101, 122, 71, 52, 51, 57, 50, 47, 105, 109, 69, 97, 101, 77, 81, 57, 108, 55, 107, 100, 89, 85, 67, 89, 116, 79, 122, 89, 90, 82, 47, 77, 77, 53, 82, 97, 51, 71, 72, 65, 117, 102, 86, 90, 79, 65, 55, 100, 49, 114, 122, 77, 47, 54, 113, 106, 120, 55, 110, 105, 117, 117, 56, 57, 82, 120, 47, 66, 65, 99, 84, 72, 79, 103, 79, 66, 47, 79, 86, 90, 81, 119, 89, 90, 105, 110, 111, 47, 104, 109, 120, 78, 88, 98, 51, 81, 106, 118, 71, 78, 108, 113, 111, 69, 81, 102, 111, 57, 68, 68, 84, 121, 66, 97, 113, 77, 69, 66, 105, 87, 68, 103, 89, 67, 83, 54, 107, 108, 55, 83, 68, 122, 43, 55, 104, 79, 121, 104, 70, 70, 49, 101, 66, 103, 70, 119, 75, 65, 68, 97, 108, 43, 88, 78, 98, 78, 85, 100, 107, 97, 86, 115, 100, 73, 97, 114, 85, 79, 88, 98, 89, 104, 83, 114, 114, 76, 87, 118, 79, 99, 87, 97, 100, 114, 82, 74, 84, 85, 82, 77, 82, 115, 74, 118, 52, 98, 53, 57, 118, 119, 88, 111, 84, 87, 52, 43, 48, 115, 51, 80, 83, 110, 43, 69, 110, 100, 84, 114, 115, 74, 121, 106, 87, 69, 49, 100, 76, 87, 98, 82, 75, 121, 47, 51, 120, 117, 100, 90, 118, 106, 116, 115, 111, 109, 106, 54, 82, 110, 83, 76, 114, 47, 81, 55, 77, 109, 54, 100, 76, 51, 102, 83, 102, 122, 57, 115, 89, 86, 83, 118, 67, 88, 74, 84, 52, 71, 77, 52, 112, 108, 82, 78, 78, 78, 55, 47, 49, 108, 110, 74, 115, 99, 106, 114, 108, 120, 81, 48, 84, 110, 85, 74, 116, 111, 53, 78, 49, 104, 56, 97, 79, 88, 78, 98, 77, 72, 83, 87, 104, 72, 56, 76, 121, 43, 88, 74, 116, 117, 111, 101, 114, 86, 72, 113, 108, 83, 110, 119, 119, 70, 74, 101, 72, 55, 66, 74, 66, 47, 67, 43, 118, 101, 88, 50, 56, 116, 85, 56, 61, 0, 0, 0, 0, 0, 1, 230, 7, 3, 0, 13, 0, 1, 5, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 3, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 119, 104, 105, 116, 101, 8, 0, 4, 116, 101, 120, 116, 0, 9, 80, 108, 97, 121, 101, 114, 115, 58, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 103, 114, 101, 101, 110, 8, 0, 4, 116, 101, 120, 116, 0, 8, 86, 105, 115, 105, 98, 108, 101, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 13, 40, 82, 105, 103, 104, 116, 32, 67, 108, 105, 99, 107, 41, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 8, 1, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 40, 82, 105, 103, 104, 116, 45, 99, 108, 105, 99, 107, 32, 116, 111, 32, 116, 111, 103, 103, 108, 101, 32, 112, 108, 97, 121, 101, 114, 32, 118, 105, 115, 105, 98, 105, 108, 105, 116, 121, 33, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 1, 137, 9, 3, 0, 13, 0, 1, 5, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 5, 103, 114, 101, 101, 110, 8, 0, 4, 116, 101, 120, 116, 0, 15, 76, 111, 98, 98, 121, 32, 83, 101, 108, 101, 99, 116, 111, 114, 32, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 13, 40, 82, 105, 103, 104, 116, 32, 67, 108, 105, 99, 107, 41, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 8, 2, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 48, 82, 105, 103, 104, 116, 45, 99, 108, 105, 99, 107, 32, 116, 111, 32, 115, 119, 105, 116, 99, 104, 32, 98, 101, 116, 119, 101, 101, 110, 32, 100, 105, 102, 102, 101, 114, 101, 110, 116, 32, 108, 111, 98, 98, 105, 101, 115, 33, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 10, 9, 0, 5, 101, 120, 116, 114, 97, 10, 0, 0, 0, 2, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 0, 0, 8, 0, 5, 99, 111, 108, 111, 114, 0, 4, 103, 114, 97, 121, 8, 0, 4, 116, 101, 120, 116, 0, 35, 85, 115, 101, 32, 116, 104, 105, 115, 32, 116, 111, 32, 115, 116, 97, 121, 32, 119, 105, 116, 104, 32, 121, 111, 117, 114, 32, 102, 114, 105, 101, 110, 100, 115, 46, 0, 8, 0, 4, 116, 101, 120, 116, 0, 0, 1, 0, 6, 105, 116, 97, 108, 105, 99, 0, 0, 0];
73        let mut buf = Cursor::new(contents.as_slice());
74        let packet = ClientboundContainerSetContent::azalea_read(&mut buf).unwrap();
75        println!("{:?}", packet);
76
77        assert_eq!(buf.position(), contents.len() as u64);
78
79        // contains FormattedText which doesn't re-encode to the same bytes
80        // let mut buf = Vec::new();
81        // packet.write(&mut buf).unwrap();
82        // assert_eq!(buf, contents);
83    }
84}