be stricter with barcode format
version