Would it be neater to specify an int length, tuple of int lengths here?  Then add the 'S" at the beginning for the field definition, and the field names for the `prts`?  That way you wouldn't have to do that in the calling code.