This data structure contains a list of key-value pairs (as strings) for both filename resolving, and file metadata. They are stored as two separate arrays (as metadata is often a bit more verbose/human friendly) and it is not required that the two arrays be in sync. When resolving final filenames, any {tokens} will be replaced with a matching key-value if found in the FilenameArguments variable. Because of this, FilenameArguments should be short and avoid illegal filename chars.