Audio Director Manager (Audir) 2.0 Users Guide
Doug Lee
Last revised January, 2016

The Audio Director Manager (Audir, pronounced similarly to "odder") is a utility program designed to simplify the tasks of creating, launching, and generally managing programs that direct (or repeat) audio among devices and files. At this writing, this utility will be most useful to those who also use Virtual Audio Cable (VAC), though it can also manage Sound eXchange (SoX) processes for repeating audio among devices and cables and recording and playing audio files. Support for further audio handlers may be added in the future. Historically, this program was called the Virtual Audio Cable Repeater Organizer (Vacro) until January of 2016, when SoX support was added.

Note that Audir is not itself an audio repeater or director; it simply manages programs that do this. As such, Audir is not part of, or directly associated with, either VAC or SoX; but it requires one or the other or both in order to be useful.

Audir is covered by version 3 of the GNU General Public License; see the file copying.txt for further information. The ConfigObj and Validate modules are under separate license and copyright; see those files for details. The WMI module falls under the GNU-safe MIT license; see for further information.

Audir can perform the following tasks:

Audir also provides a few convenient shortcuts for more complex SoX effects chains that may be commonly used.

Table of Contents

Quick Start Guide

Here's how to get up and running quickly with Audir:

  1. Make sure the audio handlers you plan to use are installed and working properly. Setup and usage of audio handlers (e.g., VAC and SoX) is beyond the scope of this Guide, though examples will abound that demonstrate usage of the supported handlers with Audir. Audio handlers supported by Audir at this writing:
    Audio Handler License Information Supported/Tested Versions URL
    Virtual Audio Cable (VAC) Commercial, $25.00 or so 4.14 and 4.15
    Sound eXchange (SoX) Free, GNU license version 2 14.4.1 and 14.4.2 Windows builds
  2. If you prefer to use the stand-alone Audir executable, download that from and place it somewhere easy to launch. You can create a shortcut to it if you like as well. If you previously installed Vacro (the predecessor to Audir) and want to use settings from it, place vacro.ini into the same folder alongside audir.exe. You can now skip the next (multi-part) step, as you will not need to install Python or obtain the Audir zip file.
  3. To run from source rather than from the stand-alone executable, do the following:
  4. To launch Audir, run audir.exe if you are using the stand-alone executable, or launch if running from source. A console window and Audir> prompt should appear.
  5. If you find you have buffer lengths (or other parameters) that remain constant for particular repeater types, you can make Audir defaults for them. The following examples work well on the Audir author's Windows 8.1 laptop as of this writing:
    defaults MME /BufferMs:100
    defaults KS /BufferMs:40
    defaults SoX --input-buffer 32 --buffer 2048
    Defaults can be overridden for a particular repeater. For example, SoX may require a larger effects buffer for the pitch effect than for more commonly used effects:
    sox l2 l4 --buffer 16384 pitch 400
    (Note that the default --input-buffer 32 will still be applied here.)
  6. Start managing repeaters. Commands are explained in following sections, but here are some examples beyond the defaults command just mentioned:
    Command Effect
    MME map l1 Copy audio from the Microsoft Sound Mapper to Virtual Audio Cable line 1.
    MME wireless l2 :h2 Connect the input device whose name contains "wireless" to Virtual Audio Cable line 2, and save this repeater under the name "h2."
    close wireless Close (unload) the repeater just started above.
    launch h2 Launch the above repeater by its new name.
    stop h2 Stop but do not unload the repeater.
    start h2 Restart the repeater.
    show h2 Display the repeater's window.
    sox --buffer 2048 l4 map highpass 150 treble -10 :l4at Start a SoX instance that repeats VAC line 4 to the default output device with bass and treble attenuation. Save this under the name "l4at."
    ls List running repeaters.
    edit (or just ed) Open a Notepad window containing all loaded repeaters for live editing. See the Editing Repeaters section for details.
    close all Close all running repeaters.

Brief Summary of Commands

Audir provides the following commands, described in subsequent sections. Note that the term "repeater" here is used to apply to any process managed by Audir. This includes MME and KS VAC repeaters as well as SoX processes started by Audir. SoX "repeaters" are usually used just like VAC repeaters but can also transfer audio between devices and files rather than just between devices.

Category Command Purpose
Creating and destroying repeaters launch Launch new or saved repeaters and save repeaters for future launching.
  MME, KS Shortcuts for launching new MME and KS type VAC repeaters.
  SoX Shortcut for launching new SoX processes for audio transfer among devices and files, possibly with effects such as compression, filtering, equalizers, etc.
  close Close (unload) repeaters.
  delete or del Delete saved repeaters.
  defaults Set up default options for MME, KS, and SoX repeater types.
Manipulating running repeaters ls List running repeaters.
  start, stop Start or stop loaded repeaters (not supported by SoX).
  show, hide Show or hide repeater windows (not supported by SoX).
  info Show information about specific loaded repeaters.
  edit (or just ed) Open a Notepad window containing all loaded repeaters for live editing. See the Editing Repeaters section for details.
Program control and documentation quit, exit, EOF Exit the program.
  help or ? Get a command list or help on a specific command.
  clear or cls Clear the screen.
  errTrace Print a brief trace of the last program error.

General Command Information

All commands include built-in documentation accessible by typing help followed by the command of interest. A question mark (?) can be used in place of help, in which case the space between it and the command of interest is not required. Simply typing help or ? by itself will present a list of available commands.

Letter casing in commands is not significant; e.g., "MME h1 /BufferMs:50" and "mme h1 /bufferms:50" are identical. Names of saved repeaters (like h1 here), however, must match exactly, including case. In this guide, command elements are usually cased based on their common appearance in Virtual Audio Cable and SoX documentation.

Manipulating Running Repeaters

Audir can manipulate any loaded VAC repeater, regardless of how it was started (i.e., regardless of whether Audir started it). (SoX processes are only managed by Audir if Audir started them.) Once Audir is running, typing ls will list any currently loaded repeaters and indicate the status of each (e.g., Stopped or Running).

The following commands can be used against any loaded repeaters by providing part of the text from the repeater's listing after the command, or by typing the command with nothing after it and selecting repeaters from a numbered list. See also the Editing Repeaters section for a very powerful way to stop, restart, modify, close, and in some cases start new repeaters from a full text window.

Stop the repeater if it is running, leaving it loaded but inactive. Its status will change to Stopped. SoX repeaters do not support this command.
Start the repeater if it is stopped. Its status will change to Running. SoX repeaters do not support this command.
Show the repeater's window (not for SoX processes).
Hide the repeater's window (minimize it to the system tray). SoX processes have no windows and are thus always hidden, nor do they appear in the system tray. Use the ls command to find these.
Show information about the repeater.
Close the repeater. It will be terminated and will stop appearing in the list of loaded repeaters. For repeaters with windows and/or system tray icons, these should go away also.

If no text is provided after one of the above commands, or if the provided text matches more than one repeater, a list of available repeaters will appear, in which each repeater is shown with a number. Press Enter to abort the command without affecting any repeaters, or select one or more repeaters by number. Most users will just enter a single number and press Enter to select one repeater, but requesting action on several repeaters at once is also supported. The following methods of selecting repeaters from this numbered list are supported, shown here by example as if a list containing 9 repeaters has appeared:

Select the second repeater from the list.
2,5, 2, 5, or just 2 5
Select repeaters 2 and 5 from the list.
2-5 or 2..5
Select repeaters 2, 3, 4, and 5.
1 3..5, 7-9
Select repeaters 1, 3, 4, 5, 7, 8, and 9. (Of course most people will choose between space and comma and between dash and dots rather than mixing them all in one selection.)
When multiple repeaters are selected in this way, they are acted upon in numeric order regardless of the order in which they are specified; so, for example, selecting "5 2 9" will act on repeater 2, then 5, then 9. Any repeated indices or range overlaps are filtered out, so no repeater will be acted upon twice.

Creating New VAC Repeaters

The launch command can be used to launch a new or saved VAC repeater and can also save the repeater for easier future launching.

For a new VAC repeater, the first parameter after launch is the repeater type, either MME for a Windows Multimedia repeater, or KS for a Kernel Streaming repeater. A simpler way to launch a new repeater is simply to type MME or KS as a command. The following discussion applies to either method.

If no further arguments appear after MME or KS, Audir will launch a new repeater of the requested type and will leave it in focus on screen for manual configuration. As many repeaters of either type as needed can be opened in this manner without having to use the "Open in New Window" feature of Windows to keep from simply refocusing an existing repeater.

If a single argument appears after MME or KS, it is used as the name (window title) to apply to the new repeater. In this case, Audir will open the new repeater and leave it on screen but will change its window title to the argument specified:

MME Test1
will open a repeater and name it Test1.
MME "My Repeater"
will open a repeater and name it My Repeater (the quotes are necessary because the name contains a space).

If more arguments appear after MME or KS, they may consist of source and destination devices (required), repeater options starting with a slash (/), and/or a name under which to save this repeater for future reference prefixed with a colon (:).

The first two arguments that do not begin with a slash are taken to be the input and output devices for the repeater. Device specifications are discussed in more detail in the Device and Repeater Specifications section, but they can be a short name for a VAC device, the word mapper (map is usually enough) for the Microsoft Sound Mapper (MME repeaters only), or a partial or full device name. In the latter case, Audir will match the text against the available options for the device (based on repeater type and whether this is the source or destination). If there is a single match, that device is used. If there are multiple matches, Audir presents a numbered list of matches and allows one to be chosen by number.

When source and destination devices are indicated as part of a launch command, the new repeater is automatically minimized to the system tray on creation, and focus stays in Audir itself.

Except for the order of input and output devices, the order of arguments when launching an MME or KS repeater does not matter. The following commands are all equivalent:

MME l1 l2 /BufferMs:50 /Buffers:6
MME /BufferMs:50 /Buffers:6 l1 l2
MME l1 /BufferMs:50 /Buffers:6 l2
Commonly used options can be set up as defaults for all new repeaters as well; see the VAC Repeater Options and Defaults section, which also lists the available options.

Creating New SoX Processes

Just as for VAC repeaters, the launch command can be used to launch a new or saved SoX repeater and can also save the repeater for easier future launching. To launch a SoX repeater, start the command with launch SoX or just SoX (case does not matter).

At least two arguments must appear after SoX: The first indicates the source for the audio transfer, and the second indicates the destination. There may be arguments after the device indications, which are treated as SoX options and effects and their arguments. In complex cases, the specific positions of device names among SoX options and effects can be indicated with "waveIn" and "waveOut" (case-insensitive) keywords; though this is rarely necessary. See examples below.

Source and destination specifications may be device names or shortcuts as for VAC repeaters but may also be file names or paths. See the Device and Repeater Specifications section for details on specifying devices. Using a device for source and a file for destination effectively creates a sound recorder that runs until stopped. Using a file for the source and a device for the destination creates a player that runs until stopped by the user or until the audio in the source file is exhausted. (It is technically possible to use a file for both source and destination, but there is probably no reason to do this from inside Audir rather than using SoX directly.)

Warning: When using Audir and SoX to record or play files, it is currently necessary to specify a full file path. When doing this, do one of the following to avoid interpretation errors:

For example, to play the file my_song.wav in folder c:\music, do not type this:
sox c:\music\my_song.wav map
but use one of these instead:
sox c:\\music\\my_song.wav map
sox c:/music/my_song.wav map
sox 'c:\music\my_song.wav' map
sox "c:\music\my_song.wav" map
Attempting to use single backslashes without quoting can cause files to be referenced or created in unexpected places or to go nowhere; for example, the path c:\downloads\test.wav may become c:downloadstest.wav.

As with VAC repeaters, it is also possible to save a SoX specification for easy reuse. Do this by including among arguments, usually as the final argument, the desired name preceded by a colon; e.g.,

SoX l2 map highpass 100 treble -10 :l2at

Examples of permitted SoX launch commands:

sox l2 map highpass 100 treble -10 :l2at
sox l2 map --buffer 2048 highpass 100 treble -10 :l2at
sox l2 c:/sounds/output.wav --buffer 2048 highpass 100 treble -10
sox l2 c:/sounds/output.wav --buffer 2048 waveIn -g waveOut rate 16000
sox map -t ogg waveIn waveOut vol 0.5 :radio1
The penultimate example above requires the waveIn and waveOut markers because of the intervening -g option, which sets up GSM encoding for the output wave file. The final example above creates a "radio1" configuration so that subsequently typing "launch radio1" will start playing a radio station at half volume through the default output sound device. The waveIn and waveOut markers are required in this case in order to allow the Ogg type to be included. ( is a fictitious Internet address and does not exist at this writing.)

Using Saved Repeaters

As mentioned above, adding a name when specifying input and output devices on a new repeater will save that repeater under the given name for future launching. To launch such a repeater, specify its name in place of a repeater type (MME, KS, or SoX) on the launch command line. For KS and MME repeaters, options beginning with a slash (/) may follow the name and will be applied without saving Any number of repeaters may be launched at once in this fashion:

launch r1 r2 /BufferMs:100 r3 /Buffers:6
launches repeaters called r1, r2, and r3, with special temporary options for r2 and r3. Due to the richness and complexity of the SoX command-line syntax, temporary options/effects are not supported for SoX repeaters.

A launch command with no arguments will display a list of all saved repeaters for selection. As usual with selection lists, any number of repeaters can be selected at once.

To delete one or more saved repeaters, type delete (or just del) with no arguments to select from a list, or with one or more repeater names to delete specific repeaters immediately. Names must match exactly.

Device and Repeater Specifications

Audir allows partial matching for device and repeater names to minimize typing and also includes very abbreviated names for some standard devices.

A description of the shortened device name system by example follows. Where the number 1 appears below, any VAC device number can be used; for example, l6 refers to VAC line 6.

Short Name MME and SoX Repeaters KS Repeaters
L1 Line 1 (Virtual Audio Cable) Virtual Cable 1
M1 Mic 1 (Virtual Audio Cable) Virtual Cable 1
S1 S/PDIF 1 (Virtual Audio Cable) Virtual Cable 1
V1 (not applicable) Virtual Cable 1
Mapper (map is usually enough) Microsoft Sound Mapper (not applicable)

A device specification not matching one of the above names exactly (except that letter casing doesn't matter) will be matched against the available device names for that device. If there is exactly one match, that device is used. If there are more matches, a list will appear allowing selection of a device by number.

Repeaters can also be matched by partial name but can also be matched by referring to the repeater's status or type, again by partial or whole text. For example, if only one KS repeater is running, "close ks" should close it.

VAC Repeater Options and Defaults

Audir supports exactly the same repeater command-line options supported by the repeaters themselves, though a few should not be used through Audir (see below). Defaults for each repeater type can be established via the defaults command. Examples:

Show the defaults for all repeater types without making changes.
defaults KS
Show the defaults for KS repeaters without making changes.
defaults MME -
Clear the defaults for MME repeaters.
defaults MME /BufferMs:50
Change the buffer length for MME repeaters.
defaults MME /Buffers:6 -/BufferMs
Change buffer count and remove the buffer length default.

The following VAC repeater options are supported (list obtained from VAC 4.14 and 4.15 documentation):

Option Default/Sample Value Meaning
SamplingRate 48000 Sampling rate.
BitsPerSample 16 Bits per sample.
Channels 2 Number of channels.
ChanCfg   Channel configuration (MME repeaters).
ChanCfgIn   Input channel configuration (KS repeaters)
ChanCfgOut   Output channel configuration (KS repeaters)
BufferMs 500 Total buffering length in milliseconds.
Buffers 12 Number of buffers (parts of buffering space).
Priority Normal Process priority.
OutputPreFill 50 Percent of output queue to pre-fill before starting output (KS repeaters starting in VAC 4.15).
ContQueueIn, ContQueueOut No value Use continuous queue mode with input or output pin (legacy only) (KS repeaters starting in VAC 4.15).

Note that the following repeater options should not be used through Audir because Audir uses these internally or implements their functionality by other means:

SoX Repeater Options and Defaults

At this writing, SoX supports approximately 64 effects that can be applied to audio as it passes between devices and files. Effects can be combined in an "effects chain" or, in complex cases, multiple effects chains that run sequentially. A full discussion of SoX effects and chains is beyond the scope of this Guide, but some example effect chains follow. The SoX documentation contains many more examples.

Effects Description
vol 0.5 Cut the output volume in half.
highpass 100 Apply a highpass filter.
bass -15 treble -15 Reduce low and high frequency sound.
compand 0.3,1 6:-70,-60,-20 -5 -90 0.2 Compress the dynamic range such as for listening in a car (from SoX man page). SoX also includes an mcompand effect for more complex needs; see the example below this table.
equalizer 60 .001h -180 equalizer 120 .001h -180 Remove fundamental and first harmonic of a 60 Hz hum with minimal disturbance to the remaining signal.
echo 1 1 500 .5 1000 .25 Add two echos at 0.5 seconds and 1 second delay from original audio, at decreasing volumes.
loudness A human-ear loudness curve as provided by buttons on many stereo systems.
oops An "out of phase stereo" effect that results in only the differences between the stereo channels being audible.
reverb 100 0 100 100 A reverb effect that simulates a very large space.
pitch -200 Lower the pitch of the audio by 200 cents (a full musical step).
remix 1 1 Only pass through the left channel, but into both channels of the result.
riaa Apply the standard RIAA vinyl playback equalization curve.

For a final and very complex example (taken from the SoX man page), the following command, if given on one line as Audir input (and with a sufficiently old SoX version that supports the filter effect), will create a SoX repeater that takes sound from VAC line 1 and sends it to VAC line 2 after applying an effect chain that compresses the audio in a manner commonly done for US FM radio broadcasting (including 75us pre-emphasis):

sox l1 l2 gain -3 filter 8000- 29 100 mcompand "0.005,0.1 -47,-40,-34,-34,-17,-33" 100 "0.003,0.05 -47,-40,-34,-34,-17,-33" 400 "0.000625,0.0125 -47,-40,-34,-34,-15,-33" 1600 "0.0001,0.025 -47,-40,-34,-34,-31,-31,-0,-30" 6400 "0,0.025 -38,-31,-28,-28,-0,-25" gain 15 highpass 22 highpass 22 filter -n 255 -b 16 -17500 gain 9 :broadcast12
For an actual simulation of FM radio sound, as opposed to the broadcast signal condition just given, add "lowpass -1 17801" just before the ":broadcast12" above. (Sadly, the filter effect used in the above example has since been removed from SoX in favor of the newer sinc effect. At this writing, the exact way to replicate the original effects using sinc is not clear.)

Note that the following SoX options and effects should not be used with Audir:

Additionally, these should not be used when the source is a device rather than a file because these require a full scan of the source audio stream, which is not possible with a source that is a device:

Note that although piping options are not supported, pipes created by using "|sox ..." in place of device names are allowed. This is very advanced and probably rare usage, however. The following example uses a second SoX process to generate a ringtone-like sound which is then trimmed to one second duration by the main SoX process:

sox "|sox -n -p synth 0.075 trap A4 : synth 0.075 trap F4 : restart" map trim 0 0:1
In that example, the "|sox ..." sequence is used as the source endpoint, and sound is sent to map, the default Windows output device.

SoX supports a SOXOPTS environment variable that can include default options to apply to all SoX invocations. While use of this approach is not required for Audir SoX processes since Audir includes a system for managing defaults, any options found in a SOXOPTS environment variable will be honored by SoX processes that Audir launches.

SoX Effect Shortcuts

Audir defines a number of SoX effect shortcuts. The syntax of these shortcuts is deliberately unlike that of native SoX effects, to make it easier to distinguish between the two. Each shortcut, when typed as part of a SoX repeater specification, is expanded into the native SoX equivalent. This may be one effect or a whole sequence of effects.

Warning: These shortcuts and their expansions may change without notice and should be considered experimental. When a repeater is saved, these shortcuts are expanded before saving though; so any changes in expansions will not alter or break saved repeaters.

Audir defines the following SoX effect shortcuts:

Shortcut Pattern Expands To Examples Comments
comp<n>[s] compand .01,.01[,.01,.01] -<n>,-20,0,-10 comp30
A very reactive compression of dynamic range. Higher values of <n> produce more compression. If the optional trailing s is present, each stereo channel is compressed independently, so that a loud sound in one channel will not reduce the volume of the other.
eqs<f1>-<f2> equalizer <f1> .005h -180, and another equalizer for each harmonic of <f1> that is less than or equal to <f2>. eqs60-300 (produces equalizers for 60, 120, 180, 240, and 300 Hz) Removes the fundamental and indicated harmonics of a tone, usually a hum, from the signal.
sil<fpn> silence 1 .2 <fpn>% -1 .2 <fpn>% sil.01 Removes (trims out) silence. <fpn> is the percentage of the signal (by amplitude) to remove. As a special case, a value with a leading 0 is treated as a decimal value; thus, sil01 is the same as sil0.01.
nv<dB>[@<center>[/<width>]] channels 1 [vol 0.01 equalizer <center> {<width> or 400}h 55] compand .01,.01 -<dB>.01,-<dB>,-inf 0 0 0.015 silence 1 .3 .01% -1 .022 .01% [equalizer <center> {<width> or 400}h -55 vol 100] nv45
Inverse noise gate: Removes (trims out) loud parts of a signal and leaves only the quieter parts. See notes below this table for further information.
ov<dB>[@<center>[/<width>]] channels 1 [vol 0.01 equalizer <center> {<width> or 400}h 55] compand .01,.1 -<dB>.01,-inf,-<dB>,-<dB> 0 0 0.015 silence -l 1 .022 .01% -1 .7 .01% [equalizer <center> {<width> or 400}h -55 vol 100] ov45
Noise gate: Removes (trims out) quiet parts of a signal and leaves only the louder parts. See notes below this table for further information.

The nv (no vocals) and ov (only vocals) effects are meant to be the inverses of one another, though ov is not well tested. <dB> indicates the decibel level above which for nv, or below which for ov, to remove signal. If specified, <center> indicates a central frequency that is first boosted and then removed again after gating. This facilitates removing or exclusively preserving vocals, for example. The default width of the boosted frequency range is 400 Hz, but <width> can also be given to change this.

The following caveats apply to the nv and ov effects:

Editing Repeaters

Audir includes a very powerful feature that allows a whole set of repeaters to be managed live from a text window. From this window, repeaters can be reviewed, modified, quickly closed and reopened, and (for MME and KS repeaters) stopped and started with realtime results.

To invoke this feature, type edit, or just ed, from an Audir command prompt. A Notepad window will open containing a list of all loaded repeaters (running and stopped), along with a short block of instructions above the list. The Audir command window will be suspended until this Notepad instance is closed, though information will appear in the Audir window each time the Notepad window is updated and saved.

In the Notepad window, each loaded repeater is represented by a line much like the one typed initially to create it. There are two departures from the Audir command-line syntax, however: If the repeater has a name, the name will appear at the start of the line and will be followed with a colon (:), rather than appearing at the end of the line and prefixed with a colon (this makes identifying named repeaters easier). A stopped repeater will be prefixed with an exclamation mark (!). This allows quick toggling on/offof repeaters that support the stop and start commands.

The following operations are now possible. Save the file, such as by typing Ctrl+S, at any time to apply the changes to the set of loaded repeaters.

A new repeater may also be created by adding a line for it. The following warnings apply, however:

For these reasons, it is usually best to create all new repeaters from within Audir itself, then edit them as necessary in Notepad via the edit command. Alternatively, create the new repeater in Notepad but then immediately close the Notepad window after saving it, reopening with a new edit command if desired in order to obtain the actual command line for the repeater.

Example uses of the edit command:

Miscellaneous Hints and Tips

The following tips and hints are derived from the Audir author's personal experience. Your mileage may vary.

Starting in VAC version 4.15 (released in December, 2015), typing Ctrl+C while in a "Wave in" or "Wave out" box of an MME or KS repeater window will copy the selected device name to the clipboard. This may facilitate creation of Audir repeater configurations for saving and reuse.

Optimal default buffer sizes for Virtual Audio Cable and/or SoX may change on an update. This author found, for example, that a SoX default of --buffer 1024 was sufficient for SoX 14.4.1 but --buffer 2048 was required for SoX 14.4.2 to avoid lost sound. Default buffer sizes will also vary of course based on other factors such as system load and other running applications.

Interesting uses of SoX repeaters:

When using the SoX pitch effect, a buffer of at least 8192 may be required. The same goes for the noisered effect, which can crash with an insufficient buffer size.. The pitch effect's buffer size requirements seem more intensive for lowering than for raising pitch.

In the unlikely event it becomes desirable to reload a repeater without changing it while in an edit command's Notepad window, simply add or remove an extra space from between items on the repeater's line, then save the file.

It may be tempting, while testing complicated SoX effect chains via the Audir edit command, to place a number sign or semicolon before a trailing effect or sequence to disable it temporarily. This will not directly work, but moving it to a new line and preceding it with a number sign or semicolon will work. To enable the effect or sequence again, just remove both the newline and the comment character - and make sure there remains a space between it and the material before it.

Known Issues

The following issues may be addressed as time permits: