Project

General

Profile

1 26600 sandro.lab
<?xml version="1.0" encoding="UTF-8"?>
2 41874 alessia.ba
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 40491 michele.ar
       xmlns:p="http://www.springframework.org/schema/p"
4 41874 alessia.ba
       xmlns="http://www.springframework.org/schema/beans"
5 40491 michele.ar
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
6 26600 sandro.lab
7 54151 claudio.at
    <bean id="wfNodeUpdateActionSets"
8
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.UpdateSetsJobNode"
9
          scope="prototype"/>
10 31213 claudio.at
11 54151 claudio.at
    <bean id="wfNodePrepareActionSets"
12
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PrepareActionSetsJobNode"
13
          scope="prototype"/>
14 42244 claudio.at
15 54151 claudio.at
    <bean id="wfNodeCleanActionSetsProfile"
16
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.CleanActionSetsProfileJobNode"
17
          p:xupdate="${dnet.actionmanager.garbage.sets.xupdate}" scope="prototype"/>
18 42244 claudio.at
19 54151 claudio.at
    <bean id="wfNodeGarbageSets"
20
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.GarbageSetsJobNode"
21
          scope="prototype"/>
22 42244 claudio.at
23 54151 claudio.at
    <bean id="wfNodeGarbageSetsHDFS"
24
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.GarbageSetsHDFSJobNode"
25
          scope="prototype"/>
26 42244 claudio.at
27 54151 claudio.at
    <bean id="wfNodePromoteActionsHDFS"
28
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PromoteActionsHDFSJobNode"
29
          scope="prototype"/>
30 42244 claudio.at
31 54151 claudio.at
    <bean id="wfNodePromoteActions"
32
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PromoteActionsJobNode"
33
          scope="prototype"/>
34 42472 claudio.at
35 54151 claudio.at
    <bean id="wfNodePrepareCopyTable"
36
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.PrepareCopyTableJobNode"
37
          scope="prototype"/>
38 31213 claudio.at
39 51978 sandro.lab
40 54151 claudio.at
    <bean id="wfNodeIncrementalTransformation"
41
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.IncrementalTransformationJobNode"
42
          scope="prototype"/>
43
    <bean id="wfNodeIncrementalOperation"
44
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.IncrementalOperationJobNode"
45
          scope="prototype"/>
46 51978 sandro.lab
47 54151 claudio.at
    <bean id="wfNodeDecapsuleClaims"
48
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.DecapsuleClaimsJobNode"
49
          scope="prototype"/>
50 30847 michele.ar
51 54151 claudio.at
    <bean id="wfNodeOpenaireMdBuilder"
52
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.OpenaireMdBuilderJobNode"
53
          p:xsltMappedResultSetFactory-ref="xsltResultSetFactory"
54
          p:mdBuilderTemplateXslt-ref="openaireMdBuilderTemplateXslt" scope="prototype"/>
55 34379 claudio.at
56 54151 claudio.at
    <bean id="openaireMdBuilderTemplateXslt"
57
          class="eu.dnetlib.springutils.stringtemplate.StringTemplateFactory"
58
          p:template="classpath:/eu/dnetlib/msro/openaireplus/workflows/repo-hi/xslt/openaireMdBuilder.xslt.st"
59
          scope="prototype"/>
60 34379 claudio.at
61 54151 claudio.at
    <bean id="wfNodeUpdateOpenaireMetaWfStatus"
62
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.repohi.UpdateOpenaireMetaWfStatusJobNode"
63
          scope="prototype"/>
64 26600 sandro.lab
65 54151 claudio.at
    <bean id="wfNodeDeleteOpenaireMetaWf"
66
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.repobye.DeleteOpenaireMetaWfJobNode"
67
          scope="prototype"/>
68 26600 sandro.lab
69 54151 claudio.at
    <bean id="wfNodeUpdateRepositoryProfiles"
70
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.UpdateRepositoryProfilesJobNode"
71
          scope="prototype"/>
72 28304 alessia.ba
73 54151 claudio.at
    <bean id="wfNodeUpdateOpenaireDb" class="eu.dnetlib.msro.workflows.nodes.db.UpdateDbJobNode"
74
          scope="prototype" p:processCountingResultSetFactory-ref="msroProcessCountingResultSetFactory"
75
          p:db="${dnet.openaire.db.name}"/>
76 28304 alessia.ba
77 54151 claudio.at
    <bean id="wfNodeUpdateVocabularyEntries"
78
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.UpdateVocabularyEntriesJobNode"
79
          scope="prototype"
80
          p:xquery="classpath:/eu/dnetlib/msro/openaireplus/workflows/db/vocabulary_entries.xquery"/>
81 45335 claudio.at
82 54151 claudio.at
    <bean id="wfNodeFindVocabularyEntries"
83
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.FindVocabularyEntriesJobNode"
84
          scope="prototype"
85
          p:xquery="classpath:/eu/dnetlib/msro/openaireplus/workflows/db/vocabulary_entries.xquery"/>
86 26600 sandro.lab
87 54151 claudio.at
    <!-- 	<bean id="wfNodeGetHBaseTableDescription" -->
88
    <!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.GetHBaseTableDescriptionJobNode" -->
89
    <!-- 		scope="prototype" /> -->
90 32183 claudio.at
91 54151 claudio.at
    <bean id="wfNodeImportFiles"
92
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.objectStore.ImportFilesJobNode"
93
          scope="prototype" p:processCountingResultSetFactory-ref="msroProcessCountingResultSetFactory"
94
          p:iterableResultSetFactory-ref="iterableResultSetFactory"/>
95 28304 alessia.ba
96 54151 claudio.at
    <bean id="wfNodeRetreiveInterfaceInfo"
97
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.repohi.RetrieveInterfaceInfoJobNode"
98
          scope="prototype"/>
99 26600 sandro.lab
100 54151 claudio.at
    <bean id="wfNodeObtainOpenaireDataSourceParams"
101
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.ObtainOpenaireDataSourceParamsJobNode"
102
          scope="prototype"/>
103 26600 sandro.lab
104 54151 claudio.at
    <bean id="wfNodeSetHdfsFile"
105
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.SetHdfsFileJobNode"
106
          scope="prototype"/>
107 26600 sandro.lab
108 54151 claudio.at
    <!-- <bean id="wfNodeMDStoreImportJob" -->
109
    <!-- class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.HBaseMapReduceJobNode" -->
110
    <!-- scope="prototype" p:hadoopJob-ref="mdStoreHdfsImportJob" -->
111
    <!-- p:targetTable="${hbase.mapred.datatable}" p:hFileOutput="${services.mapreduce.mdrecords.hdsf.hfile.output}" -->
112
    <!-- p:xslt="classpath:/eu/dnetlib/data/transform/dmf_2_hbase.xsl" /> -->
113 26600 sandro.lab
114 54151 claudio.at
    <bean id="wfNodeFindSearchService"
115
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FindSearchServiceJobNode"
116
          scope="prototype"/>
117 26600 sandro.lab
118 54151 claudio.at
    <bean id="wfNodeFindSearchServices"
119
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FindSearchServicesJobNode"
120
          scope="prototype"/>
121 42959 alessia.ba
122 54151 claudio.at
    <bean id="wfNodeLoadContextsJob"
123
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.LoadContextsJobNode"
124
          scope="prototype"/>
125 29397 claudio.at
126 54151 claudio.at
    <bean id="wfNodeLoadEntityLinksJob"
127
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.LoadEntityLinksJobNode"
128
          scope="prototype"/>
129 29397 claudio.at
130 54151 claudio.at
    <bean id="wfNodePrepareIndexJob"
131
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.PrepareIndexDataJobNode"
132
          scope="prototype" p:hbaseTable="${hbase.mapred.datatable}"/>
133 26600 sandro.lab
134 54151 claudio.at
    <bean id="wfNodePrepareStatsParams"
135
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareStatsParamJobNode"
136
          scope="prototype"/>
137 29397 claudio.at
138 54151 claudio.at
    <bean id="wfNodePrepareLodParams"
139
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareLodParamJobNode"
140
          scope="prototype"/>
141 26600 sandro.lab
142 54151 claudio.at
    <bean id="wfNodeFinalizeIndexFeeding"
143
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FinalizeIndexJobNode"
144
          scope="prototype"/>
145 28824 claudio.at
146 54151 claudio.at
    <bean id="wfNodeSwitchIndexes"
147
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.SwitchIndexesJobNode"
148
          scope="prototype"/>
149
    <bean id="wfNodeSwitchSearchService"
150
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.SwitchSearchServiceJobNode"
151
          scope="prototype"/>
152 42959 alessia.ba
153 54151 claudio.at
    <!-- DEDUP -->
154 37200 claudio.at
155 54151 claudio.at
    <!-- 	<bean id="wfNodeConfigureOfflineDataLoad" -->
156
    <!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.dedup.ConfigureOfflineDataLoadJobNode" -->
157
    <!-- 		scope="prototype" />		 -->
158 37200 claudio.at
159 54151 claudio.at
    <!-- 	<bean id="wfNodeDefineHBaseDedupSchema" -->
160
    <!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.dedup.DefineHBaseDedupSchemaJobNode" -->
161
    <!-- 		scope="prototype" /> -->
162 37200 claudio.at
163 54151 claudio.at
    <!-- / DEDUP -->
164 37200 claudio.at
165 27525 claudio.at
166 54151 claudio.at
    <bean id="wfNodePrepareIisMainParamsV2"
167
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareIISMainParamsV2JobNode"
168
          scope="prototype" p:xqueryMdStoreService="${dnet.openaire.iis.mdstore.endpoint.xquery}"
169
          p:xqueryDatasetStore="${dnet.openaire.iis.mdstore.dataset.xquery}"
170
          p:xqueryObjectStores="${dnet.openaire.iis.objecstores.xquery}"
171
          p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"
172
          p:xqueryIsLookupService="${dnet.openaire.iis.islookup.endpoint.xquery}"/>
173 43601 claudio.at
174 54151 claudio.at
    <bean id="wfNodePreparePreprocessParamsV2"
175
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareIISPreprocessingParamsV2JobNode"
176
          scope="prototype" p:xqueryDatabaseService="${dnet.openaire.iis.dbservice.endpoint.xquery}"
177
          p:xqueryMdStoreService="${dnet.openaire.iis.mdstore.endpoint.xquery}"
178
          p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"
179
          p:xqueryDatasetStore="${dnet.openaire.iis.mdstore.dataset.xquery}"
180
          p:xqueryWosMDStore="${dnet.openaire.iis.mdstore.wos.xquery}"
181
          p:xqueryDataciteObjectStore="${dnet.openaire.iis.objecstores.dataset.xquery}"
182
          p:xqueryWosObjectStore="${dnet.openaire.iis.objecstores.wos.xquery}"
183
          p:xqueryIsLookupService="${dnet.openaire.iis.islookup.endpoint.xquery}"/>
184 28304 alessia.ba
185 54151 claudio.at
    <bean id="wfNodeIISCacheBuilder"
186
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.IISCacheBuilderJobNode"
187
          scope="prototype" p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"/>
188 43601 claudio.at
189 54151 claudio.at
    <bean id="wfNodeDownloadFromMetadataOpenaire"
190
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.objectStore.DownloadFromMetadataOpenaire"
191
          scope="prototype"/>
192 43591 claudio.at
193 54151 claudio.at
    <bean id="wfNodePatchHostedBy"
194
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.PatchHostedByJobNode"
195
          scope="prototype" p:mappedResultSetFactory-ref="mappedResultSetFactory"
196
          p:resultSetClientFactory-ref="resultSetClientFactory"/>
197 32838 sandro.lab
198 54151 claudio.at
    <bean id="wfNodeFindHostedBy"
199
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.FindHostedByJobNode"
200
          scope="prototype" p:mappedResultSetFactory-ref="mappedResultSetFactory"
201
          p:resultSetClientFactory-ref="resultSetClientFactory"/>
202 34379 claudio.at
203 54151 claudio.at
    <bean id="wfNodeUpsertHostedByApis"
204
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.UpsertHostedByApisJobNode"
205
          scope="prototype"/>
206 34379 claudio.at
207 54151 claudio.at
    <bean id="wfNodeSplitDatasetRecord"
208
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.datacite.SplitDatasetRecord"
209
          p:resultSetClientFactory-ref="resultSetClientFactory" scope="prototype"/>
210 34379 claudio.at
211 54151 claudio.at
    <bean id="wfNodeCollectDatasetsByJournal"
212
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.datacite.CollectDatasetsByJournalJobNode"
213
          p:resultSetClientFactory-ref="resultSetClientFactory" scope="prototype"/>
214 34379 claudio.at
215 54151 claudio.at
    <!-- Stats -->
216
    <bean id="wfNodeFindStatsService"
217
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.FindStatsServiceJobNode"
218
          scope="prototype"/>
219 28304 alessia.ba
220 54151 claudio.at
    <bean id="wfNodePromoteShadowStats"
221
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.PromoteShadowStatsJobNode"
222
          scope="prototype"/>
223 34379 claudio.at
224 54151 claudio.at
    <bean id="wfNodeRefreshShadowCache"
225
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.RefreshShadowCacheJobNode"
226
          scope="prototype"/>
227 34379 claudio.at
228 54151 claudio.at
    <bean id="wfNodeValidateShadowStats"
229
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.ValidateShadowStatsJobNode"
230
          scope="prototype"/>
231 34379 claudio.at
232 54151 claudio.at
    <bean id="wfNodeBackupStatsCache"
233
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.BackupStatsCacheJobNode"
234
          scope="prototype"/>
235 34379 claudio.at
236 54151 claudio.at
    <bean id="wfNodeRestoreStatsCache"
237
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.RestoreStatsCacheJobNode"
238
          scope="prototype"/>
239 34379 claudio.at
240 54151 claudio.at
    <bean id="wfNodePromoteShadowCacheStats"
241
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.PromoteShadowCacheStatsJobNode"
242
          scope="prototype"/>
243 34379 claudio.at
244 54151 claudio.at
    <bean id="wfNodeMigrateStatsCache"
245
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.MigrateStatsCacheJobNode"
246
          scope="prototype"/>
247 34379 claudio.at
248 54151 claudio.at
    <bean id="wfNodeRunMDStorePlugin"
249
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.RunMDStorePluginJobNode"
250
          scope="prototype"/>
251 36274 alessia.ba
252 54151 claudio.at
    <!-- Contexts -->
253
    <bean id="wfNodeProcessContexts"
254
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.ProcessContextsJobNode"
255
          scope="prototype"/>
256 40491 michele.ar
257 54151 claudio.at
    <bean id="wfNodePrepareContextDbEntries"
258
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.PrepareContextDbEntriesJobNode"
259
          scope="prototype"/>
260 40491 michele.ar
261 54151 claudio.at
    <bean id="wfNodeSaveContextProfile"
262
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.SaveContextProfileJobNode"
263
          scope="prototype"/>
264 40491 michele.ar
265 54151 claudio.at
    <bean id="wfNodeCheckHDFSCounts"
266
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.CheckHDFSCountJobNode"
267
          scope="prototype"/>
268 40491 michele.ar
269 54151 claudio.at
    <!-- Data Flow Monitoring -->
270
    <bean id="wfNodeTriggerPrepublicMonitoringScenario"
271
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.dataFlowMonitoring.TriggerPrepublicMonitoringScenarioJobNode"
272
          scope="prototype"/>
273
    <bean id="wfNodeTriggerIndexMonitoringScenario"
274
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.dataFlowMonitoring.TriggerIndexMonitoringScenarioJobNode"
275
          scope="prototype"/>
276 40491 michele.ar
277 54151 claudio.at
    <bean id="wfNodeFeedMissingClaims"
278
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FeedMissingClaimsJobNode"
279
          p:queue-ref="recentResultsQueue" p:oafToIndexRecordFactory-ref="apiOafToIndexRecordFactory"
280
          scope="prototype"/>
281 40491 michele.ar
282
283 54151 claudio.at
    <bean id="wfNodePrepareHostedbyUpdateSQL"
284
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.PrepareHostedbyUpdateSQL"
285
          scope="prototype"/>
286 41128 alessia.ba
287 54151 claudio.at
    <bean id="wfNodeVREPost"
288
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.vre.VREPostJobNode"
289
          scope="prototype"/>
290 41874 alessia.ba
291 54151 claudio.at
    <bean id="wfNodeGenerateFETContext"
292
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.GenerateFETH2020ContextJobNode"
293
          scope="prototype"/>
294 42244 claudio.at
295 54151 claudio.at
    <bean id="listActionManagerSetsValues" lazy-init="true"
296
          class="eu.dnetlib.functionality.modular.ui.workflows.values.ListActionManagerSetsValues"
297
          p:name="actionSets"/>
298 47679 alessia.ba
299 54151 claudio.at
    <bean id="wfNodeApplyClaimRels"
300
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.ApplyClaimRelsJobNode"
301
          scope="prototype"/>
302 48027 alessia.ba
303 54151 claudio.at
    <bean id="wfNodeApplyClaimUpdates"
304
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.ApplyClaimUpdatesJobNode"
305
          scope="prototype"/>
306 48139 alessia.ba
307 54151 claudio.at
    <bean id="wfNodeFilterManagedDatasources"
308
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.FilterManagedDatasourcesJobNode"
309
          scope="prototype"/>
310 50489 michele.ar
311 52913 sandro.lab
312
    <bean id="wfNodeExtractOutputPath"
313
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.ExtractOutputPathJobNode"
314
          scope="prototype"/>
315
316 54151 claudio.at
    <bean id="wfNodeLoadBulkTaggingConfiguration"
317
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.bulktag.LoadBulkTaggingConfigurationJobNode"
318
          p:xquery="${dnet.openaire.bulktag.xquery}"
319
          scope="prototype"/>
320
321
    <!-- Consistency nodes -->
322
    <bean id="wfNodeFixRepoMdstoreSizes"
323 53478 michele.ar
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FixRepoMdstoreSizesJobNode"
324
          scope="prototype"/>
325 54151 claudio.at
326
    <bean id="wfNodeVerifyMdStoreSizes"
327 53478 michele.ar
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.VerifyMdStoreSizesJobNode"
328
          scope="prototype"/>
329 53297 miriam.bag
330 54151 claudio.at
    <bean id="wfNodeFindInvalidRepoProfiles"
331 53521 michele.ar
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidRepoProfilesJobNode"
332
          scope="prototype"/>
333 54151 claudio.at
334
    <bean id="wfNodeFindInvalidMetaWorkflows"
335 53542 michele.ar
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidMetaWorkflowsJobNode"
336
          scope="prototype"/>
337 53521 michele.ar
338 54151 claudio.at
    <bean id="wfNodeFindInvalidWorkflows"
339 53542 michele.ar
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidWorkflowsJobNode"
340
          scope="prototype"/>
341 54151 claudio.at
342
    <bean id="wfNodeFindInvalidStores"
343 53542 michele.ar
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidStoresJobNode"
344
          scope="prototype"/>
345
346 54168 claudio.at
    <bean id="wfNodeFetchOntologies"
347 54151 claudio.at
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.FetchOntologiesJobNode"
348
          scope="prototype"/>
349
350 26600 sandro.lab
</beans>