not that it's needed now, but perhaps you might consider passing just the `args` structure to this function and get the values from the object, instead of this growing number of positional parameters...