--::::::::::
--jpmobnch.pro
--::::::::::
-------- SIMTEL20 Ada Software Repository Prologue ------------
-- -*
-- Unit name : Benchmark
-- Version : 1.0
-- Author : WIS JPMO
-- : Washington, D.C. 20330
-- : Contact: Lt. Colonel Falgiano
-- : ESD/SCW
-- : Hanscom AFB, MA 01731
-- DDN Address :
-- Copyright : (c) 1985
-- Date created : 1985
-- Release date : 1985
-- Last update : 1985
-- Machine/System Compiled/Run on :
-- -*
---------------------------------------------------------------
-- -*
-- Keywords : benchmarks
----------------:
--
-- Abstract : This tool is a series of very simple benchmarks
----------------: which are used to test the validity of various
----------------: assumptions that one might make about the
----------------: behavior of a compiler. Probably all the
----------------: implicit assumptions are valid, these tests
----------------: just check that something has not been
----------------: overlooked that could severely distort
----------------: detailed quantitative tests. There should be
----------------: no significance given to the numerical results
----------------: of these tests, they just provide a framework
----------------: for other tests. There is not even a pressing
----------------: need to make sure of the status (or emptiness)
----------------: of the machine on which they are run, since
----------------: the desired comparison is one to another, not
----------------: to some absolute.
----------------:
----------------: This tool was developed as a precursor for
----------------: the WMCCS Information System (WIS). An
----------------: executable version of the tool has been
----------------: demonstrated. This source code has sub-
----------------: sequently been recompiled but has not under-
----------------: gone extensive testing.
----------------:
-- -*
------------------ Revision history ---------------------------
-- -*
-- DATE VERSION AUTHOR HISTORY
--1985 1.0 WIS JPMO Initial Release
-- -*
------------------ Distribution and Copyright -----------------
-- -*
-- This prologue must be included in all copies of this software.
--
-- This software is copyright by the author.
--
-- This software is released to the Ada community.
-- This software is released to the Public Domain (note:
-- software released to the Public Domain is not subject
-- to copyright protection).
-- Restrictions on use or distribution: NONE
-- -*
----------------- Disclaimer ----------------------------------
-- -*
-- This software and its documentation are provided "AS IS" and
-- without any expressed or implied warranties whatsoever.
--
-- No warranties as to performance, merchantability, or fitness
-- for a particular purpose exist.
--
-- Because of the diversity of conditions and hardware under
-- which this software may be used, no warranty of fitness for
-- a particular purpose is offered. The user is advised to
-- test the software thoroughly before relying on it. The user
-- must assume the entire risk and liability of using this
-- software.
--
-- In no event shall any person or organization of people be
-- held responsible for any direct, indirect, consequential
-- or inconsequential damages or lost profits.
-- -*
----------------- END-PROLOGUE -------------------------------
--::::::::::
--jpmobnch.cmm
--::::::::::
Comments on Porting
Benchmark
by WIS JPMO
to DEC Ada
Tool 37
October 4, 1985
COMPILATION
-----------
A VMS command file was created from the ordered list of compilation
units provided in BENCHSRC.DIS.
We were able to recompile BENCHMARK with minor changes in two files.
Compilation errors occurred due to packages that were "withed" but
not delivered with the source code, syntax errors in declarations
and compiler specific pragmas. The following files were changed on
the lines indicated.
1. In file COMPM50.TXT
lines 6, 7, 8, 9, 10, 20, 21, 22, 23 and 24 all references
to library units COMPK26 through COMPK50 were deleted because
they were not included in the source code and no reference
was made to them in the documentation. It is possible that
these library units were part of another tool produced by
the same developer.
lines 15, 16, 17 and 18 were part of a continuous addition
assignment to variable "L". Compilation errors occurred
because each line ended ambiguously without a "+" sign to
continue the addition statement. A "+" sign was added to the
end of each line.
2. In file IMP.TXT
lines 13, 14, 15, 16, 17, 18, 19 and 20 all "suppress"
pragma references were deleted because inclusion of
"pragma suppress" produced compiler errors stating that
"pragma suppress" was not supported by the implementation.
lines 85 and 86 produced compilation errors due to references
made to "direct_io.count", without first instantiating DIRECT_IO.
These errors were resolved by including an instantiation
of DIRECT_IO and using this instantiation to reference "count".
lines 86 and 87, which contained "put" statements, would not
compile on the DEC compiler. The parameters within the put
statements were "direct_io.count'last" and "text_io.count'last"
which both produced a value of type "direct_io.count" and
"text_io.count" respectfully. These parameters required the
use of the generic package INTEGER_IO rather than TEXT_IO,
because they were not of type "character" or "string". Rather,
they were a discrete type of type "count". However, INTEGER_IO
had been instantiated with type "integer". Further instantiations
were added of type "direct_io.count" and "text_io.count".
These instantiations permitted the code to compile. It was
also noted that the parameters of the "put" statement could
have first been converted to type "integer", thereby avoiding
the additional instantiations.
These errors may not have been recognized by the unvalidated
compiler on which the tool was developed.
EXECUTION
---------
We were able to execute the BENCHMARK and it appeared to be in workable
condition.
--::::::::::
--jpmobnch.dis
--::::::::::
compa.txt
compb.txt
compc.txt
compd.txt
compe.txt
compf.txt
compg.txt
compk.txt
compk1.txt
compk2.txt
compk3.txt
compk4.txt
compk5.txt
compk6.txt
compk7.txt
compk8.txt
compk9.txt
compk10.txt
compk11.txt
compk12.txt
compk13.txt
compk14.txt
compk15.txt
compk16.txt
compk17.txt
compk18.txt
compk19.txt
compk20.txt
compk21.txt
compk22.txt
compk23.txt
compk24.txt
compk25.txt
compk50.txt
compl.txt
compm.txt
compm50.txt
compn.txt
compt.txt
compz.txt
imp.txt
--::::::::::
--jpmobnch.doc
--::::::::::
From: MAILER 22-FEB-1985 13:13
To: WIS
Subj: [Netmail From: court@mitre] BACKGROUND AND DATA ON LEVEL 6 ADA TESTS
Mail-From: ARPAnet host MITRE rcvd at Fri Feb 22 13:13-PST
Date: 22 Feb 1985 15:47:17 EST (Friday)
From: Terry Courtwright
Subject: BACKGROUND AND DATA ON LEVEL 6 ADA TESTS
To: wis at nosc-tecr
----BEGINNING OF FORWARDED MESSAGES----
Date: 19 Feb 1985 11:48 PST
From: WWHITAKER@USC-ECLB.ARPA
Subject: BACKGROUND AND DATA ON LEVEL 6 ADA TESTS
To: ALEXANDER@MITRE, COURT@MITRE
There are a series of very simple benchmarks called COMPA, COMPB, ... which
are used to test the validity of various assumptions that one might make
about the behavior of a compiler. Probably all the implicit assumptions
are valid, these tests just check that something has not been overlooked
that could severely distort detailed quantitative tests. There should
be no significance given to the numerical results of these tests,
they just provide a framework for other tests. There is not even a pressing
reason to make sure of the status (or emptiness) of the machine on which
they are run, since the desired comparison is one to another, not to
some absolute.
COMPA contains the minimal procedure framework surrounding 500 separate
Ada declaration statements, each on a separate physical line,
yielding 503 statements and 505 lines.
COMPB also has the 500 variables declared, but in one long Ada statement
spread over 50 physical lines, for a total of 3 statements and 55 lines.
COMPC has the minimal framework with 500 executable assignment statements,
5 per line, yielding 503 statements and 106 lines.
COMPD also has the 500 assignment statements, but they are placed 1 per line,
yielding 503 statements and 506 lines.
COMPE is like COMPD, but interjects a comment line for every assignment,
yielding 503 statements and 1006 lines.
COMPF has the same lines as COMPE, but all the comments are bunched together,
it also has 503 statements and 1006 lines.
COMPG has the structure of COMPE, but is twice as long to test linearity,
it has 1003 statements and 2006 lines.
COMPK is a single package containing 25 very small, but unique, packages.
COMPK1-COMPK25 are the same packages as are contained in COMPK, but as separate
packages.
COMPL "with"s the COMPK package, and exercises a function from each of the
included 25 packages.
COMPM "with"s the 25 separate COMPKn packages and exercises a function from
each, testing, by comparison to COMPL, the cost of "with"ing packages.
COMPN is a null procedure, with neither declaration nor executable statement,
yielding 2 statements and 4 lines.
COMPT is like COMPZ, a minimal program, but "with" and "use" TEXT_IO,
yielding 5 statements and 6 lines.
COMPZ is a nominal minimal program with 1 declaration and 1 assignment,
yielding 3 statements and 5 lines.
A typical set of runs might yield the following information:
On a lightly loaded VAX 11/780 running Telesoft 1.3d compiler -
COMPN took a minimum of 13 clock seconds. This is presumably the time to
load in the compiler off disk and perform a minimal job. Other compiles
might be compared by subtracting this minimum, or the value that is obtained
for the loading at the time of run. With as many as 6 users on the machine
occasionally the time would go to 25 seconds, but that much variation
would be extreme.
COMPZ had the same minimum of 13 seconds, but longer times seemed to be
more common. There may be an effect of doing that small aditional work.
COMPT had the additional burden of "withing" TEXT_IO and took an additional
5 seconds for 18 total.
COMPB regularly took 25 seconds under the load that was yielding mostly 13
seconds for COMPN.
COMPA took 47 seconds under the same conditions. This means that the
breaking up of the 500 declarations into separate statements had a effect,
but it was not proportional to the number of statements. Nor was it even
proportional to the number of lines. This may be interpreted to indicate
that the exact formatting of declarations, while it may produce a
measureable difference in extreme cases, should not be significant for
the small differences that could be found between semantically identical
programs written by people with somewhat different style, or machine
formatted differently.
COMPD, with 506 lines, compiled somewhat slower (53 seconds) than COMPC,
which is compressed to 106 lines but otherwise identical. Again this
shows that extreme variations in format introduce much smaller
variations in compile time, for this compiler. Benchmark results
should certainly not be significant to the 10% level, and within
such limits the number of Ada statements should be the appropriate
measure of compiler performance, rather than "lines", and that measure
should be essentially independent of normal variations in formatting,
for this compiler.
COMPE introduced 500 lines of comments, doubling the "lines", into COMPD.
The time to compile was 64 seconds. If one took the 13 seconds for a
minimal program off, the relative times of the 500 statement program,
without and with the 500 comment lines, are 40 and 51 seconds, indicating
the relative time to process comments compared to the simplest statement.
COMPF compiled in 63 seconds, within measurement error of COMPE.
The grouping of comments had no effect.
COMPG was double COMPE and, after subtracting the minimal 13
seconds, its time of 115 seconds was exactly double (51 to 102), so
the expectation of linearity holds in this case. This was also a fairly
large Ada program as measured in "line of code" (which we would not do),
but the lines are very simple and short (half are short comments). It could
be used to compute an absolute maximum on the compile speed in lines per
minute. There is no way to avoid someone doing this, but the number has no
meaning in an absolute sense for comparing to real programs. Whether it is
of use in relative comparisions is problematic.
ACKER and SIEVE are very common elementary benchmarks which may have been
run in every possible language and on every machine in existance. They
are included to provide a very rough measure of the quality of code
generated by the compilers. While the purpose of the COMP benchmarks is
to measure compile-time properties, these simple measures of code
performance may provide some indication of how much effort goes into the
code generation. For the purposes of comparing with other languages,
all Ada exceptions have been suppressed with pragma SUPPRESS. This is
only advisory to the compiler and may or may not speed up the code.
Runs are with as bare a machine as possible.
ACKER computes the ACKERMANN function for (3, 6).
SIEVE is the BYTE benchmark, ten iterations of calculating the prime
numbers up to 16384 by the method of Eratosthes.
IMP is a program that contains the timing runs for ACKER and SIEVE
in addition to printing various information about the system. It
continually changes as it evolves and as the systems differ (does
it have LONG_FLOAT?) so it is not a regular benchmark. But for some
systems the compile "lines per minute" is recorded to compare with
the COMPG values. IMP is a simple, but by no means typical, program,
and there is no claim that it represents a good test.
The tests were also run on an INTELLIMAC 7000M using TeleSoft 1.3d.
The 7000M is a 12.5 MHz (1.5 MIPS!) 68K with a 330 Meg Fujitsu
SMD disk and a 25Meg fixed/25 Meg removable Amcodyne cartridge
disk. We have 1 Meg of RAM w/ ECC, 8 RS232 ports and a serial
printer port. The Unix is a Unisoft port of Version 7 to the
68K. It includes some "Berkley Extensions" (e.g. Vi and Termcap).
A short series of tests were run on the IBM 3083 E1 at Billerica under the
Telesoft 1.3d and the CMS operating system. This gathered no further
information on the compiler, but showed some things about the operating
system and provided an example on a mainframe.
The Labtek WICAT is a 68000 (8MHz) based desk-top computer running Telesoft
1.3d and the Telesoft ROS operating system. It represents a fairly good
stand-alone capability as far as compile speed is concerned and therefore
is a measure of how a convenient compiler system should appear to the user.
It is, of course, not validated and is therefore not acceptable itself.
The tests on the Honeywell Level-6 gathered data on both the clock
time and the CPU time. In a couple of cases link time was also noted since
these programs must be explicitly linked before execution. For the Honeywell
equipment "best" times were given when available. Compilation in a domain
that has some previous runs can reduce the time somewhat by having
available some previously instantiated units, or specs. After about 50
library files have been created, the search of the library takes longer
and the compiler can slow down by a factor of 2. The compilation of IMP,
the implementation test program, took 602 (367 CPU) seconds on the 95 at the
end of the day, and only 280 (178) seconds in an empty domain. COMPB did
not compile, perhaps because of the large number of declarations (COMPA
which also has 500 declarations took an anomolously long time to compile).
While the machines had up to 4MB of memory, they can only address 1MB
at a time, so the extra memory helps only for multiple jobs.
Some of the 75 runs were made with VIDEO turned off. This status display
absorbed as much as 15-20% of the CPU in this machine. For the 75 the
compiles were very high CP users, on the faster 95 the CP utilization
was significantly less at the end of the tests when the domain library
was large, as shown by the extraordinary run of 25 packages (spec and body)
in a single compilation file (COMPK1-25). For COMPL and COMPM the link
times are also shown. In some Ada systems most of the linking is done
with the compile run and is counted in that time (like Telesoft 1.3).
In others, linking is a separate program to be run before executation.
When this time is significant, it should be added to the compile times
for comparison of these benchmarks. Most Ada programs are composed of a
number of packages and one main program; there is only one link necessary,
not one per package.
-----------------------------------------------------------------------
TELESOFT TELESOFT TELESOFT TELESOFTHONEYWELL HONEYWELL HONEYWELL HONEYWELL
1.3d 1.3d 1.3d 1.3d DDC DDC DDC DDC
VAX INTELLIMAC IBM LABTEK L-6/95+ L-6/75 L-6/45 L-6/45
11/780 7000M 3083E1 WICAT 4MB 2MB 2MB 1.25MB
TEST VMS UNIX CMS ROS CP CLOCK CP CLOCK CP CLOCK CP CLOCK
-------------------------------------------------------------------------
These are null tests of starting the compiler. The COMPN time
has been subtracted from the test time of all others reported.
COMPN 13 26 .8 11 8 26 20 46 36 71 72 310
COMPZ 13 26 .8 11 8 26 25 63
-------------------------------------------------------------------------
COMPA 34 43 3.3 35 67 83 182 218 361 466
COMPB 12 22 1.6 18 -- --
COMPC 31 39 7.0 39 35 45 87 102 160 193 210 721
COMPD 40 40 7.1 41 41 51 100 119
COMPE 51 46 7.6 43 46 59 117 119
COMPF 7.6 43 118 139
COMPG 102 92 15.3 86 94 125 232 273
max lpm 1180 1308 7867 1400 963 441
COMPK 14 30 79
COMPK1-25 511 2482
COMPL 1.0 4 17 145
Link 11 30
COMPM 4.3 24 165
Link 36 80
COMPN (13) (26) (.8) (11) (8) (26) (20) (46)
COMPT 5 5 1.0 6 2 9 7 19
COMPZ (13) (26) (.8) (11) (8) (26) (25) (63)
-------------------------------------------------------------------------
Lines per minute
IMP 122
Run Times
ACKER 2.7 8.3
SIEVE 2.8 7.7
-------
----END OF FORWARDED MESSAGES----
From: MAILER 27-FEB-1985 05:28
To: WIS
Subj: [Netmail From: court@mitre] LEVEL 6 REPORT
Mail-From: ARPAnet host MITRE rcvd at Wed Feb 27 05:28-PST
Date: 27 Feb 1985 8:00:22 EST (Wednesday)
From: Terry Courtwright
Subject: LEVEL 6 REPORT
To: wis at nosc-tecr
----BEGINNING OF FORWARDED MESSAGES----
Date: 25 Feb 1985 07:37 PST
From: WWHITAKER@USC-ECLB.ARPA
Subject: LEVEL 6 REPORT
To: COURT@MITRE
There are a series of very simple benchmarks called COMPA, COMPB, ... which
are used to test the validity of various assumptions that one might make
about the behavior of a compiler. Probably all the implicit assumptions
are valid, these tests just check that something has not been overlooked
that could severely distort detailed quantitative tests. There should
be no significance given to the numerical results of these tests,
they just provide a framework for other tests. There is not even a pressing
reason to make sure of the status (or emptiness) of the machine on which
they are run, since the desired comparison is one to another, not to
some absolute.
COMPA contains the minimal procedure framework surrounding 500 separate
Ada declaration statements, each on a separate physical line,
yielding 503 statements and 505 lines.
COMPB also has the 500 variables declared, but in one long Ada statement
spread over 50 physical lines, for a total of 3 statements and 55 lines.
COMPC has the minimal framework with 500 executable assignment statements,
5 per line, yielding 503 statements and 106 lines.
COMPD also has the 500 assignment statements, but they are placed 1 per line,
yielding 503 statements and 506 lines.
COMPE is like COMPD, but interjects a comment line for every assignment,
yielding 503 statements and 1006 lines.
COMPF has the same lines as COMPE, but all the comments are bunched together,
it also has 503 statements and 1006 lines.
COMPG has the structure of COMPE, but is twice as long to test linearity,
it has 1003 statements and 2006 lines.
COMPK is a single package containing 25 very small, but unique, packages.
COMPK1-COMPK25 are the same packages as are contained in COMPK, but as separate
packages.
COMPL "with"s the COMPK package, and exercises a function from each of the
included 25 packages.
COMPM "with"s the 25 separate COMPKn packages and exercises a function from
each, testing, by comparison to COMPL, the cost of "with"ing packages.
COMPN is a null procedure, with neither declaration nor executable statement,
yielding 2 statements and 4 lines.
COMPT is like COMPZ, a minimal program, but "with" and "use" TEXT_IO,
yielding 5 statements and 6 lines.
COMPZ is a nominal minimal program with 1 declaration and 1 assignment,
yielding 3 statements and 5 lines.
A typical set of runs might yield the following information:
On a lightly loaded VAX 11/780 running Telesoft 1.3d compiler -
COMPN took a minimum of 13 clock seconds. This is presumably the time to
load in the compiler off disk and perform a minimal job. Other compiles
might be compared by subtracting this minimum, or the value that is obtained
for the loading at the time of run. With as many as 6 users on the machine
occasionally the time would go to 25 seconds, but that much variation
would be extreme.
COMPZ had the same minimum of 13 seconds, but longer times seemed to be
more common. There may be an effect of doing that small aditional work.
COMPT had the additional burden of "withing" TEXT_IO and took an additional
5 seconds for 18 total.
COMPB regularly took 25 seconds under the load that was yielding mostly 13
seconds for COMPN.
COMPA took 47 seconds under the same conditions. This means that the
breaking up of the 500 declarations into separate statements had a effect,
but it was not proportional to the number of statements. Nor was it even
proportional to the number of lines. This may be interpreted to indicate
that the exact formatting of declarations, while it may produce a
measureable difference in extreme cases, should not be significant for
the small differences that could be found between semantically identical
programs written by people with somewhat different style, or machine
formatted differently.
COMPD, with 506 lines, compiled somewhat slower (53 seconds) than COMPC,
which is compressed to 106 lines but otherwise identical. Again this
shows that extreme variations in format introduce much smaller
variations in compile time, for this compiler. Benchmark results
should certainly not be significant to the 10% level, and within
such limits the number of Ada statements should be the appropriate
measure of compiler performance, rather than "lines", and that measure
should be essentially independent of normal variations in formatting,
for this compiler.
COMPE introduced 500 lines of comments, doubling the "lines", into COMPD.
The time to compile was 64 seconds. If one took the 13 seconds for a
minimal program off, the relative times of the 500 statement program,
without and with the 500 comment lines, are 40 and 51 seconds, indicating
the relative time to process comments compared to the simplest statement.
COMPF compiled in 63 seconds, within measurement error of COMPE.
The grouping of comments had no effect.
COMPG was double COMPE and, after subtracting the minimal 13
seconds, its time of 115 seconds was exactly double (51 to 102), so
the expectation of linearity holds in this case. This was also a fairly
large Ada program as measured in "line of code" (which we would not do),
but the lines are very simple and short (half are short comments). It could
be used to compute an absolute maximum on the compile speed in lines per
minute. There is no way to avoid someone doing this, but the number has no
meaning in an absolute sense for comparing to real programs. Whether it is
of use in relative comparisions is problematic.
ACKER and SIEVE are very common elementary benchmarks which may have been
run in every possible language and on every machine in existance. They
are included to provide a very rough measure of the quality of code
generated by the compilers. While the purpose of the COMP benchmarks is
to measure compile-time properties, these simple measures of code
performance may provide some indication of how much effort goes into the
code generation. For the purposes of comparing with other languages,
all Ada exceptions have been suppressed with pragma SUPPRESS. This is
only advisory to the compiler and may or may not speed up the code.
Runs are with as bare a machine as possible.
ACKER computes the ACKERMANN function for (3, 6).
SIEVE is the BYTE benchmark, ten iterations of calculating the prime
numbers up to 16384 by the method of Eratosthes.
IMP is a program that contains the timing runs for ACKER and SIEVE
in addition to printing various information about the system. It
continually changes as it evolves and as the systems differ (does
it have LONG_FLOAT?) so it is not a regular benchmark. But for some
systems the compile "lines per minute" is recorded to compare with
the COMPG values. IMP is a simple, but by no means typical, program,
and there is no claim that it represents a good test.
--::::::::::
--jpmobnch.src
--::::::::::
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compa.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPA is
A0 : INTEGER;
A1 : INTEGER;
A2 : INTEGER;
A3 : INTEGER;
A4 : INTEGER;
A5 : INTEGER;
A6 : INTEGER;
A7 : INTEGER;
A8 : INTEGER;
A9 : INTEGER;
A10 : INTEGER;
A11 : INTEGER;
A12 : INTEGER;
A13 : INTEGER;
A14 : INTEGER;
A15 : INTEGER;
A16 : INTEGER;
A17 : INTEGER;
A18 : INTEGER;
A19 : INTEGER;
A20 : INTEGER;
A21 : INTEGER;
A22 : INTEGER;
A23 : INTEGER;
A24 : INTEGER;
A25 : INTEGER;
A26 : INTEGER;
A27 : INTEGER;
A28 : INTEGER;
A29 : INTEGER;
A30 : INTEGER;
A31 : INTEGER;
A32 : INTEGER;
A33 : INTEGER;
A34 : INTEGER;
A35 : INTEGER;
A36 : INTEGER;
A37 : INTEGER;
A38 : INTEGER;
A39 : INTEGER;
A40 : INTEGER;
A41 : INTEGER;
A42 : INTEGER;
A43 : INTEGER;
A44 : INTEGER;
A45 : INTEGER;
A46 : INTEGER;
A47 : INTEGER;
A48 : INTEGER;
A49 : INTEGER;
A50 : INTEGER;
A51 : INTEGER;
A52 : INTEGER;
A53 : INTEGER;
A54 : INTEGER;
A55 : INTEGER;
A56 : INTEGER;
A57 : INTEGER;
A58 : INTEGER;
A59 : INTEGER;
A60 : INTEGER;
A61 : INTEGER;
A62 : INTEGER;
A63 : INTEGER;
A64 : INTEGER;
A65 : INTEGER;
A66 : INTEGER;
A67 : INTEGER;
A68 : INTEGER;
A69 : INTEGER;
A70 : INTEGER;
A71 : INTEGER;
A72 : INTEGER;
A73 : INTEGER;
A74 : INTEGER;
A75 : INTEGER;
A76 : INTEGER;
A77 : INTEGER;
A78 : INTEGER;
A79 : INTEGER;
A80 : INTEGER;
A81 : INTEGER;
A82 : INTEGER;
A83 : INTEGER;
A84 : INTEGER;
A85 : INTEGER;
A86 : INTEGER;
A87 : INTEGER;
A88 : INTEGER;
A89 : INTEGER;
A90 : INTEGER;
A91 : INTEGER;
A92 : INTEGER;
A93 : INTEGER;
A94 : INTEGER;
A95 : INTEGER;
A96 : INTEGER;
A97 : INTEGER;
A98 : INTEGER;
A99 : INTEGER;
A100 : INTEGER;
A101 : INTEGER;
A102 : INTEGER;
A103 : INTEGER;
A104 : INTEGER;
A105 : INTEGER;
A106 : INTEGER;
A107 : INTEGER;
A108 : INTEGER;
A109 : INTEGER;
A110 : INTEGER;
A111 : INTEGER;
A112 : INTEGER;
A113 : INTEGER;
A114 : INTEGER;
A115 : INTEGER;
A116 : INTEGER;
A117 : INTEGER;
A118 : INTEGER;
A119 : INTEGER;
A120 : INTEGER;
A121 : INTEGER;
A122 : INTEGER;
A123 : INTEGER;
A124 : INTEGER;
A125 : INTEGER;
A126 : INTEGER;
A127 : INTEGER;
A128 : INTEGER;
A129 : INTEGER;
A130 : INTEGER;
A131 : INTEGER;
A132 : INTEGER;
A133 : INTEGER;
A134 : INTEGER;
A135 : INTEGER;
A136 : INTEGER;
A137 : INTEGER;
A138 : INTEGER;
A139 : INTEGER;
A140 : INTEGER;
A141 : INTEGER;
A142 : INTEGER;
A143 : INTEGER;
A144 : INTEGER;
A145 : INTEGER;
A146 : INTEGER;
A147 : INTEGER;
A148 : INTEGER;
A149 : INTEGER;
A150 : INTEGER;
A151 : INTEGER;
A152 : INTEGER;
A153 : INTEGER;
A154 : INTEGER;
A155 : INTEGER;
A156 : INTEGER;
A157 : INTEGER;
A158 : INTEGER;
A159 : INTEGER;
A160 : INTEGER;
A161 : INTEGER;
A162 : INTEGER;
A163 : INTEGER;
A164 : INTEGER;
A165 : INTEGER;
A166 : INTEGER;
A167 : INTEGER;
A168 : INTEGER;
A169 : INTEGER;
A170 : INTEGER;
A171 : INTEGER;
A172 : INTEGER;
A173 : INTEGER;
A174 : INTEGER;
A175 : INTEGER;
A176 : INTEGER;
A177 : INTEGER;
A178 : INTEGER;
A179 : INTEGER;
A180 : INTEGER;
A181 : INTEGER;
A182 : INTEGER;
A183 : INTEGER;
A184 : INTEGER;
A185 : INTEGER;
A186 : INTEGER;
A187 : INTEGER;
A188 : INTEGER;
A189 : INTEGER;
A190 : INTEGER;
A191 : INTEGER;
A192 : INTEGER;
A193 : INTEGER;
A194 : INTEGER;
A195 : INTEGER;
A196 : INTEGER;
A197 : INTEGER;
A198 : INTEGER;
A199 : INTEGER;
A200 : INTEGER;
A201 : INTEGER;
A202 : INTEGER;
A203 : INTEGER;
A204 : INTEGER;
A205 : INTEGER;
A206 : INTEGER;
A207 : INTEGER;
A208 : INTEGER;
A209 : INTEGER;
A210 : INTEGER;
A211 : INTEGER;
A212 : INTEGER;
A213 : INTEGER;
A214 : INTEGER;
A215 : INTEGER;
A216 : INTEGER;
A217 : INTEGER;
A218 : INTEGER;
A219 : INTEGER;
A220 : INTEGER;
A221 : INTEGER;
A222 : INTEGER;
A223 : INTEGER;
A224 : INTEGER;
A225 : INTEGER;
A226 : INTEGER;
A227 : INTEGER;
A228 : INTEGER;
A229 : INTEGER;
A230 : INTEGER;
A231 : INTEGER;
A232 : INTEGER;
A233 : INTEGER;
A234 : INTEGER;
A235 : INTEGER;
A236 : INTEGER;
A237 : INTEGER;
A238 : INTEGER;
A239 : INTEGER;
A240 : INTEGER;
A241 : INTEGER;
A242 : INTEGER;
A243 : INTEGER;
A244 : INTEGER;
A245 : INTEGER;
A246 : INTEGER;
A247 : INTEGER;
A248 : INTEGER;
A249 : INTEGER;
A250 : INTEGER;
A251 : INTEGER;
A252 : INTEGER;
A253 : INTEGER;
A254 : INTEGER;
A255 : INTEGER;
A256 : INTEGER;
A257 : INTEGER;
A258 : INTEGER;
A259 : INTEGER;
A260 : INTEGER;
A261 : INTEGER;
A262 : INTEGER;
A263 : INTEGER;
A264 : INTEGER;
A265 : INTEGER;
A266 : INTEGER;
A267 : INTEGER;
A268 : INTEGER;
A269 : INTEGER;
A270 : INTEGER;
A271 : INTEGER;
A272 : INTEGER;
A273 : INTEGER;
A274 : INTEGER;
A275 : INTEGER;
A276 : INTEGER;
A277 : INTEGER;
A278 : INTEGER;
A279 : INTEGER;
A280 : INTEGER;
A281 : INTEGER;
A282 : INTEGER;
A283 : INTEGER;
A284 : INTEGER;
A285 : INTEGER;
A286 : INTEGER;
A287 : INTEGER;
A288 : INTEGER;
A289 : INTEGER;
A290 : INTEGER;
A291 : INTEGER;
A292 : INTEGER;
A293 : INTEGER;
A294 : INTEGER;
A295 : INTEGER;
A296 : INTEGER;
A297 : INTEGER;
A298 : INTEGER;
A299 : INTEGER;
A300 : INTEGER;
A301 : INTEGER;
A302 : INTEGER;
A303 : INTEGER;
A304 : INTEGER;
A305 : INTEGER;
A306 : INTEGER;
A307 : INTEGER;
A308 : INTEGER;
A309 : INTEGER;
A310 : INTEGER;
A311 : INTEGER;
A312 : INTEGER;
A313 : INTEGER;
A314 : INTEGER;
A315 : INTEGER;
A316 : INTEGER;
A317 : INTEGER;
A318 : INTEGER;
A319 : INTEGER;
A320 : INTEGER;
A321 : INTEGER;
A322 : INTEGER;
A323 : INTEGER;
A324 : INTEGER;
A325 : INTEGER;
A326 : INTEGER;
A327 : INTEGER;
A328 : INTEGER;
A329 : INTEGER;
A330 : INTEGER;
A331 : INTEGER;
A332 : INTEGER;
A333 : INTEGER;
A334 : INTEGER;
A335 : INTEGER;
A336 : INTEGER;
A337 : INTEGER;
A338 : INTEGER;
A339 : INTEGER;
A340 : INTEGER;
A341 : INTEGER;
A342 : INTEGER;
A343 : INTEGER;
A344 : INTEGER;
A345 : INTEGER;
A346 : INTEGER;
A347 : INTEGER;
A348 : INTEGER;
A349 : INTEGER;
A350 : INTEGER;
A351 : INTEGER;
A352 : INTEGER;
A353 : INTEGER;
A354 : INTEGER;
A355 : INTEGER;
A356 : INTEGER;
A357 : INTEGER;
A358 : INTEGER;
A359 : INTEGER;
A360 : INTEGER;
A361 : INTEGER;
A362 : INTEGER;
A363 : INTEGER;
A364 : INTEGER;
A365 : INTEGER;
A366 : INTEGER;
A367 : INTEGER;
A368 : INTEGER;
A369 : INTEGER;
A370 : INTEGER;
A371 : INTEGER;
A372 : INTEGER;
A373 : INTEGER;
A374 : INTEGER;
A375 : INTEGER;
A376 : INTEGER;
A377 : INTEGER;
A378 : INTEGER;
A379 : INTEGER;
A380 : INTEGER;
A381 : INTEGER;
A382 : INTEGER;
A383 : INTEGER;
A384 : INTEGER;
A385 : INTEGER;
A386 : INTEGER;
A387 : INTEGER;
A388 : INTEGER;
A389 : INTEGER;
A390 : INTEGER;
A391 : INTEGER;
A392 : INTEGER;
A393 : INTEGER;
A394 : INTEGER;
A395 : INTEGER;
A396 : INTEGER;
A397 : INTEGER;
A398 : INTEGER;
A399 : INTEGER;
A400 : INTEGER;
A401 : INTEGER;
A402 : INTEGER;
A403 : INTEGER;
A404 : INTEGER;
A405 : INTEGER;
A406 : INTEGER;
A407 : INTEGER;
A408 : INTEGER;
A409 : INTEGER;
A410 : INTEGER;
A411 : INTEGER;
A412 : INTEGER;
A413 : INTEGER;
A414 : INTEGER;
A415 : INTEGER;
A416 : INTEGER;
A417 : INTEGER;
A418 : INTEGER;
A419 : INTEGER;
A420 : INTEGER;
A421 : INTEGER;
A422 : INTEGER;
A423 : INTEGER;
A424 : INTEGER;
A425 : INTEGER;
A426 : INTEGER;
A427 : INTEGER;
A428 : INTEGER;
A429 : INTEGER;
A430 : INTEGER;
A431 : INTEGER;
A432 : INTEGER;
A433 : INTEGER;
A434 : INTEGER;
A435 : INTEGER;
A436 : INTEGER;
A437 : INTEGER;
A438 : INTEGER;
A439 : INTEGER;
A440 : INTEGER;
A441 : INTEGER;
A442 : INTEGER;
A443 : INTEGER;
A444 : INTEGER;
A445 : INTEGER;
A446 : INTEGER;
A447 : INTEGER;
A448 : INTEGER;
A449 : INTEGER;
A450 : INTEGER;
A451 : INTEGER;
A452 : INTEGER;
A453 : INTEGER;
A454 : INTEGER;
A455 : INTEGER;
A456 : INTEGER;
A457 : INTEGER;
A458 : INTEGER;
A459 : INTEGER;
A460 : INTEGER;
A461 : INTEGER;
A462 : INTEGER;
A463 : INTEGER;
A464 : INTEGER;
A465 : INTEGER;
A466 : INTEGER;
A467 : INTEGER;
A468 : INTEGER;
A469 : INTEGER;
A470 : INTEGER;
A471 : INTEGER;
A472 : INTEGER;
A473 : INTEGER;
A474 : INTEGER;
A475 : INTEGER;
A476 : INTEGER;
A477 : INTEGER;
A478 : INTEGER;
A479 : INTEGER;
A480 : INTEGER;
A481 : INTEGER;
A482 : INTEGER;
A483 : INTEGER;
A484 : INTEGER;
A485 : INTEGER;
A486 : INTEGER;
A487 : INTEGER;
A488 : INTEGER;
A489 : INTEGER;
A490 : INTEGER;
A491 : INTEGER;
A492 : INTEGER;
A493 : INTEGER;
A494 : INTEGER;
A495 : INTEGER;
A496 : INTEGER;
A497 : INTEGER;
A498 : INTEGER;
A499 : INTEGER;
begin
A499 := 0;
end COMPA;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compb.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPB is
A0, A1, A2, A3, A4, A5, A6, A7, A8, A9,
A10, A11, A12, A13, A14, A15, A16, A17, A18, A19,
A20, A21, A22, A23, A24, A25, A26, A27, A28, A29,
A30, A31, A32, A33, A34, A35, A36, A37, A38, A39,
A40, A41, A42, A43, A44, A45, A46, A47, A48, A49,
A50, A51, A52, A53, A54, A55, A56, A57, A58, A59,
A60, A61, A62, A63, A64, A65, A66, A67, A68, A69,
A70, A71, A72, A73, A74, A75, A76, A77, A78, A79,
A80, A81, A82, A83, A84, A85, A86, A87, A88, A89,
A90, A91, A92, A93, A94, A95, A96, A97, A98, A99,
A100, A101, A102, A103, A104, A105, A106, A107, A108, A109,
A110, A111, A112, A113, A114, A115, A116, A117, A118, A119,
A120, A121, A122, A123, A124, A125, A126, A127, A128, A129,
A130, A131, A132, A133, A134, A135, A136, A137, A138, A139,
A140, A141, A142, A143, A144, A145, A146, A147, A148, A149,
A150, A151, A152, A153, A154, A155, A156, A157, A158, A159,
A160, A161, A162, A163, A164, A165, A166, A167, A168, A169,
A170, A171, A172, A173, A174, A175, A176, A177, A178, A179,
A180, A181, A182, A183, A184, A185, A186, A187, A188, A189,
A190, A191, A192, A193, A194, A195, A196, A197, A198, A199,
A200, A201, A202, A203, A204, A205, A206, A207, A208, A209,
A210, A211, A212, A213, A214, A215, A216, A217, A218, A219,
A220, A221, A222, A223, A224, A225, A226, A227, A228, A229,
A230, A231, A232, A233, A234, A235, A236, A237, A238, A239,
A240, A241, A242, A243, A244, A245, A246, A247, A248, A249,
A250, A251, A252, A253, A254, A255, A256, A257, A258, A259,
A260, A261, A262, A263, A264, A265, A266, A267, A268, A269,
A270, A271, A272, A273, A274, A275, A276, A277, A278, A279,
A280, A281, A282, A283, A284, A285, A286, A287, A288, A289,
A290, A291, A292, A293, A294, A295, A296, A297, A298, A299,
A300, A301, A302, A303, A304, A305, A306, A307, A308, A309,
A310, A311, A312, A313, A314, A315, A316, A317, A318, A319,
A320, A321, A322, A323, A324, A325, A326, A327, A328, A329,
A330, A331, A332, A333, A334, A335, A336, A337, A338, A339,
A340, A341, A342, A343, A344, A345, A346, A347, A348, A349,
A350, A351, A352, A353, A354, A355, A356, A357, A358, A359,
A360, A361, A362, A363, A364, A365, A366, A367, A368, A369,
A370, A371, A372, A373, A374, A375, A376, A377, A378, A379,
A380, A381, A382, A383, A384, A385, A386, A387, A388, A389,
A390, A391, A392, A393, A394, A395, A396, A397, A398, A399,
A400, A401, A402, A403, A404, A405, A406, A407, A408, A409,
A410, A411, A412, A413, A414, A415, A416, A417, A418, A419,
A420, A421, A422, A423, A424, A425, A426, A427, A428, A429,
A430, A431, A432, A433, A434, A435, A436, A437, A438, A439,
A440, A441, A442, A443, A444, A445, A446, A447, A448, A449,
A450, A451, A452, A453, A454, A455, A456, A457, A458, A459,
A460, A461, A462, A463, A464, A465, A466, A467, A468, A469,
A470, A471, A472, A473, A474, A475, A476, A477, A478, A479,
A480, A481, A482, A483, A484, A485, A486, A487, A488, A489,
A490, A491, A492, A493, A494, A495, A496, A497, A498, A499 : INTEGER;
begin
A499 := 0;
end COMPB;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compc.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPC is
A, B, C : INTEGER := 0;
begin
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
B := A; C := B; A:= B; C := A; B := C;
end COMPC;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compd.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPD is
A, B, C : INTEGER := 0;
begin
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
end COMPD;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compe.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPE is
A, B, C : INTEGER := 0;
begin
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
end COMPE;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compf.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPF is
A, B, C : INTEGER := 0;
begin
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
-- COMMENT
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
B := A;
C := B;
A := B;
C := A;
B := C;
end COMPF;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compg.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPG is
A, B, C : INTEGER := 0;
begin
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
-- COMMENT
B := A;
-- COMMENT
C := B;
-- COMMENT
A := B;
-- COMMENT
C := A;
-- COMMENT
B := C;
end COMPG;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK is
package COMPK1 is
function K1 return INTEGER;
end COMPK1;
package COMPK2 is
function K2 return INTEGER;
end COMPK2;
package COMPK3 is
function K3 return INTEGER;
end COMPK3;
package COMPK4 is
function K4 return INTEGER;
end COMPK4;
package COMPK5 is
function K5 return INTEGER;
end COMPK5;
package COMPK6 is
function K6 return INTEGER;
end COMPK6;
package COMPK7 is
function K7 return INTEGER;
end COMPK7;
package COMPK8 is
function K8 return INTEGER;
end COMPK8;
package COMPK9 is
function K9 return INTEGER;
end COMPK9;
package COMPK10 is
function K10 return INTEGER;
end COMPK10;
package COMPK11 is
function K11 return INTEGER;
end COMPK11;
package COMPK12 is
function K12 return INTEGER;
end COMPK12;
package COMPK13 is
function K13 return INTEGER;
end COMPK13;
package COMPK14 is
function K14 return INTEGER;
end COMPK14;
package COMPK15 is
function K15 return INTEGER;
end COMPK15;
package COMPK16 is
function K16 return INTEGER;
end COMPK16;
package COMPK17 is
function K17 return INTEGER;
end COMPK17;
package COMPK18 is
function K18 return INTEGER;
end COMPK18;
package COMPK19 is
function K19 return INTEGER;
end COMPK19;
package COMPK20 is
function K20 return INTEGER;
end COMPK20;
package COMPK21 is
function K21 return INTEGER;
end COMPK21;
package COMPK22 is
function K22 return INTEGER;
end COMPK22;
package COMPK23 is
function K23 return INTEGER;
end COMPK23;
package COMPK24 is
function K24 return INTEGER;
end COMPK24;
package COMPK25 is
function K25 return INTEGER;
end COMPK25;
end COMPK;
package body COMPK is
package body COMPK1 is
function K1 return INTEGER is
begin
return 1;
end K1;
end COMPK1;
package body COMPK2 is
function K2 return INTEGER is
begin
return 2;
end K2;
end COMPK2;
package body COMPK3 is
function K3 return INTEGER is
begin
return 3;
end K3;
end COMPK3;
package body COMPK4 is
function K4 return INTEGER is
begin
return 4;
end K4;
end COMPK4;
package body COMPK5 is
function K5 return INTEGER is
begin
return 5;
end K5;
end COMPK5;
package body COMPK6 is
function K6 return INTEGER is
begin
return 6;
end K6;
end COMPK6;
package body COMPK7 is
function K7 return INTEGER is
begin
return 7;
end K7;
end COMPK7;
package body COMPK8 is
function K8 return INTEGER is
begin
return 8;
end K8;
end COMPK8;
package body COMPK9 is
function K9 return INTEGER is
begin
return 9;
end K9;
end COMPK9;
package body COMPK10 is
function K10 return INTEGER is
begin
return 10;
end K10;
end COMPK10;
package body COMPK11 is
function K11 return INTEGER is
begin
return 11;
end K11;
end COMPK11;
package body COMPK12 is
function K12 return INTEGER is
begin
return 12;
end K12;
end COMPK12;
package body COMPK13 is
function K13 return INTEGER is
begin
return 13;
end K13;
end COMPK13;
package body COMPK14 is
function K14 return INTEGER is
begin
return 14;
end K14;
end COMPK14;
package body COMPK15 is
function K15 return INTEGER is
begin
return 15;
end K15;
end COMPK15;
package body COMPK16 is
function K16 return INTEGER is
begin
return 16;
end K16;
end COMPK16;
package body COMPK17 is
function K17 return INTEGER is
begin
return 17;
end K17;
end COMPK17;
package body COMPK18 is
function K18 return INTEGER is
begin
return 18;
end K18;
end COMPK18;
package body COMPK19 is
function K19 return INTEGER is
begin
return 19;
end K19;
end COMPK19;
package body COMPK20 is
function K20 return INTEGER is
begin
return 20;
end K20;
end COMPK20;
package body COMPK21 is
function K21 return INTEGER is
begin
return 21;
end K21;
end COMPK21;
package body COMPK22 is
function K22 return INTEGER is
begin
return 22;
end K22;
end COMPK22;
package body COMPK23 is
function K23 return INTEGER is
begin
return 23;
end K23;
end COMPK23;
package body COMPK24 is
function K24 return INTEGER is
begin
return 24;
end K24;
end COMPK24;
package body COMPK25 is
function K25 return INTEGER is
begin
return 25;
end K25;
end COMPK25;
end COMPK;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk1.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK1 is
function K1 return INTEGER;
end COMPK1;
package body COMPK1 is
function K1 return INTEGER is
begin
return 1;
end K1;
end COMPK1;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk2.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK2 is
function K2 return INTEGER;
end COMPK2;
package body COMPK2 is
function K2 return INTEGER is
begin
return 2;
end K2;
end COMPK2;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk3.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK3 is
function K3 return INTEGER;
end COMPK3;
package body COMPK3 is
function K3 return INTEGER is
begin
return 3;
end K3;
end COMPK3;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk4.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK4 is
function K4 return INTEGER;
end COMPK4;
package body COMPK4 is
function K4 return INTEGER is
begin
return 4;
end K4;
end COMPK4;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk5.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK5 is
function K5 return INTEGER;
end COMPK5;
package body COMPK5 is
function K5 return INTEGER is
begin
return 5;
end K5;
end COMPK5;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk6.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK6 is
function K6 return INTEGER;
end COMPK6;
package body COMPK6 is
function K6 return INTEGER is
begin
return 6;
end K6;
end COMPK6;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk7.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK7 is
function K7 return INTEGER;
end COMPK7;
package body COMPK7 is
function K7 return INTEGER is
begin
return 7;
end K7;
end COMPK7;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk8.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK8 is
function K8 return INTEGER;
end COMPK8;
package body COMPK8 is
function K8 return INTEGER is
begin
return 8;
end K8;
end COMPK8;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk9.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK9 is
function K9 return INTEGER;
end COMPK9;
package body COMPK9 is
function K9 return INTEGER is
begin
return 9;
end K9;
end COMPK9;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk10.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK10 is
function K10 return INTEGER;
end COMPK10;
package body COMPK10 is
function K10 return INTEGER is
begin
return 10;
end K10;
end COMPK10;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk11.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK11 is
function K11 return INTEGER;
end COMPK11;
package body COMPK11 is
function K11 return INTEGER is
begin
return 11;
end K11;
end COMPK11;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk12.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK12 is
function K12 return INTEGER;
end COMPK12;
package body COMPK12 is
function K12 return INTEGER is
begin
return 12;
end K12;
end COMPK12;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk13.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK13 is
function K13 return INTEGER;
end COMPK13;
package body COMPK13 is
function K13 return INTEGER is
begin
return 13;
end K13;
end COMPK13;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk14.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK14 is
function K14 return INTEGER;
end COMPK14;
package body COMPK14 is
function K14 return INTEGER is
begin
return 14;
end K14;
end COMPK14;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk15.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK15 is
function K15 return INTEGER;
end COMPK15;
package body COMPK15 is
function K15 return INTEGER is
begin
return 15;
end K15;
end COMPK15;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk16.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK16 is
function K16 return INTEGER;
end COMPK16;
package body COMPK16 is
function K16 return INTEGER is
begin
return 16;
end K16;
end COMPK16;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk17.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK17 is
function K17 return INTEGER;
end COMPK17;
package body COMPK17 is
function K17 return INTEGER is
begin
return 17;
end K17;
end COMPK17;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk18.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK18 is
function K18 return INTEGER;
end COMPK18;
package body COMPK18 is
function K18 return INTEGER is
begin
return 18;
end K18;
end COMPK18;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk19.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK19 is
function K19 return INTEGER;
end COMPK19;
package body COMPK19 is
function K19 return INTEGER is
begin
return 19;
end K19;
end COMPK19;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk20.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK20 is
function K20 return INTEGER;
end COMPK20;
package body COMPK20 is
function K20 return INTEGER is
begin
return 20;
end K20;
end COMPK20;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk21.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK21 is
function K21 return INTEGER;
end COMPK21;
package body COMPK21 is
function K21 return INTEGER is
begin
return 21;
end K21;
end COMPK21;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk22.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK22 is
function K22 return INTEGER;
end COMPK22;
package body COMPK22 is
function K22 return INTEGER is
begin
return 22;
end K22;
end COMPK22;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk23.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK23 is
function K23 return INTEGER;
end COMPK23;
package body COMPK23 is
function K23 return INTEGER is
begin
return 23;
end K23;
end COMPK23;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk24.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK24 is
function K24 return INTEGER;
end COMPK24;
package body COMPK24 is
function K24 return INTEGER is
begin
return 24;
end K24;
end COMPK24;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk25.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK25 is
function K25 return INTEGER;
end COMPK25;
package body COMPK25 is
function K25 return INTEGER is
begin
return 25;
end K25;
end COMPK25;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compk50.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
package COMPK is
package COMPK1 is
function K1 return INTEGER;
end COMPK1;
package COMPK2 is
function K2 return INTEGER;
end COMPK2;
package COMPK3 is
function K3 return INTEGER;
end COMPK3;
package COMPK4 is
function K4 return INTEGER;
end COMPK4;
package COMPK5 is
function K5 return INTEGER;
end COMPK5;
package COMPK6 is
function K6 return INTEGER;
end COMPK6;
package COMPK7 is
function K7 return INTEGER;
end COMPK7;
package COMPK8 is
function K8 return INTEGER;
end COMPK8;
package COMPK9 is
function K9 return INTEGER;
end COMPK9;
package COMPK10 is
function K10 return INTEGER;
end COMPK10;
package COMPK11 is
function K11 return INTEGER;
end COMPK11;
package COMPK12 is
function K12 return INTEGER;
end COMPK12;
package COMPK13 is
function K13 return INTEGER;
end COMPK13;
package COMPK14 is
function K14 return INTEGER;
end COMPK14;
package COMPK15 is
function K15 return INTEGER;
end COMPK15;
package COMPK16 is
function K16 return INTEGER;
end COMPK16;
package COMPK17 is
function K17 return INTEGER;
end COMPK17;
package COMPK18 is
function K18 return INTEGER;
end COMPK18;
package COMPK19 is
function K19 return INTEGER;
end COMPK19;
package COMPK20 is
function K20 return INTEGER;
end COMPK20;
package COMPK21 is
function K21 return INTEGER;
end COMPK21;
package COMPK22 is
function K22 return INTEGER;
end COMPK22;
package COMPK23 is
function K23 return INTEGER;
end COMPK23;
package COMPK24 is
function K24 return INTEGER;
end COMPK24;
package COMPK25 is
function K25 return INTEGER;
end COMPK25;
package COMPK26 is
function K26 return INTEGER;
end COMPK26;
package COMPK27 is
function K27 return INTEGER;
end COMPK27;
package COMPK28 is
function K28 return INTEGER;
end COMPK28;
package COMPK29 is
function K29 return INTEGER;
end COMPK29;
package COMPK30 is
function K30 return INTEGER;
end COMPK30;
package COMPK31 is
function K31 return INTEGER;
end COMPK31;
package COMPK32 is
function K32 return INTEGER;
end COMPK32;
package COMPK33 is
function K33 return INTEGER;
end COMPK33;
package COMPK34 is
function K34 return INTEGER;
end COMPK34;
package COMPK35 is
function K35 return INTEGER;
end COMPK35;
package COMPK36 is
function K36 return INTEGER;
end COMPK36;
package COMPK37 is
function K37 return INTEGER;
end COMPK37;
package COMPK38 is
function K38 return INTEGER;
end COMPK38;
package COMPK39 is
function K39 return INTEGER;
end COMPK39;
package COMPK40 is
function K40 return INTEGER;
end COMPK40;
package COMPK41 is
function K41 return INTEGER;
end COMPK41;
package COMPK42 is
function K42 return INTEGER;
end COMPK42;
package COMPK43 is
function K43 return INTEGER;
end COMPK43;
package COMPK44 is
function K44 return INTEGER;
end COMPK44;
package COMPK45 is
function K45 return INTEGER;
end COMPK45;
package COMPK46 is
function K46 return INTEGER;
end COMPK46;
package COMPK47 is
function K47 return INTEGER;
end COMPK47;
package COMPK48 is
function K48 return INTEGER;
end COMPK48;
package COMPK49 is
function K49 return INTEGER;
end COMPK49;
package COMPK50 is
function K50 return INTEGER;
end COMPK50;
end COMPK;
package body COMPK is
package body COMPK1 is
function K1 return INTEGER is
begin
return 1;
end K1;
end COMPK1;
package body COMPK2 is
function K2 return INTEGER is
begin
return 2;
end K2;
end COMPK2;
package body COMPK3 is
function K3 return INTEGER is
begin
return 3;
end K3;
end COMPK3;
package body COMPK4 is
function K4 return INTEGER is
begin
return 4;
end K4;
end COMPK4;
package body COMPK5 is
function K5 return INTEGER is
begin
return 5;
end K5;
end COMPK5;
package body COMPK6 is
function K6 return INTEGER is
begin
return 6;
end K6;
end COMPK6;
package body COMPK7 is
function K7 return INTEGER is
begin
return 7;
end K7;
end COMPK7;
package body COMPK8 is
function K8 return INTEGER is
begin
return 8;
end K8;
end COMPK8;
package body COMPK9 is
function K9 return INTEGER is
begin
return 9;
end K9;
end COMPK9;
package body COMPK10 is
function K10 return INTEGER is
begin
return 10;
end K10;
end COMPK10;
package body COMPK11 is
function K11 return INTEGER is
begin
return 11;
end K11;
end COMPK11;
package body COMPK12 is
function K12 return INTEGER is
begin
return 12;
end K12;
end COMPK12;
package body COMPK13 is
function K13 return INTEGER is
begin
return 13;
end K13;
end COMPK13;
package body COMPK14 is
function K14 return INTEGER is
begin
return 14;
end K14;
end COMPK14;
package body COMPK15 is
function K15 return INTEGER is
begin
return 15;
end K15;
end COMPK15;
package body COMPK16 is
function K16 return INTEGER is
begin
return 16;
end K16;
end COMPK16;
package body COMPK17 is
function K17 return INTEGER is
begin
return 17;
end K17;
end COMPK17;
package body COMPK18 is
function K18 return INTEGER is
begin
return 18;
end K18;
end COMPK18;
package body COMPK19 is
function K19 return INTEGER is
begin
return 19;
end K19;
end COMPK19;
package body COMPK20 is
function K20 return INTEGER is
begin
return 20;
end K20;
end COMPK20;
package body COMPK21 is
function K21 return INTEGER is
begin
return 21;
end K21;
end COMPK21;
package body COMPK22 is
function K22 return INTEGER is
begin
return 22;
end K22;
end COMPK22;
package body COMPK23 is
function K23 return INTEGER is
begin
return 23;
end K23;
end COMPK23;
package body COMPK24 is
function K24 return INTEGER is
begin
return 24;
end K24;
end COMPK24;
package body COMPK25 is
function K25 return INTEGER is
begin
return 25;
end K25;
end COMPK25;
package body COMPK26 is
function K26 return INTEGER is
begin
return 26;
end K26;
end COMPK26;
package body COMPK27 is
function K27 return INTEGER is
begin
return 27;
end K27;
end COMPK27;
package body COMPK28 is
function K28 return INTEGER is
begin
return 28;
end K28;
end COMPK28;
package body COMPK29 is
function K29 return INTEGER is
begin
return 29;
end K29;
end COMPK29;
package body COMPK30 is
function K30 return INTEGER is
begin
return 30;
end K30;
end COMPK30;
package body COMPK31 is
function K31 return INTEGER is
begin
return 31;
end K31;
end COMPK31;
package body COMPK32 is
function K32 return INTEGER is
begin
return 32;
end K32;
end COMPK32;
package body COMPK33 is
function K33 return INTEGER is
begin
return 33;
end K33;
end COMPK33;
package body COMPK34 is
function K34 return INTEGER is
begin
return 34;
end K34;
end COMPK34;
package body COMPK35 is
function K35 return INTEGER is
begin
return 35;
end K35;
end COMPK35;
package body COMPK36 is
function K36 return INTEGER is
begin
return 36;
end K36;
end COMPK36;
package body COMPK37 is
function K37 return INTEGER is
begin
return 37;
end K37;
end COMPK37;
package body COMPK38 is
function K38 return INTEGER is
begin
return 38;
end K38;
end COMPK38;
package body COMPK39 is
function K39 return INTEGER is
begin
return 39;
end K39;
end COMPK39;
package body COMPK40 is
function K40 return INTEGER is
begin
return 40;
end K40;
end COMPK40;
package body COMPK41 is
function K41 return INTEGER is
begin
return 41;
end K41;
end COMPK41;
package body COMPK42 is
function K42 return INTEGER is
begin
return 42;
end K42;
end COMPK42;
package body COMPK43 is
function K43 return INTEGER is
begin
return 43;
end K43;
end COMPK43;
package body COMPK44 is
function K44 return INTEGER is
begin
return 44;
end K44;
end COMPK44;
package body COMPK45 is
function K45 return INTEGER is
begin
return 45;
end K45;
end COMPK45;
package body COMPK46 is
function K46 return INTEGER is
begin
return 46;
end K46;
end COMPK46;
package body COMPK47 is
function K47 return INTEGER is
begin
return 47;
end K47;
end COMPK47;
package body COMPK48 is
function K48 return INTEGER is
begin
return 48;
end K48;
end COMPK48;
package body COMPK49 is
function K49 return INTEGER is
begin
return 49;
end K49;
end COMPK49;
package body COMPK50 is
function K50 return INTEGER is
begin
return 50;
end K50;
end COMPK50;
end COMPK;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compl.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
with COMPK; use COMPK;
procedure COMPL is
L : INTEGER;
begin
L :=
COMPK1.K1 + COMPK2.K2 + COMPK3.K3 + COMPK4.K4 + COMPK5.K5
+ COMPK6.K6 + COMPK7.K7 + COMPK8.K8 + COMPK9.K9 + COMPK10.K10
+ COMPK11.K11 + COMPK12.K12 + COMPK13.K13 + COMPK14.K14 + COMPK15.K15
+ COMPK16.K16 + COMPK17.K17 + COMPK18.K18 + COMPK19.K19 + COMPK20.K20
+ COMPK21.K21 + COMPK22.K22 + COMPK23.K23 + COMPK24.K24 + COMPK25.K25 ;
end COMPL;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compm.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
with COMPK1, COMPK2, COMPK3, COMPK4, COMPK5,
COMPK6, COMPK7, COMPK8, COMPK9, COMPK10,
COMPK11, COMPK12, COMPK13, COMPK14, COMPK15,
COMPK16, COMPK17, COMPK18, COMPK19, COMPK20,
COMPK21, COMPK22, COMPK23, COMPK24, COMPK25 ;
procedure COMPM is
L : INTEGER;
begin
L :=
COMPK1.K1 + COMPK2.K2 + COMPK3.K3 + COMPK4.K4 + COMPK5.K5
+ COMPK6.K6 + COMPK7.K7 + COMPK8.K8 + COMPK9.K9 + COMPK10.K10
+ COMPK11.K11 + COMPK12.K12 + COMPK13.K13 + COMPK14.K14 + COMPK15.K15
+ COMPK16.K16 + COMPK17.K17 + COMPK18.K18 + COMPK19.K19 + COMPK20.K20
+ COMPK21.K21 + COMPK22.K22 + COMPK23.K23 + COMPK24.K24 + COMPK25.K25 ;
end COMPM;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compm50.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
with COMPK1, COMPK2, COMPK3, COMPK4, COMPK5,
COMPK6, COMPK7, COMPK8, COMPK9, COMPK10,
COMPK11, COMPK12, COMPK13, COMPK14, COMPK15,
COMPK16, COMPK17, COMPK18, COMPK19, COMPK20,
COMPK21, COMPK22, COMPK23, COMPK24, COMPK25,
COMPK26, COMPK27, COMPK28, COMPK29, COMPK30,
COMPK31, COMPK32, COMPK33, COMPK34, COMPK35,
COMPK36, COMPK37, COMPK38, COMPK39, COMPK40,
COMPK41, COMPK42, COMPK43, COMPK44, COMPK45,
COMPK46, COMPK47, COMPK48, COMPK49, COMPK50 ;
procedure COMPM is
L : INTEGER;
begin
L :=
COMPK1.K1 + COMPK2.K2 + COMPK3.K3 + COMPK4.K4 + COMPK5.K5 +
COMPK6.K6 + COMPK7.K7 + COMPK8.K8 + COMPK9.K9 + COMPK10.K10 +
COMPK11.K11 + COMPK12.K12 + COMPK13.K13 + COMPK14.K14 + COMPK15.K15 +
COMPK16.K16 + COMPK17.K17 + COMPK18.K18 + COMPK19.K19 + COMPK20.K20 +
COMPK21.K21 + COMPK22.K22 + COMPK23.K23 + COMPK24.K24 + COMPK25.K25 +
COMPK26.K26 + COMPK27.K27 + COMPK28.K28 + COMPK29.K29 + COMPK30.K30 +
COMPK31.K31 + COMPK32.K32 + COMPK33.K33 + COMPK34.K34 + COMPK35.K35 +
COMPK36.K36 + COMPK37.K37 + COMPK38.K38 + COMPK39.K39 + COMPK40.K40 +
COMPK41.K41 + COMPK42.K42 + COMPK43.K43 + COMPK44.K44 + COMPK45.K45 +
COMPK46.K46 + COMPK47.K47 + COMPK48.K48 + COMPK49.K49 + COMPK50.K50 ;
end COMPM;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compn.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPN is
begin
null;
end COMPN;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compt.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
with TEXT_IO; use TEXT_IO;
procedure COMPT is
A : INTEGER;
begin
A := 0;
end COMPT;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--compz.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
procedure COMPZ is
A : INTEGER;
begin
A := 0;
end COMPZ;
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--imp.txt
--::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
with TEXT_IO;
with CALENDAR; use CALENDAR;
with SYSTEM;
with DIRECT_IO;
procedure IMP is
package INTEGER_IO is new TEXT_IO.INTEGER_IO(INTEGER);
package FLOAT_IO is new TEXT_IO.FLOAT_IO(FLOAT);
use TEXT_IO;
use INTEGER_IO;
use FLOAT_IO;
pragma SUPPRESS(ACCESS_CHECK);
pragma SUPPRESS(DISCRIMINANT_CHECK);
pragma SUPPRESS(INDEX_CHECK);
pragma SUPPRESS(LENGTH_CHECK);
pragma SUPPRESS(RANGE_CHECK);
pragma SUPPRESS(DIVISION_CHECK);
pragma SUPPRESS(OVERFLOW_CHECK);
pragma SUPPRESS(STORAGE_CHECK);
MACHINE_SPEED : constant FLOAT := 1.0;
procedure GOOD is
begin
PUT("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ");
end GOOD;
procedure BAD is
begin
PUT("#################################### ");
end BAD;
procedure IMPLEMENTATION_DEFINITIONS is
--LONG_INTEGER_IO is new TEXT_IO.INTEGER_IO(LONG_INTEGER);
--LONG_FLOAT_IO is new TEXT_IO.FLOAT_IO(LONG_FLOAT);
package BOOLEAN_IO is new TEXT_IO.ENUMERATION_IO(BOOLEAN); use BOOLEAN_IO;
--use LONG_INTEGER_IO;
--use LONG_FLOAT_IO;
begin
PACKAGE_SYSTEM_PARAMETERS:
begin
PUT("PACKAGE SYSTEM:"); NEW_LINE; NEW_LINE;
PUT("SYSTEM.STORAGE_UNIT "); PUT(SYSTEM.STORAGE_UNIT); NEW_LINE;
PUT("SYSTEM.MEMORY_SIZE "); PUT(SYSTEM.MEMORY_SIZE); NEW_LINE;
PUT("SYSTEM.MIN_INT "); PUT(SYSTEM.MIN_INT); NEW_LINE;
PUT("SYSTEM.MAX_INT "); PUT(SYSTEM.MAX_INT); NEW_LINE;
if SYSTEM.MAX_DIGITS < 7 then BAD; end if;
PUT("SYSTEM.MAX_DIGITS "); PUT(SYSTEM.MAX_DIGITS); NEW_LINE;
if SYSTEM.FINE_DELTA < 0.001 then GOOD; end if;
PUT("SYSTEM.FINE_DELTA "); PUT(SYSTEM.FINE_DELTA); NEW_LINE;
PUT("SYSTEM.TICK "); PUT(SYSTEM.TICK); NEW_LINE;
NEW_LINE; NEW_LINE;
end PACKAGE_SYSTEM_PARAMETERS;
STANDARD:
begin
PUT("STANDARD:"); NEW_LINE; NEW_LINE;
--PUT("SHORT_INTEGER is range "); PUT(SHORT_INTEGER'FIRST);
--PUT(".."); PUT(SHORT_INTEGER'LAST); NEW_LINE;
if FLOAT(INTEGER'LAST) < 2.0E6 then BAD; end if;
PUT("INTEGER is range "); PUT(INTEGER'FIRST);
PUT(".."); PUT(INTEGER'LAST); NEW_LINE;
--PUT("LONG_INTEGER is range "); PUT(LONG_INTEGER'FIRST);
--PUT(".."); PUT(LONG_INTEGER'LAST); NEW_LINE;
PUT("DURATION'DELTA = "); PUT(FLOAT(DURATION'DELTA)); NEW_LINE;
PUT("DURATION'SMALL = "); PUT(FLOAT(DURATION'SMALL)); NEW_LINE;
NEW_LINE; NEW_LINE;
end STANDARD;
GENERAL_ATTRIBUTES:
begin
PUT("GENERAL ATTRIBUTES:"); NEW_LINE; NEW_LINE;
if FLOAT'MACHINE_ROUNDS = FALSE then BAD; end if;
PUT("FLOAT'MACHINE_ROUNDS = "); PUT(FLOAT'MACHINE_ROUNDS); NEW_LINE;
NEW_LINE; NEW_LINE;
end GENERAL_ATTRIBUTES;
CHAPTER_14:
begin
PUT("CHAPTER 14:"); NEW_LINE; NEW_LINE;
if FLOAT(DIRECT_IO.COUNT'LAST) < 2.0E6 then BAD; end if;
PUT("DIRECT_IO.COUNT'LAST "); PUT(DIRECT_IO.COUNT'LAST); NEW_LINE;
PUT("TEXT_IO.COUNT'LAST "); PUT(TEXT_IO.COUNT'LAST); NEW_LINE;
PUT("TEXT_IO.FIELD'LAST "); PUT(TEXT_IO.FIELD'LAST); NEW_LINE;
NEW_LINE; NEW_LINE;
end CHAPTER_14;
end IMPLEMENTATION_DEFINITIONS;
procedure CHARACTERISTICS_OF_MACHINE_FLOAT is
subtype NUMBER is FLOAT;
IBETA : INTEGER;
-- The radix of the floating-point representation
IT : INTEGER;
-- The number of base IBETA digits in the NUMBER significand
IRND : INTEGER;
-- TRUE (1) if floating addition rounds, FALSE (0) if truncates
NGRD : INTEGER;
-- Number of guard digits for multiplication
MACHEP : INTEGER;
-- The largest negative integer
NEGEP : INTEGER;
-- The largest negative integer such that
-- 1.0 + NUMBER(IBETA) ** MACHEP /= 1.0
-- except that MACHEP is bounded below by -(IT + 3)
IEXP : INTEGER;
-- The number of bits (decimal places if IBETA = 10)
-- reserved for the representation of the exponent (including
-- the bias or sign) of a floating-point number
MINEXP : INTEGER;
-- The largest in magnitude negative integer such that
-- NUMBER(IBETA) ** M is a positive floating-point number
MAXEXP : INTEGER;
-- The largest positive exponent for a finite floating-point number
EPS : NUMBER;
-- The smallest positive floating-point number such that
-- 1.0 + EPS /= 1.0
-- In particular, if IBETA = 2 or IRND = 0,
-- EPS = NUMBER(IBETA) ** MACHEP
-- Otherwise, EPS = (NUMBER(IBETA) ** MACHEP) / 2
EPSNEG : NUMBER;
-- A small positive floating-point number such that 1.0-EPSNEG /= 1.0 XMIN : NUMBER;
-- The smallest non-vanishing floating-point power of the radix
-- In particular, XMIN = NUMBER(IBETA) ** MAXEXP
XMIN : NUMBER;
-- The smallest finite floating-point number
XMAX : NUMBER;
-- The largest finite floating-point number
-- ONE and ZERO must be defined in the package for NUMBER
-- since they may not be able to take a litteral for user type
ZERO : NUMBER := 0.0;
ONE : NUMBER := 1.0;
A, B, Y, Z : NUMBER;
I, K, MX, IZ : INTEGER;
BETA, BETAM1, BETAIN : NUMBER;
begin
NEW_LINE; PUT(" CHARACTERISTICS_OF_MACHINE_FLOAT:"); NEW_LINE;
A := ONE;
while (((A + ONE) - A) - ONE) = ZERO loop
A := A + A;
end loop;
B := ONE;
while ((A + B) - A) = ZERO loop
B := B + B;
end loop;
-- IBETA := INTEGER((A + B) - A);
-- BETA := NUMBER(IBETA);
B := (A + B) - A;
B := B - ONE/(ONE+ONE);
IBETA := 0;
BETA := ZERO;
while B > ZERO loop
BETA := BETA + ONE;
IBETA := IBETA + 1;
B := B - ONE;
end loop;
PUT(" IBETA : INTEGER := "); PUT(IBETA); NEW_LINE;
PUT(" BETA : NUMBER := "); PUT(BETA); NEW_LINE;
IT := 0;
B := ONE;
while (((B + ONE) - B) - ONE) = ZERO loop
IT := IT + 1;
B := B * BETA;
end loop;
PUT(" IT : INTEGER := "); PUT(IT); NEW_LINE;
IRND := 0;
BETAM1 := BETA - ONE;
if ((A + BETAM1) - A) /= ZERO then
IRND := 1;
end if;
PUT(" IRND : INTEGER := "); PUT(IRND); NEW_LINE;
NEGEP := IT + 3;
BETAIN := ONE / BETA;
A := ONE;
-- for I in 1..NEGEP loop
for I in 1..50 loop
exit when I > NEGEP;
A := A * BETAIN;
end loop;
B := A;
while ((ONE - A) - ONE) = ZERO loop
A := A * BETA;
NEGEP := NEGEP - 1;
end loop;
NEGEP := -NEGEP;
PUT(" NEGEP : INTEGER := "); PUT(NEGEP); NEW_LINE;
EPSNEG := A;
if (IBETA /= 2) and (IRND /= 0) then
A := (A * (ONE + A)) / (ONE + ONE);
if ((ONE - A) - ONE) /= ZERO then
EPSNEG := A;
end if;
end if;
PUT(" EPSNEG : NUMBER := "); PUT(EPSNEG); NEW_LINE;
MACHEP := -IT - 3;
A := B;
while ((ONE + A) - ONE) = ZERO loop
A := A * BETA;
MACHEP := MACHEP + 1;
end loop;
PUT(" MACHEP : INTEGER := "); PUT(MACHEP); NEW_LINE;
EPS := A;
if (IBETA /= 2) and (IRND /= 0) then
A := (A * (ONE + A)) / (ONE + ONE);
if ((ONE + A) - ONE) /= ZERO then
EPS := A;
end if;
end if;
PUT(" EPS : NUMBER := "); PUT(EPS); NEW_LINE;
NGRD := 0;
if ((IRND = 0) and ((ONE + EPS) * ONE - ONE) /= ZERO) then
NGRD := 1;
end if;
PUT(" NGRD : INTEGER := "); PUT(NGRD); NEW_LINE;
I := 0;
K := 1;
Z := BETAIN;
loop
Y := Z;
Z := Y * Y;
A := Z * ONE;
exit when ((A + A) = ZERO) or (ABS(Z) >= Y);
I := I + 1;
K := K + K;
end loop;
if (IBETA /= 10) then
IEXP := I + 1;
MX := K + K;
else
IEXP := 2;
IZ := IBETA;
while (K >= IZ) loop
IZ := IZ * IBETA;
IEXP := IEXP + 1;
end loop;
MX := IZ + IZ - 1;
end if;
loop
XMIN := Y;
Y := Y * BETAIN;
A := Y * ONE;
exit when ((A + A) = ZERO) or (ABS(Y) >= XMIN);
K := K + 1;
end loop;
PUT(" XMIN : NUMBER := "); PUT(XMIN); NEW_LINE;
MINEXP := -K;
PUT(" MINEXP : INTEGER := "); PUT(MINEXP); NEW_LINE;
if ((MX <= (K + K - 3)) and (IBETA /= 10)) then
MX := MX + MX;
IEXP := IEXP + 1;
end if;
PUT(" IEXP : INTEGER := "); PUT(IEXP); NEW_LINE;
MAXEXP := MX + MINEXP;
I := MAXEXP + MINEXP;
if ((IBETA = 2) and (I = 0)) then
MAXEXP := MAXEXP - 1;
end if;
if (I > 20) then
MAXEXP := MAXEXP - 1;
end if;
if (A /= Y) then
MAXEXP := MAXEXP - 2;
end if;
PUT(" MAXEXP : INTEGER := "); PUT(MAXEXP); NEW_LINE;
XMAX := ONE - EPSNEG;
if ((XMAX * ONE) /= XMAX) then
XMAX := ONE - BETA * EPSNEG;
end if;
XMAX := XMAX / (BETA * BETA * BETA * XMIN);
I := MAXEXP + MINEXP + 3;
if I > 0 then
for J in 1..50 loop
exit when J > I;
if IBETA = 2 then
XMAX := XMAX + XMAX;
else
XMAX := XMAX * BETA;
end if;
end loop;
end if;
PUT(" XMAX : NUMBER := "); PUT(XMAX); NEW_LINE;
exception
when others =>
null;
end CHARACTERISTICS_OF_MACHINE_FLOAT;
procedure INTEGER_ADD is
X : INTEGER := 1;
Y : INTEGER := 0;
begin
for J in 1..1_000 loop
Y := Y + X + X + X + X + X + X + X + X + X + X;
end loop;
end INTEGER_ADD;
procedure FLOAT_ADD is
X : FLOAT := 0.0001;
Y : FLOAT := 0.0;
begin
for J in 1..1_000 loop
Y := Y + X + X + X + X + X + X + X + X + X + X;
end loop;
end FLOAT_ADD;
procedure MULT is
X : FLOAT := 1.000_001;
Y : FLOAT := 1.0;
begin
for I in 1..100 loop
for J in 1..1_000 loop
Y := Y * X * X * X * X * X * X * X * X * X * X;
end loop;
end loop;
end MULT;
function ACKERMANN(N, M : INTEGER) return INTEGER is
begin
if N = 0 then
return M + 1;
elsif M = 0 then
return ACKERMANN(N-1, 1);
else
return ACKERMANN(N-1, ACKERMANN(N,M-1));
end if;
end ACKERMANN;
procedure SIEVE is
SIZE : constant INTEGER := 8_190;
FLAGS: array (0..SIZE) of BOOLEAN;
COUNT : INTEGER := 0;
TIMES : constant INTEGER := 10;
procedure PRIMES is
PRIME, K : INTEGER;
begin
for I in 0..SIZE loop
FLAGS(I) := TRUE;
end loop;
COUNT := 2;
for I in 0..SIZE loop
if FLAGS(I) = TRUE then
PRIME := I + I + 3;
K := I + PRIME;
while K <= SIZE loop
FLAGS(K) := FALSE;
K := K + PRIME;
end loop;
COUNT := COUNT + 1;
end if;
end loop;
end PRIMES;
begin
for I in 1..TIMES loop
PRIMES;
end loop;
end SIEVE;
procedure MACK is
EXPECTED_ACKER_TIME : constant FLOAT := 8.0;
EXPECTED_SIEVE_TIME : constant FLOAT := 8.0;
START_TIME, STOP_TIME, TOTAL_TIME : FLOAT := 0.0;
INTEGER_ADD_TIME, FLOAT_ADD_TIME, ACKER_TIME, SIEVE_TIME : FLOAT;
I : INTEGER;
begin
START_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
INTEGER_ADD;
STOP_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
INTEGER_ADD_TIME := STOP_TIME - START_TIME;
PUT("INTEGER ADD TIME FOR 10000 = "); PUT(INTEGER_ADD_TIME); NEW_LINE;
START_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
FLOAT_ADD;
STOP_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
FLOAT_ADD_TIME := STOP_TIME - START_TIME;
PUT(" FLOAT ADD TIME FOR 10000 = "); PUT(FLOAT_ADD_TIME); NEW_LINE;
if FLOAT_ADD_TIME > INTEGER_ADD_TIME * 4.0 then
BAD;
PUT("FLOAT may be slow"); NEW_LINE;
end if;
START_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
I := ACKERMANN(3, 6);
STOP_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
ACKER_TIME := STOP_TIME - START_TIME;
if ACKER_TIME > EXPECTED_ACKER_TIME / MACHINE_SPEED * 2.0 then
BAD;
elsif ACKER_TIME < EXPECTED_ACKER_TIME / MACHINE_SPEED / 2.0 then
GOOD;
end if;
PUT(" ACKER BENCHMARK "); PUT(ACKER_TIME); NEW_LINE;
START_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
SIEVE;
STOP_TIME := FLOAT(CALENDAR.SECONDS(CALENDAR.CLOCK));
SIEVE_TIME := STOP_TIME - START_TIME;
if SIEVE_TIME > EXPECTED_SIEVE_TIME / MACHINE_SPEED * 2.0 then
BAD;
elsif SIEVE_TIME < EXPECTED_SIEVE_TIME / MACHINE_SPEED / 2.0 then
GOOD;
end if;
PUT(" SIEVE BENCHMARK "); PUT(SIEVE_TIME); NEW_LINE;
end MACK;
procedure TIMER is
DATE, DATE1, DATE2 : TIME;
YR, MO, DA : INTEGER;
HR, MN, SC : INTEGER;
SEC : FLOAT;
J, K : INTEGER;
A, B, C, D : FLOAT;
procedure PUT_FILLED(N, W : in INTEGER) is
begin
if W = 2 and N < 10 then
PUT('0');
PUT(N, 1);
else
PUT(N, W);
end if;
end PUT_FILLED;
begin
DATE := CLOCK;
YR :=(INTEGER(YEAR(DATE)));
MO := (INTEGER(MONTH(DATE)));
DA := (INTEGER(DAY(DATE)));
PUT("THE DATE (IN ISO FORMAT) IS ");
PUT(YR, 4);
PUT_FILLED(MO, 2);
PUT_FILLED(DA, 2);
NEW_LINE;
SEC := (FLOAT(SECONDS(DATE)));
PUT("THE TIME OF DAY IS ");
HR := INTEGER(SEC/3600.0 - 0.5);
MN := INTEGER((SEC-FLOAT(HR)*3600.0)/60.0 - 0.5);
SC := INTEGER((SEC-FLOAT(HR)*3600.0)-FLOAT(MN)*60.0);
PUT_FILLED(HR,2); PUT(':'); PUT_FILLED(MN,2); PUT(':'); PUT_FILLED(SC,2);
NEW_LINE;
NEW_LINE;
A := 0.0;
C := 0.0;
D := 1000.0;
FOR I IN 1..1000 LOOP
DATE1 := CLOCK;
DATE2 := CLOCK;
B := (FLOAT(SECONDS(DATE2) - SECONDS(DATE1)));
IF B > A THEN
A := B;
END IF;
IF B < D THEN
D := B;
END IF;
C := C + B;
END LOOP;
PUT("AVERAGE TIME BETWEEN SUCCESSIVE CALLS TO CLOCK ");
PUT(FLOAT(C/1000.0));
NEW_LINE;
PUT("MAXIMUM TIME BETWEEN SUCCESSIVE CALLS TO CLOCK ");
PUT(FLOAT(A));
NEW_LINE;
PUT("MINIMUM TIME BETWEEN SUCCESSIVE CALLS TO CLOCK ");
PUT(FLOAT(D));
NEW_LINE;
NEW_LINE;
DATE1 := CLOCK;
FOR I IN 1..10000 LOOP
K := I + 1 - I /2;
END LOOP;
DATE2 := CLOCK;
PUT("10000 ARBITARY OPERATIONS ");
PUT(FLOAT(SECONDS(DATE2) - SECONDS(DATE1)));
NEW_LINE;
end TIMER;
begin
IMPLEMENTATION_DEFINITIONS;
CHARACTERISTICS_OF_MACHINE_FLOAT;
MACK;
TIMER;
end IMP;