packet compilation