fixed so you can construct packets with null data