compiled for reading