This program takes AEC electoral data and runs the Single Transferable Vote algorithm on it to calculate election outcomes. To compile this program, the following dependencies are needed: gnat (of course) gnu make Note however that make isn't strictly necessary if you have a look in the makefile to see the compilation commands required. Compilation is done by 'make all'. Further instruction on how to use this program can be obtained from the '--help' switch, once compiled. The required data files this program expects can be obtained from http://results.aec.gov.au/20499/Website/SenateDownloadsMenu-20499-Csv.htm Specifically, the files listed under 'Formal Preferences'. At the moment this program can only handle AEC Senate data from 2016 or later. Processing of State Legislative Council data and more general STV data is a goal of future versions. Valid parameters for the '--state' option are 'NSW', 'QLD', 'VIC', 'TAS, 'SA', 'WA', 'ACT', 'NT', all uppercase. Note that the number of count logs this program outputs differs from the number that the AEC provides. This is because the AEC's program merges a few more logs compared to this one, eg the initial count, and counts that elect candidates. On the other hand, the AEC program is also a lot more verbose on the distribution of preferences, and doesn't do bulk exclusions. Support for bignums (the Multi_Precision_Integers package) was obtained from https://sourceforge.net/projects/mathpaqs/ Those source files are licensed under the MIT license. All other source is licensed under CC0.