1 | package fr.sii.ogham.testing.sms.simulator.jsmpp; | |
2 | ||
3 | import java.io.IOException; | |
4 | import java.io.OutputStream; | |
5 | ||
6 | import org.jsmpp.InvalidNumberOfDestinationsException; | |
7 | import org.jsmpp.PDUSender; | |
8 | import org.jsmpp.PDUStringException; | |
9 | import org.jsmpp.bean.BindType; | |
10 | import org.jsmpp.bean.DataCoding; | |
11 | import org.jsmpp.bean.DestinationAddress; | |
12 | import org.jsmpp.bean.ESMClass; | |
13 | import org.jsmpp.bean.InterfaceVersion; | |
14 | import org.jsmpp.bean.MessageState; | |
15 | import org.jsmpp.bean.NumberingPlanIndicator; | |
16 | import org.jsmpp.bean.OptionalParameter; | |
17 | import org.jsmpp.bean.RegisteredDelivery; | |
18 | import org.jsmpp.bean.ReplaceIfPresentFlag; | |
19 | import org.jsmpp.bean.TypeOfNumber; | |
20 | import org.jsmpp.bean.UnsuccessDelivery; | |
21 | ||
22 | import fr.sii.ogham.testing.sms.simulator.config.Awaiter; | |
23 | import fr.sii.ogham.testing.sms.simulator.config.ServerDelays; | |
24 | ||
25 | /** | |
26 | * Decorate a real {@link PDUSender}. If delay is configured, it waits for that | |
27 | * delay before sending the real PDU. | |
28 | * | |
29 | * @author Aurélien Baudet | |
30 | * | |
31 | */ | |
32 | public class SlowPduSender implements PDUSender { | |
33 | private final PDUSender delegate; | |
34 | private final ServerDelays delays; | |
35 | ||
36 | public SlowPduSender(PDUSender delegate, ServerDelays delays) { | |
37 | super(); | |
38 | this.delegate = delegate; | |
39 | this.delays = delays; | |
40 | } | |
41 | ||
42 | @Override | |
43 | public byte[] sendHeader(OutputStream os, int commandId, int commandStatus, int sequenceNumber) throws IOException { | |
44 |
1
1. sendHeader : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendHeaderWaiting()); |
45 |
1
1. sendHeader : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendHeader → NO_COVERAGE |
return delegate.sendHeader(os, commandId, commandStatus, sequenceNumber); |
46 | } | |
47 | ||
48 | @Override | |
49 | public byte[] sendBind(OutputStream os, BindType bindType, int sequenceNumber, String systemId, String password, String systemType, InterfaceVersion interfaceVersion, TypeOfNumber addrTon, | |
50 | NumberingPlanIndicator addrNpi, String addressRange) throws PDUStringException, IOException { | |
51 |
1
1. sendBind : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendBindWaiting()); |
52 |
1
1. sendBind : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendBind → NO_COVERAGE |
return delegate.sendBind(os, bindType, sequenceNumber, systemId, password, systemType, interfaceVersion, addrTon, addrNpi, addressRange); |
53 | } | |
54 | ||
55 | @Override | |
56 | public byte[] sendBindResp(OutputStream os, int commandId, int sequenceNumber, String systemId, InterfaceVersion interfaceVersion) throws PDUStringException, IOException { | |
57 |
3
1. sendBindResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE 2. sendBindResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → KILLED 3. sendBindResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → KILLED |
await(delays.getSendBindRespWaiting()); |
58 |
2
1. sendBindResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendBindResp → SURVIVED 2. sendBindResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendBindResp → NO_COVERAGE |
return delegate.sendBindResp(os, commandId, sequenceNumber, systemId, interfaceVersion); |
59 | } | |
60 | ||
61 | @Override | |
62 | public byte[] sendOutbind(OutputStream os, int sequenceNumber, String systemId, String password) throws PDUStringException, IOException { | |
63 |
1
1. sendOutbind : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendOutbindWaiting()); |
64 |
1
1. sendOutbind : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendOutbind → NO_COVERAGE |
return delegate.sendOutbind(os, sequenceNumber, systemId, password); |
65 | } | |
66 | ||
67 | @Override | |
68 | public byte[] sendUnbind(OutputStream os, int sequenceNumber) throws IOException { | |
69 |
1
1. sendUnbind : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendUnbindWaiting()); |
70 |
1
1. sendUnbind : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendUnbind → NO_COVERAGE |
return delegate.sendUnbind(os, sequenceNumber); |
71 | } | |
72 | ||
73 | @Override | |
74 | public byte[] sendGenericNack(OutputStream os, int commandStatus, int sequenceNumber) throws IOException { | |
75 |
1
1. sendGenericNack : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendGenericNackWaiting()); |
76 |
1
1. sendGenericNack : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendGenericNack → NO_COVERAGE |
return delegate.sendGenericNack(os, commandStatus, sequenceNumber); |
77 | } | |
78 | ||
79 | @Override | |
80 | public byte[] sendUnbindResp(OutputStream os, int commandStatus, int sequenceNumber) throws IOException { | |
81 |
2
1. sendUnbindResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → SURVIVED 2. sendUnbindResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendUnbindRespWaiting()); |
82 |
2
1. sendUnbindResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendUnbindResp → NO_COVERAGE 2. sendUnbindResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendUnbindResp → SURVIVED |
return delegate.sendUnbindResp(os, commandStatus, sequenceNumber); |
83 | } | |
84 | ||
85 | @Override | |
86 | public byte[] sendEnquireLink(OutputStream os, int sequenceNumber) throws IOException { | |
87 |
1
1. sendEnquireLink : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendEnquireLinkWaiting()); |
88 |
1
1. sendEnquireLink : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendEnquireLink → NO_COVERAGE |
return delegate.sendEnquireLink(os, sequenceNumber); |
89 | } | |
90 | ||
91 | @Override | |
92 | public byte[] sendEnquireLinkResp(OutputStream os, int sequenceNumber) throws IOException { | |
93 |
2
1. sendEnquireLinkResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE 2. sendEnquireLinkResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → KILLED |
await(delays.getSendEnquireLinkRespWaiting()); |
94 |
1
1. sendEnquireLinkResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendEnquireLinkResp → NO_COVERAGE |
return delegate.sendEnquireLinkResp(os, sequenceNumber); |
95 | } | |
96 | ||
97 | @Override | |
98 | public byte[] sendSubmitSm(OutputStream os, int sequenceNumber, String serviceType, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, TypeOfNumber destAddrTon, | |
99 | NumberingPlanIndicator destAddrNpi, String destinationAddr, ESMClass esmClass, byte protocolId, byte priorityFlag, String scheduleDeliveryTime, String validityPeriod, | |
100 | RegisteredDelivery registeredDelivery, byte replaceIfPresentFlag, DataCoding dataCoding, byte smDefaultMsgId, byte[] shortMessage, OptionalParameter... optionalParameters) | |
101 | throws PDUStringException, IOException { | |
102 |
1
1. sendSubmitSm : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendSubmitSmWaiting()); |
103 |
1
1. sendSubmitSm : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendSubmitSm → NO_COVERAGE |
return delegate.sendSubmitSm(os, sequenceNumber, serviceType, sourceAddrTon, sourceAddrNpi, sourceAddr, destAddrTon, destAddrNpi, destinationAddr, esmClass, protocolId, priorityFlag, |
104 | scheduleDeliveryTime, validityPeriod, registeredDelivery, replaceIfPresentFlag, dataCoding, smDefaultMsgId, shortMessage, optionalParameters); | |
105 | } | |
106 | ||
107 | @Override | |
108 | public byte[] sendSubmitSmResp(OutputStream os, int sequenceNumber, String messageId) throws PDUStringException, IOException { | |
109 |
3
1. sendSubmitSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE 2. sendSubmitSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → KILLED 3. sendSubmitSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → KILLED |
await(delays.getSendSubmitSmRespWaiting()); |
110 |
2
1. sendSubmitSmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendSubmitSmResp → SURVIVED 2. sendSubmitSmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendSubmitSmResp → NO_COVERAGE |
return delegate.sendSubmitSmResp(os, sequenceNumber, messageId); |
111 | } | |
112 | ||
113 | @Override | |
114 | public byte[] sendQuerySm(OutputStream os, int sequenceNumber, String messageId, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr) | |
115 | throws PDUStringException, IOException { | |
116 |
1
1. sendQuerySm : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendQuerySmWaiting()); |
117 |
1
1. sendQuerySm : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendQuerySm → NO_COVERAGE |
return delegate.sendQuerySm(os, sequenceNumber, messageId, sourceAddrTon, sourceAddrNpi, sourceAddr); |
118 | } | |
119 | ||
120 | @Override | |
121 | public byte[] sendQuerySmResp(OutputStream os, int sequenceNumber, String messageId, String finalDate, MessageState messageState, byte errorCode) throws PDUStringException, IOException { | |
122 |
1
1. sendQuerySmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendQuerySmRespWaiting()); |
123 |
1
1. sendQuerySmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendQuerySmResp → NO_COVERAGE |
return delegate.sendQuerySmResp(os, sequenceNumber, messageId, finalDate, messageState, errorCode); |
124 | } | |
125 | ||
126 | @Override | |
127 | public byte[] sendDeliverSm(OutputStream os, int sequenceNumber, String serviceType, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, TypeOfNumber destAddrTon, | |
128 | NumberingPlanIndicator destAddrNpi, String destinationAddr, ESMClass esmClass, byte protocoId, byte priorityFlag, RegisteredDelivery registeredDelivery, DataCoding dataCoding, | |
129 | byte[] shortMessage, OptionalParameter... optionalParameters) throws PDUStringException, IOException { | |
130 |
1
1. sendDeliverSm : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendDeliverSmWaiting()); |
131 |
1
1. sendDeliverSm : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendDeliverSm → NO_COVERAGE |
return delegate.sendDeliverSm(os, sequenceNumber, serviceType, sourceAddrTon, sourceAddrNpi, sourceAddr, destAddrTon, destAddrNpi, destinationAddr, esmClass, protocoId, priorityFlag, |
132 | registeredDelivery, dataCoding, shortMessage, optionalParameters); | |
133 | } | |
134 | ||
135 | @Override | |
136 | public byte[] sendDeliverSmResp(OutputStream os, int commandStatus, int sequenceNumber, String messageId) throws IOException { | |
137 |
1
1. sendDeliverSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendDeliverSmRespWaiting()); |
138 |
1
1. sendDeliverSmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendDeliverSmResp → NO_COVERAGE |
return delegate.sendDeliverSmResp(os, commandStatus, sequenceNumber, messageId); |
139 | } | |
140 | ||
141 | @Override | |
142 | public byte[] sendDataSm(OutputStream os, int sequenceNumber, String serviceType, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, TypeOfNumber destAddrTon, | |
143 | NumberingPlanIndicator destAddrNpi, String destinationAddr, ESMClass esmClass, RegisteredDelivery registeredDelivery, DataCoding dataCoding, OptionalParameter... optionalParameters) | |
144 | throws PDUStringException, IOException { | |
145 |
1
1. sendDataSm : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendDataSmWaiting()); |
146 |
1
1. sendDataSm : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendDataSm → NO_COVERAGE |
return delegate.sendDataSm(os, sequenceNumber, serviceType, sourceAddrTon, sourceAddrNpi, sourceAddr, destAddrTon, destAddrNpi, destinationAddr, esmClass, registeredDelivery, dataCoding, |
147 | optionalParameters); | |
148 | } | |
149 | ||
150 | @Override | |
151 | public byte[] sendDataSmResp(OutputStream os, int sequenceNumber, String messageId, OptionalParameter... optionalParameters) throws PDUStringException, IOException { | |
152 |
1
1. sendDataSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendDataSmRespWaiting()); |
153 |
1
1. sendDataSmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendDataSmResp → NO_COVERAGE |
return delegate.sendDataSmResp(os, sequenceNumber, messageId, optionalParameters); |
154 | } | |
155 | ||
156 | @Override | |
157 | public byte[] sendCancelSm(OutputStream os, int sequenceNumber, String serviceType, String messageId, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, | |
158 | TypeOfNumber destAddrTon, NumberingPlanIndicator destAddrNpi, String destinationAddr) throws PDUStringException, IOException { | |
159 |
1
1. sendCancelSm : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendCancelSmWaiting()); |
160 |
1
1. sendCancelSm : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendCancelSm → NO_COVERAGE |
return delegate.sendCancelSm(os, sequenceNumber, serviceType, messageId, sourceAddrTon, sourceAddrNpi, sourceAddr, destAddrTon, destAddrNpi, destinationAddr); |
161 | } | |
162 | ||
163 | @Override | |
164 | public byte[] sendCancelSmResp(OutputStream os, int sequenceNumber) throws IOException { | |
165 |
1
1. sendCancelSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendCancelSmRespWaiting()); |
166 |
1
1. sendCancelSmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendCancelSmResp → NO_COVERAGE |
return delegate.sendCancelSmResp(os, sequenceNumber); |
167 | } | |
168 | ||
169 | @Override | |
170 | public byte[] sendReplaceSm(OutputStream os, int sequenceNumber, String messageId, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, String scheduleDeliveryTime, | |
171 | String validityPeriod, RegisteredDelivery registeredDelivery, byte smDefaultMsgId, byte[] shortMessage) throws PDUStringException, IOException { | |
172 |
1
1. sendReplaceSm : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendReplaceSmWaiting()); |
173 |
1
1. sendReplaceSm : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendReplaceSm → NO_COVERAGE |
return delegate.sendReplaceSm(os, sequenceNumber, messageId, sourceAddrTon, sourceAddrNpi, sourceAddr, scheduleDeliveryTime, validityPeriod, registeredDelivery, smDefaultMsgId, shortMessage); |
174 | } | |
175 | ||
176 | @Override | |
177 | public byte[] sendReplaceSmResp(OutputStream os, int sequenceNumber) throws IOException { | |
178 |
1
1. sendReplaceSmResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendReplaceSmRespWaiting()); |
179 |
1
1. sendReplaceSmResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendReplaceSmResp → NO_COVERAGE |
return delegate.sendReplaceSmResp(os, sequenceNumber); |
180 | } | |
181 | ||
182 | @Override | |
183 | public byte[] sendSubmitMulti(OutputStream os, int sequenceNumber, String serviceType, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, | |
184 | DestinationAddress[] destinationAddresses, ESMClass esmClass, byte protocolId, byte priorityFlag, String scheduleDeliveryTime, String validityPeriod, RegisteredDelivery registeredDelivery, | |
185 | ReplaceIfPresentFlag replaceIfPresentFlag, DataCoding dataCoding, byte smDefaultMsgId, byte[] shortMessage, OptionalParameter... optionalParameters) | |
186 | throws PDUStringException, InvalidNumberOfDestinationsException, IOException { | |
187 |
1
1. sendSubmitMulti : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendSubmitMultiWaiting()); |
188 |
1
1. sendSubmitMulti : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendSubmitMulti → NO_COVERAGE |
return delegate.sendSubmitMulti(os, sequenceNumber, serviceType, sourceAddrTon, sourceAddrNpi, sourceAddr, destinationAddresses, esmClass, protocolId, priorityFlag, scheduleDeliveryTime, |
189 | validityPeriod, registeredDelivery, replaceIfPresentFlag, dataCoding, smDefaultMsgId, shortMessage, optionalParameters); | |
190 | } | |
191 | ||
192 | @Override | |
193 | public byte[] sendSubmitMultiResp(OutputStream os, int sequenceNumber, String messageId, UnsuccessDelivery... unsuccessDeliveries) throws PDUStringException, IOException { | |
194 |
1
1. sendSubmitMultiResp : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendSubmitMultiRespWaiting()); |
195 |
1
1. sendSubmitMultiResp : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendSubmitMultiResp → NO_COVERAGE |
return delegate.sendSubmitMultiResp(os, sequenceNumber, messageId, unsuccessDeliveries); |
196 | } | |
197 | ||
198 | @Override | |
199 | public byte[] sendAlertNotification(OutputStream os, int sequenceNumber, TypeOfNumber sourceAddrTon, NumberingPlanIndicator sourceAddrNpi, String sourceAddr, TypeOfNumber esmeAddrTon, | |
200 | NumberingPlanIndicator esmeAddrNpi, String esmeAddr, OptionalParameter... optionalParameters) throws PDUStringException, IOException { | |
201 |
1
1. sendAlertNotification : removed call to fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::await → NO_COVERAGE |
await(delays.getSendAlertNotificationWaiting()); |
202 |
1
1. sendAlertNotification : replaced return value with null for fr/sii/ogham/testing/sms/simulator/jsmpp/SlowPduSender::sendAlertNotification → NO_COVERAGE |
return delegate.sendAlertNotification(os, sequenceNumber, sourceAddrTon, sourceAddrNpi, sourceAddr, esmeAddrTon, esmeAddrNpi, esmeAddr, optionalParameters); |
203 | } | |
204 | ||
205 | private static void await(Awaiter waiting) { | |
206 |
3
1. await : negated conditional → NO_COVERAGE 2. await : negated conditional → KILLED 3. await : negated conditional → KILLED |
if (waiting == null) { |
207 | return; | |
208 | } | |
209 |
3
1. await : removed call to fr/sii/ogham/testing/sms/simulator/config/Awaiter::await → NO_COVERAGE 2. await : removed call to fr/sii/ogham/testing/sms/simulator/config/Awaiter::await → KILLED 3. await : removed call to fr/sii/ogham/testing/sms/simulator/config/Awaiter::await → KILLED |
waiting.await(); |
210 | } | |
211 | } | |
Mutations | ||
44 |
1.1 |
|
45 |
1.1 |
|
51 |
1.1 |
|
52 |
1.1 |
|
57 |
1.1 2.2 3.3 |
|
58 |
1.1 2.2 |
|
63 |
1.1 |
|
64 |
1.1 |
|
69 |
1.1 |
|
70 |
1.1 |
|
75 |
1.1 |
|
76 |
1.1 |
|
81 |
1.1 2.2 |
|
82 |
1.1 2.2 |
|
87 |
1.1 |
|
88 |
1.1 |
|
93 |
1.1 2.2 |
|
94 |
1.1 |
|
102 |
1.1 |
|
103 |
1.1 |
|
109 |
1.1 2.2 3.3 |
|
110 |
1.1 2.2 |
|
116 |
1.1 |
|
117 |
1.1 |
|
122 |
1.1 |
|
123 |
1.1 |
|
130 |
1.1 |
|
131 |
1.1 |
|
137 |
1.1 |
|
138 |
1.1 |
|
145 |
1.1 |
|
146 |
1.1 |
|
152 |
1.1 |
|
153 |
1.1 |
|
159 |
1.1 |
|
160 |
1.1 |
|
165 |
1.1 |
|
166 |
1.1 |
|
172 |
1.1 |
|
173 |
1.1 |
|
178 |
1.1 |
|
179 |
1.1 |
|
187 |
1.1 |
|
188 |
1.1 |
|
194 |
1.1 |
|
195 |
1.1 |
|
201 |
1.1 |
|
202 |
1.1 |
|
206 |
1.1 2.2 3.3 |
|
209 |
1.1 2.2 3.3 |