The modules are used so that some of the entities declared within it can be made accessible to more than one program unit. Here three modules were used: one containing decleration of global data, one containing the interface blocks, and one containing functions which are being accessed several times and from different program units (these functions are often referred to as module procedures). These modules are listed in this order in the following: