it really helps when you write the packet types