The source code and dockerfile for the GSW2024 AI Lab.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

565 lines
23 KiB

4 weeks ago
  1. # DIST, a product distribution model
  2. #
  3. # References:
  4. # Robert Fourer, David M. Gay and Brian W. Kernighan, "A Modeling Language
  5. # for Mathematical Programming." Management Science 36 (1990) 519-554.
  6. ### SHIPPING SETS AND PARAMETERS ###
  7. set whse 'warehouses'; # Locations from which demand is satisfied
  8. set dctr 'distribution centers' within whse;
  9. # Locations from which product may be shipped
  10. param sc 'shipping cost' {dctr,whse} >= 0;
  11. # Shipping costs, to whse from dctr, in $ / 100 lb
  12. param huge 'largest shipping cost' > 0;
  13. # Largest cost allowed for a usable shipping route
  14. param msr 'minimum size restriction' {dctr,whse} logical;
  15. # True indicates a minimum-size restriction on
  16. # direct shipments using this dctr --> whse route
  17. param dsr 'direct shipment requirement' {dctr} >= 0;
  18. # Minimum total demand, in pallets, needed to
  19. # allow shipment on routes subject to the
  20. # minimum size restriction
  21. ### PLANT SETS AND PARAMETERS ###
  22. set fact 'factories' within dctr;
  23. # Locations where product is manufactured
  24. param rtmin 'regular-time total minimum' >= 0;
  25. # Lower limit on (average) total regular-time
  26. # crews employed at all factories
  27. param rtmax 'regular-time total maximum' >= rtmin;
  28. # Upper limit on (average) total regular-time
  29. # crews employed at all factories
  30. param otmin 'overtime total minimum' >= 0;
  31. # Lower limit on total overtime hours at all factories
  32. param otmax 'overtime total maximum' >= otmin;
  33. # Upper limit on total overtime hours at all factories
  34. param rmin 'regular-time minimums' {fact} >= 0;
  35. # Lower limits on (average) regular-time crews
  36. param rmax 'regular-time maximums' {f in fact} >= rmin[f];
  37. # Upper limits on (average) regular-time crews
  38. param omin 'overtime minimums' {fact} >= 0;
  39. # Lower limits on overtime hours
  40. param omax 'overtime maximums' {f in fact} >= omin[f];
  41. # Upper limits on overtime hours
  42. param hd 'hours per day' {fact} >= 0;
  43. # Regular-time hours per working day
  44. param dp 'days in period' {fact} > 0;
  45. # Working days in the current planning period
  46. ### PRODUCT SETS AND PARAMETERS ###
  47. set prd 'products'; # Elements of the product group
  48. param wt 'weight' {prd} > 0;
  49. # Weight in 100 lb / 1000 cases
  50. param cpp 'cases per pallet' {prd} > 0;
  51. # Cases of product per shipping pallet
  52. param tc 'transshipment cost' {prd} >= 0;
  53. # Transshipment cost in $ / 1000 cases
  54. param pt 'production time' {prd,fact} >= 0;
  55. # Crew-hours to produce 1000 cases
  56. param rpc 'regular-time production cost' {prd,fact} >= 0;
  57. # Cost of production on regular time,
  58. # in $ / 1000 cases
  59. param opc 'overtime production cost' {prd,fact} >= 0;
  60. # Cost of production on overtime, in $ / 1000 cases
  61. ### DEMAND SETS AND PARAMETERS ###
  62. param dt 'total demand' {prd} >= 0;
  63. # Total demands for products, in 1000s
  64. param ds 'demand shares' {prd,whse} >= 0.0, <= 1.0;
  65. # Historical demand data, from which each
  66. # warehouse's share of total demand is deduced
  67. param dstot {p in prd} := sum {w in whse} ds[p,w];
  68. # Total of demand shares; should be 1, but often isn't
  69. param dem 'demand' {p in prd, w in whse} := dt[p] * ds[p,w] / dstot[p];
  70. # Projected demands to be satisfied, in 1000s
  71. set rt 'shipping routes available' :=
  72. {d in dctr, w in whse:
  73. d <> w and sc[d,w] < huge and
  74. (w in dctr or sum {p in prd} dem[p,w] > 0) and
  75. not (msr[d,w] and sum {p in prd} 1000*dem[p,w]/cpp[p] < dsr[d]) };
  76. # List of ordered pairs that represent routes
  77. # on which shipments are allowed
  78. ### VARIABLES ###
  79. var Rprd 'regular-time production' {prd,fact} >= 0;
  80. # Regular-time production of each product
  81. # at each factory, in 1000s of cases
  82. var Oprd 'overtime production' {prd,fact} >= 0;
  83. # Overtime production of each product
  84. # at each factory, in 1000s of cases
  85. var Ship 'shipments' {prd,rt} >= 0;
  86. # Shipments of each product on each allowed route,
  87. # in 1000s of cases
  88. var Trans 'transshipments' {prd,dctr} >= 0;
  89. # Transshipments of each product at each
  90. # distribution center, in 1000s of cases
  91. ### OBJECTIVE ###
  92. minimize cost: sum {p in prd, f in fact} rpc[p,f] * Rprd[p,f] +
  93. sum {p in prd, f in fact} opc[p,f] * Oprd[p,f] +
  94. sum {p in prd, (d,w) in rt} sc[d,w] * wt[p] * Ship[p,d,w] +
  95. sum {p in prd, d in dctr} tc[p] * Trans[p,d];
  96. # Total cost: regular production, overtime
  97. # production, shipping, and transshipment
  98. ### CONSTRAINTS ###
  99. rtlim 'regular-time total limits':
  100. rtmin <= sum {p in prd, f in fact}
  101. (pt[p,f] * Rprd[p,f]) / (dp[f] * hd[f]) <= rtmax;
  102. # Total crews must lie between limits
  103. otlim 'overtime total limits':
  104. otmin <= sum {p in prd, f in fact} pt[p,f] * Oprd[p,f] <= otmax;
  105. # Total overtime must lie between limits
  106. rlim 'regular-time limits' {f in fact}:
  107. rmin[f] <= sum {p in prd}
  108. (pt[p,f] * Rprd[p,f]) / (dp[f] * hd[f]) <= rmax[f];
  109. # Crews at each factory must lie between limits
  110. olim 'overtime limits' {f in fact}:
  111. omin[f] <= sum {p in prd} pt[p,f] * Oprd[p,f] <= omax[f];
  112. # Overtime at each factory must lie between limits
  113. noRprd 'no regular production' {p in prd, f in fact: rpc[p,f] = 0}:
  114. Rprd[p,f] = 0;
  115. noOprd 'no overtime production' {p in prd, f in fact: opc[p,f] = 0}:
  116. Oprd[p,f] = 0; # Do not produce where specified cost is zero
  117. bal 'material balance' {p in prd, w in whse}:
  118. sum {(v,w) in rt}
  119. Ship [p,v,w] + (if w in fact then Rprd[p,w] + Oprd[p,w]) =
  120. dem[p,w] + (if w in dctr then sum {(w,v) in rt} Ship[p,w,v]);
  121. # Demand is satisfied by shipment into warehouse
  122. # plus production (if it is a factory)
  123. # minus shipment out (if it is a distn. center)
  124. trdef 'transshipment definition' {p in prd, d in dctr}:
  125. Trans[p,d] >= sum {(d,w) in rt} Ship [p,d,w] -
  126. (if d in fact then Rprd[p,d] + Oprd[p,d]);
  127. # Transshipment at a distribution center is
  128. # shipments out less production (if any)
  129. ### DATA -- 3 PRODUCTS ###
  130. data;
  131. set prd := 18REG 24REG 24PRO ;
  132. set whse := w01 w02 w03 w04 w05 w06 w08 w09 w12 w14 w15 w17
  133. w18 w19 w20 w21 w24 w25 w26 w27 w28 w29 w30 w31
  134. w32 w33 w34 w35 w36 w37 w38 w39 w40 w41 w42 w43
  135. w44 w45 w46 w47 w48 w49 w50 w51 w53 w54 w55 w56
  136. w57 w59 w60 w61 w62 w63 w64 w65 w66 w68 w69 w71
  137. w72 w73 w74 w75 w76 w77 w78 w79 w80 w81 w82 w83
  138. w84 w85 w86 w87 w89 w90 w91 w92 w93 w94 w95 w96
  139. w98 x22 x23 ;
  140. set dctr := w01 w02 w03 w04 w05 w62 w76 w96 ;
  141. set fact := w01 w05 w96 ;
  142. param huge := 99. ;
  143. param rtmin := 0.0 ;
  144. param rtmax := 8.0 ;
  145. param otmin := 0.0 ;
  146. param otmax := 96.0 ;
  147. param rmin := w01 0.00 w05 0.00 w96 0.00 ;
  148. param rmax := w01 3.00 w05 2.00 w96 3.00 ;
  149. param omin := w01 0.0 w05 0.0 w96 0.0 ;
  150. param omax := w01 48.0 w05 0.0 w96 48.0 ;
  151. param hd := w01 8.0 w05 8.0 w96 8.0 ;
  152. param dp := w01 19.0 w05 19.0 w96 19.0 ;
  153. param wt := 18REG 47.3 24REG 63.0 24PRO 63.0 ;
  154. param tc := 18REG 40.00 24REG 45.00 24PRO 45.00 ;
  155. param dt := 18REG 376.0 24REG 172.4 24PRO 316.3 ;
  156. param cpp := 18REG 102. 24REG 91. 24PRO 91. ;
  157. param dsr := w01 96. w02 96. w03 96. w04 96. w05 96.
  158. w62 96. w76 96. w96 96. ;
  159. param pt (tr) :
  160. 18REG 24REG 24PRO :=
  161. w01 1.194 1.429 1.429
  162. w05 1.194 1.509 1.509
  163. w96 0.000 1.600 1.600 ;
  164. param rpc (tr) :
  165. 18REG 24REG 24PRO :=
  166. w01 2119. 2653. 2617.
  167. w05 2489. 3182. 3176.
  168. w96 0. 2925. 2918. ;
  169. param opc (tr) :
  170. 18REG 24REG 24PRO :=
  171. w01 2903. 3585. 3579.
  172. w05 0. 0. 0.
  173. w96 0. 3629. 3622. ;
  174. param sc default 99.99 (tr) :
  175. w01 w02 w03 w04 w05 w62 w76 w96 :=
  176. w01 . 2.97 1.14 2.08 2.37 1.26 2.42 1.43
  177. w02 4.74 . 4.17 6.12 7.41 3.78 7.04 5.21
  178. w03 2.45 4.74 . 3.67 2.84 0.90 2.41 2.55
  179. w04 1.74 5.03 2.43 . 3.19 2.45 2.69 0.58
  180. w05 2.70 5.16 2.84 2.85 . 3.26 3.34 2.71
  181. w06 1.99 4.17 2.13 2.19 2.52 2.06 2.00 1.51
  182. w08 0.21 2.92 1.24 2.07 2.29 1.25 2.32 1.55
  183. w09 0.66 3.76 1.41 2.47 1.82 1.66 . 1.87
  184. w12 1.38 3.83 1.68 2.53 2.39 . 1.96 1.94
  185. w14 2.47 1.58 2.40 3.59 3.85 2.25 . 3.05
  186. w15 1.06 4.95 2.48 1.39 3.41 1.96 . 1.02
  187. w17 0.88 3.39 1.46 2.00 2.67 1.45 . 1.46
  188. w18 7.90 6.57 7.79 9.59 10.81 . . 6.70
  189. w19 1.42 4.12 1.96 1.99 3.52 1.88 . 1.26
  190. w20 3.03 1.59 2.34 4.76 3.98 1.88 . 3.73
  191. w24 1.58 2.80 2.27 2.87 3.19 1.31 . 2.05
  192. w25 1.51 5.05 2.74 0.57 2.98 . 2.95 0.27
  193. w26 1.75 3.61 2.70 1.54 4.07 3.52 . 1.03
  194. w27 2.48 6.87 3.17 1.59 2.08 3.45 . 0.99
  195. w28 2.05 6.83 2.97 1.13 2.91 . . 1.26
  196. w29 4.03 3.68 4.46 3.20 5.50 . . 3.20
  197. w30 2.48 5.78 2.99 2.24 1.79 3.10 . 1.39
  198. w31 2.34 5.41 2.87 1.67 1.66 . . 1.39
  199. w32 14.36 . . . . . . .
  200. w33 3.87 4.27 5.11 3.48 5.66 4.03 . 3.05
  201. w34 3.26 4.80 3.21 2.70 4.14 . . 1.77
  202. w35 2.34 2.84 2.89 3.35 3.78 2.68 . 2.52
  203. w36 2.43 5.69 2.96 2.95 1.02 2.61 1.07 2.54
  204. w37 2.23 4.64 2.41 1.99 4.30 2.61 . 1.44
  205. w38 4.66 4.36 5.23 3.04 4.46 . . 3.82
  206. w39 1.11 3.51 1.10 2.53 3.07 1.12 . 2.23
  207. w40 2.99 4.78 4.23 1.57 3.92 . . 1.80
  208. w41 4.93 4.00 5.43 4.45 6.31 . . 3.81
  209. w42 3.86 6.55 5.03 2.11 4.41 . . 2.63
  210. w43 4.61 4.45 3.77 1.22 4.31 . . 2.35
  211. w44 2.05 4.48 1.06 3.70 3.46 1.10 . 3.21
  212. w45 0.92 3.42 1.58 3.04 1.82 1.94 . 2.52
  213. w46 1.36 2.44 0.95 3.08 2.78 0.39 2.16 2.37
  214. w47 1.30 3.39 1.60 2.49 4.29 2.04 . 1.68
  215. w48 1.65 3.78 1.03 2.97 2.21 1.31 . 2.74
  216. w49 1.96 3.00 1.50 3.24 3.68 1.00 . 2.99
  217. w50 0.90 4.14 1.60 1.95 3.61 1.61 . 1.52
  218. w51 1.59 3.95 0.25 2.96 2.58 1.00 2.41 2.71
  219. w53 1.59 3.79 1.28 3.12 3.10 0.89 . 2.98
  220. w54 1.72 4.36 1.61 2.92 2.34 1.91 1.97 3.05
  221. w55 2.45 2.73 2.21 4.47 4.30 2.57 . 4.48
  222. w56 1.10 3.73 1.59 2.74 2.33 1.45 . 2.44
  223. w57 0.95 3.39 1.37 2.30 2.47 1.15 . 1.95
  224. w59 3.29 5.35 3.32 3.81 1.52 3.38 1.34 4.08
  225. w60 2.41 6.12 2.46 3.65 2.35 . 1.37 4.06
  226. w61 3.32 5.50 3.41 3.38 1.23 . 0.99 4.28
  227. w62 1.12 3.00 0.82 3.22 2.95 . 3.33 2.53
  228. w63 3.59 6.36 3.25 4.12 1.84 3.59 1.46 4.03
  229. w64 1.85 4.45 2.17 3.43 2.13 2.03 . 4.02
  230. w65 2.78 4.79 2.81 2.94 1.54 2.90 1.07 2.94
  231. w66 3.90 5.79 3.05 3.65 1.36 3.39 1.22 3.57
  232. w68 2.61 5.20 2.90 2.34 1.68 3.19 1.48 2.31
  233. w69 2.94 5.21 2.78 3.43 0.21 3.26 0.68 2.54
  234. w71 2.06 4.98 2.38 2.44 1.59 2.97 1.05 2.55
  235. w72 2.61 5.50 2.83 3.12 1.35 3.23 0.88 2.99
  236. w73 8.52 6.16 8.03 8.83 10.44 7.38 10.26 .
  237. w74 6.11 5.46 9.07 9.38 10.80 . . 8.25
  238. w75 2.66 4.94 2.87 3.69 1.52 3.15 1.24 4.00
  239. w76 1.99 5.26 2.23 3.36 0.58 3.17 . 2.50
  240. w77 4.32 3.07 5.05 3.88 6.04 . . 4.15
  241. w78 5.60 2.59 5.78 5.56 7.10 . . 5.60
  242. w79 4.25 2.32 4.93 4.57 6.04 . . 4.58
  243. w80 5.94 4.00 5.60 7.02 9.46 . . 7.51
  244. w81 5.39 2.21 5.10 6.22 6.46 . . 6.58
  245. w82 8.80 5.69 9.29 9.88 11.69 8.63 11.52 .
  246. w83 4.40 . 5.24 5.21 5.81 3.91 7.04 5.33
  247. w84 5.87 5.43 6.17 5.70 7.63 . . 5.70
  248. w85 3.90 3.65 3.38 4.57 5.64 3.05 . 5.04
  249. w86 5.48 2.10 5.70 6.37 7.33 . . 6.19
  250. w87 8.88 5.54 9.50 9.71 11.64 8.85 11.68 .
  251. w89 4.62 4.01 4.03 6.30 6.30 3.81 . 7.77
  252. w90 4.35 2.72 4.61 4.01 5.60 . . 3.20
  253. w91 7.61 4.42 7.83 6.85 8.79 . . 7.66
  254. w92 7.15 2.69 6.91 7.20 . . . 7.06
  255. w93 3.17 3.95 4.37 3.74 5.05 . . 2.40
  256. w94 1.21 3.07 0.90 2.74 3.17 . 2.63 2.39
  257. w95 5.82 3.29 6.55 7.06 11.47 . . 7.83
  258. w96 1.77 5.20 2.72 0.59 3.47 2.48 . .
  259. w98 3.04 1.92 3.64 3.70 4.90 3.05 . 3.88
  260. x22 4.08 6.25 4.15 4.30 1.77 . 1.77 .
  261. x23 3.39 5.74 3.55 4.08 1.69 . 1.47 . ;
  262. param msr (tr) :
  263. w01 w02 w03 w04 w05 w62 w76 w96 :=
  264. w01 0 0 0 0 0 0 1 0
  265. w02 0 0 0 0 0 0 1 0
  266. w03 0 0 0 0 0 0 1 0
  267. w04 0 0 0 0 0 0 1 0
  268. w05 0 0 0 0 0 0 0 0
  269. w06 0 1 1 1 1 1 1 1
  270. w08 0 1 1 1 1 1 1 1
  271. w09 0 1 1 1 1 1 0 1
  272. w12 0 1 1 1 1 0 1 1
  273. w14 1 1 1 1 1 0 0 1
  274. w15 0 1 1 1 1 1 0 1
  275. w17 0 1 1 1 1 1 0 1
  276. w18 0 1 1 1 1 0 0 1
  277. w19 0 1 1 1 1 0 0 1
  278. w20 1 1 1 1 1 0 0 1
  279. w24 0 1 1 1 1 0 0 1
  280. w25 0 1 1 1 1 0 1 0
  281. w26 1 1 1 0 1 1 0 1
  282. w27 1 1 1 0 1 1 0 1
  283. w28 1 1 1 0 1 0 0 1
  284. w29 0 1 1 1 1 0 0 1
  285. w30 1 1 1 0 1 1 0 1
  286. w31 1 1 1 0 1 0 0 1
  287. w32 0 0 0 0 0 0 0 0
  288. w33 1 0 1 1 1 1 0 1
  289. w34 1 1 1 0 1 0 0 1
  290. w35 1 1 1 1 1 0 0 1
  291. w36 0 1 1 1 0 1 1 1
  292. w37 1 1 1 0 1 1 0 1
  293. w38 1 1 1 0 1 0 0 1
  294. w39 0 1 1 1 1 1 0 1
  295. w40 1 1 1 0 1 0 0 1
  296. w41 1 0 1 1 1 0 0 1
  297. w42 1 1 1 0 1 0 0 1
  298. w43 1 1 1 0 1 0 0 1
  299. w44 1 1 1 1 1 0 0 1
  300. w45 0 1 1 1 1 1 0 1
  301. w46 0 1 1 1 1 0 1 1
  302. w47 0 1 1 1 1 1 0 1
  303. w48 0 1 1 1 1 0 0 1
  304. w49 1 1 1 1 1 0 0 1
  305. w50 0 1 1 1 1 1 0 1
  306. w51 0 1 1 1 1 0 1 1
  307. w53 1 1 1 1 1 0 0 1
  308. w54 0 1 1 1 1 1 1 1
  309. w55 0 1 1 1 1 0 0 1
  310. w56 0 1 1 1 1 1 0 1
  311. w57 0 1 1 1 1 1 0 1
  312. w59 0 1 1 1 0 1 1 1
  313. w60 0 1 1 1 1 0 1 1
  314. w61 0 1 1 1 0 0 1 1
  315. w62 0 0 0 0 0 0 1 0
  316. w63 0 1 1 1 0 1 1 1
  317. w64 0 1 1 1 1 1 0 1
  318. w65 0 1 1 1 0 1 1 1
  319. w66 0 1 1 1 0 1 1 1
  320. w68 0 1 1 1 0 1 1 1
  321. w69 0 1 1 1 0 1 1 1
  322. w71 0 1 1 1 0 1 1 1
  323. w72 0 1 1 1 0 1 1 1
  324. w73 0 1 1 1 0 1 1 0
  325. w74 0 1 1 1 0 0 0 1
  326. w75 0 1 1 1 0 1 1 1
  327. w76 0 0 0 0 0 0 0 0
  328. w77 1 0 1 1 1 0 0 1
  329. w78 1 0 1 1 1 0 0 1
  330. w79 1 0 1 1 1 0 0 1
  331. w80 1 0 1 1 1 0 0 1
  332. w81 1 0 1 1 1 0 0 1
  333. w82 1 0 1 1 1 1 1 0
  334. w83 1 0 1 1 1 0 1 1
  335. w84 1 0 1 1 1 0 0 1
  336. w85 1 1 1 1 1 0 0 1
  337. w86 1 0 1 1 1 0 0 1
  338. w87 1 0 1 1 1 1 1 0
  339. w89 1 0 1 1 1 1 0 1
  340. w90 0 1 1 1 1 0 0 1
  341. w91 1 0 1 1 1 0 0 1
  342. w92 1 0 1 1 1 0 0 1
  343. w93 1 1 1 0 1 0 0 1
  344. w94 0 0 1 1 1 0 1 1
  345. w95 1 0 1 1 1 0 0 1
  346. w96 0 0 0 0 0 0 0 0
  347. w98 1 0 1 1 1 1 0 1
  348. x22 1 1 1 1 0 0 1 0
  349. x23 1 1 1 1 0 0 1 0 ;
  350. param ds default 0.000 (tr) :
  351. 18REG 24REG 24PRO :=
  352. w01 0.000 0.000 0.008
  353. w02 0.004 0.000 0.000
  354. w03 0.000 0.000 0.000
  355. w04 0.010 0.002 0.000
  356. w05 0.000 0.000 0.000
  357. w06 0.010 0.008 0.008
  358. w08 0.030 0.024 0.024
  359. w09 0.014 0.018 0.020
  360. w12 0.014 0.012 0.010
  361. w14 0.007 0.007 0.012
  362. w15 0.010 0.019 0.018
  363. w17 0.013 0.010 0.011
  364. w19 0.015 0.012 0.009
  365. w20 0.012 0.021 0.022
  366. w21 0.000 0.000 0.000
  367. w24 0.012 0.022 0.018
  368. w25 0.019 0.025 0.020
  369. w26 0.006 0.015 0.021
  370. w27 0.008 0.010 0.015
  371. w28 0.011 0.016 0.019
  372. w29 0.008 0.020 0.013
  373. w30 0.011 0.013 0.015
  374. w31 0.011 0.013 0.017
  375. w32 0.006 0.000 0.000
  376. w33 0.000 0.015 0.014
  377. w34 0.008 0.007 0.005
  378. w35 0.002 0.006 0.014
  379. w36 0.015 0.013 0.005
  380. w37 0.017 0.016 0.015
  381. w38 0.015 0.009 0.012
  382. w39 0.007 0.017 0.022
  383. w40 0.009 0.014 0.020
  384. w41 0.003 0.014 0.011
  385. w42 0.017 0.011 0.012
  386. w43 0.009 0.013 0.011
  387. w44 0.002 0.012 0.012
  388. w45 0.016 0.025 0.028
  389. w46 0.038 0.062 0.040
  390. w47 0.007 0.010 0.010
  391. w48 0.003 0.015 0.016
  392. w49 0.005 0.016 0.017
  393. w50 0.011 0.008 0.007
  394. w51 0.010 0.022 0.021
  395. w53 0.004 0.026 0.020
  396. w54 0.020 0.017 0.025
  397. w55 0.004 0.019 0.028
  398. w56 0.004 0.010 0.008
  399. w57 0.014 0.020 0.018
  400. w59 0.012 0.006 0.007
  401. w60 0.019 0.010 0.009
  402. w61 0.028 0.010 0.012
  403. w62 0.000 0.000 0.000
  404. w63 0.070 0.027 0.037
  405. w64 0.009 0.004 0.005
  406. w65 0.022 0.015 0.016
  407. w66 0.046 0.017 0.020
  408. w68 0.005 0.012 0.016
  409. w69 0.085 0.036 0.039
  410. w71 0.011 0.013 0.010
  411. w72 0.089 0.031 0.034
  412. w75 0.026 0.012 0.010
  413. w77 0.001 0.004 0.002
  414. w78 0.002 0.004 0.002
  415. w79 0.001 0.004 0.002
  416. w80 0.001 0.001 0.002
  417. w81 0.001 0.003 0.002
  418. w83 0.009 0.010 0.008
  419. w84 0.001 0.002 0.002
  420. w85 0.001 0.004 0.005
  421. w86 0.001 0.002 0.002
  422. w87 0.002 0.003 0.000
  423. w89 0.001 0.001 0.002
  424. w90 0.006 0.017 0.013
  425. w91 0.002 0.010 0.013
  426. w92 0.000 0.003 0.002
  427. w93 0.002 0.006 0.007
  428. w95 0.001 0.007 0.007
  429. w96 0.000 0.000 0.000
  430. w98 0.006 0.005 0.002 ;
  431. end;