This file describes known problems with the algorithm and with the code in this directory, along with information on reporting bugs and improvements. There are three known problems with the simulation, one in the basic algorithm and two in details of implementation. The problem with the algorithm appears in the first phase of rebalancing. The first phase was intended to distribute most of the necessary changes (that is, the difference between the total values requested by the user and the total values set originally for the full cycle). In practice, the first phase leaves a high number of changes for the second phrase. The problems with implementation are: 1. A fixed limit is placed on lines of input. Since this program is a simulation rather than a production-ready application, this limitation can easily be respected by the user. 2. The atoi function on some systems (including the GNU C library used by these authors) accepts non-numeric input and returns zero without setting errno. Documentation states that it "errno may be set to EINVAL" but that cannot be guaranteed in practice. Therefore, non-numeric input is not trapped as an error. Once again, we depend on users to respect the documented behavior of the program. Any bug reports and suggestions for improvement, regarding either the algorithm or the simulation, can be sent to Andy Oram, email andyo at domain oreilly.com.