Top Banner
Fast-Switch Integration Scenarios Between SAP PI Runtimes SAP NW Know-How Network Conference Series Jin Shin, SAP NW RIG US July 14, 2010
37

Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Apr 24, 2015

Download

Documents

Swarup Sawant
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Fast-Switch Integration ScenariosBetween SAP PI RuntimesSAP NW Know-How Network Conference Series

Jin Shin, SAP NW RIG USJuly 14, 2010

Page 2: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 2

1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary

Agenda

Page 3: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Global PI Landscape

DB

Adapter EngineAE1

DB

Adapter EngineXE1

DB

Integration ServerXYZ

DB

Adapter EngineAE3

DB

Adapter EngineAE2

DB

Integration ServerABC

Page 4: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Factors Leading to Distributed (“Federated”)PI Landscape

Customer-driven reasons that lead to federationSeparation of A2A and B2B processes

For security reasons internal (A2A) and external (B2B) communication are separated ontodifferent PI/XI systems

Separation by process typesSeparate PI/XI systems for different process types

Organizational RequirementsDifferent PI/XI systems shall reflect the business strategy or company setup

Business Continuity (specific use case: synchronization)Bypass the non-availability of a PI/XI system caused by maintenance activities or systemoutages via a redundant/second PI/XI systemBoth PI/XI systems must offer an identical set of services (system duplication)

Page 5: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

RIG Checklist from Diverse CustomerWorkshops

Reasons for Central PI:Reduced effort in regards to: operations, maintenance and monitoringOne source of truthEconomics of scaleIn companies which are mainly common and have already centrally organized processes

Reasons for Federated PI:Network constraintsSeparated company divisions (more than 90% communication in the own division)Geographically distributed and organized organization (more than 90% communication in onearea)Downtime constraints and no overlapping downtime period across whole company divisions(or impossible to organize)

Mixed approaches and the reasons:One PI for central processes (HR, Financials, Master data) and decentral PI´s for divisions.

Page 6: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

SAP PI 7.1 ff with DAE´s (switch of mainly sync portal scenariosfrom DAE1 to DAE2 with dispatcher in case of planned downtime)

PI1 PI3

PI4 Appl. 3 (ABAP+Java)

PI4CI+CAE

PI4 (Web Dispatcher)

Cluster

PI4 DAE1(DB + Java)

Sync. interfaces

RI4 DAE2(DB + Java)

AI4 DAE2(DB + Java)

PRD DAE1(DB + Java)

PI2

Development Test Production

Production Production

Preprod

Dispatcher

url 1

url 2

url 3url 3

url 2

url 1

Page 7: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Architecture of SAP PI (4 SID´s with 1 global and 3 regionalPI´s for central development and decentral runtime)

SAP

PI (US)

WebDispatcher

PI (EMEA)

WebDispatcher

PI (APJ)

WebDispatcher

SAP SAP

GlobalSLD

Other SAPComponentsusing SLDD PI (Global)

WebDispatcher SAP

Global 1

SAPGlobal 2

PI instancesconnected via

Web Dispatcher

Master datadistribution via

Global PI toregional SAP

systems

Master DataTransactional Data

SLD sync

Page 8: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

SAP PI with DAE and J2SE´s(for global and local execution)

Palo Alto New York EMEA

> 25 apps < 5 apps

Dallas

~10 apps

J2SE J2SEDAE

PI (Global)

SAP ECC

100+Interfaces

~50Interfaces

< 10Interfaces

Page 9: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 9

1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary

Agenda

Page 10: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Use Cases for Fast-Switching between PIRuntimes

Primary Use Case for Runtime Engine SwitchBusiness Continuity

Facilitate in minimizing planned downtimes (e.g. system maintenance activities)Not a replacement for HA where automatic failover takes place in unplanned downtimes

Secondary Use CaseQuickly switchover between AEs (e.g. when new De-central AEs deployed)

Available PI Runtimes:Adapter Engine (e.g. Central and De-central AE)

Especially starting with AAE (7.1 EHP1) – more autonomous runtime with local UMEMore distribution and deployments foreseen for AAE compared to previous releases

Integration ServerEither completely redundant PI system or specific scenario duplication (e.g. missioncritical processes)

AEX (Advanced Adapter Engine Extended – planned for 7.3 release)No ccBPM scenarios

Page 11: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Fast-Switching Tools and Scope

ToolsDirectory APISAP Web Dispatcher

ScopeSwitch to separate adapter engine

AAE local processing scenarios– Standard adapter engine technical adapters (except RFC)

Switch to separate PI instanceStandard adapter engine technical adapters (except RFC)ABAP based adapters (except IDoc)

Page 12: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Fast-Switching Process Summary

Switch to separate adapter engineStop AE channels planned for switchoverExecute mass channel switchover to different AE via Dir API enabled application

Without activation to validate changes (especially in initial usage)Activate channels (if necessary)Adjust Web Dispatcher configuration to route sender requests to different AE

* Requires at least one De-central AE

Switch to separate PI instanceStart AE channels planned for switchoverAdjust Web Dispatcher configuration to route sender HTTP requests to different PI instance

* Requires at least one additional PI instance* Requires ES Repository, ID, and SLD landscape content sync as prerequisite

Page 13: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Restrictions

RestrictionsNo RFC protocol-based scenarios (e.g. IDoc/RFC)EOIO scenarios may be executed in wrong order, as the sequence is not synchronizedbetween different runtimes. The quality of service is only guaranteed for one runtime.Solution: stop until empty and the execute switch.EO scenarios may have duplicates. Solution: stop until empty and the execute switch.Outstanding acknowledgements must be receivedNo ccBPM scenarios when switching to AAE or AEXFile Adapter – Transport Protocol “File System (NFS)”

Values for Source/Target Directory should avoid local values (e.g. /data or D:/data)Otherwise, switch to new AE will process local server file systemUse a shared location (e.g. //<server>/data); may require permissions for <SID>adm andSAPService<SID> users)

***Need comprehensive planning and strict procedures when switching betweenruntimes.

Page 14: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 14

1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary

Agenda

Page 15: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Directory API

Integration Directory Programming Interface (Directory API) allows for :Mass maintenance of ID contentOption to create your own views to maintain individual ID contentExposed as web servicesAvailable on all XI/PI releases (different API version depending on release)

Purpose in Fast-Switching ContextMain goal: Switch AE designation using Dir API services

Page 16: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Required Dir API Services

1. Communication Channel service

2. Change List service

Different versions depending upon release:

Page 17: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

WSDLs Source

1. Enterprise Services Repository (ES Repository)

2. Web Service Navigator (WS Navigator)

Page 18: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Service Call Sequence Details

Change List CreateExplicitly specify a change list to keep all newly changed communication channel objects in a single change list

Communication Channel QueryBasically a search operationResponse serves as input for next Read operation

Communication Channel ReadCC elements (party, component, channel) require an exact match in order for communication channel object details to bereturned. No wildcards allowed; 0..unbounded cardinality.Response serves as input for next Change operationPassword attribute values are not returned in the Read response

Communication Channel ChangeNo delta handling of attribute changes (exception – password attributes for 7.1 EHP1). All attributes must be included in theChange request – like a Create operation.Password Handling (must be supplied in Change request (3.0, 7.0, 7.1); Delta handling (7.1 EHP1 and beyond) – existingpasswords are kept

Change List ActivateChangeListID from initial Change List Create operation should be used.Activation should be optional – opportunity to check objects in ID before activation

CommunicationChannel Query

CommunicationChannel Read

CommunicationChannel Change

Change ListActivateChange List Create

Page 19: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 19

1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary

Agenda

Page 20: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

SAP Web Dispatcher

Purpose in Fast-Switching ContextRoute sender application HTTP requests to a different PI runtimeNon-disruptive manner – sender applications can always point to one addressCentral change in one place to route to PI runtime address

For HTTP Requests OnlySOAP (Adapter Engine)HTTP (Integration Engine)Proxy (Integration Engine)

© SAP 2008 / Page 20

Page 21: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Sample Landscape with Web Dispatcher

SAP

Web Dispatcher

PI1

IntegrationEngine

Central AdapterEngine

PI2

IntegrationEngine

Central AdapterEngine

DI1

DecentralAdapter Engine

Non-SAP

SOAP

HTTP | XI Proxy

Page 22: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Web Dispatcher for Multiple Systems

Starts from Release 7.2Multiple backend system support currently only for 7.2 backends “officially”Multiple backend system support to lower releases technically possibleOfficial support planned

Check Note 908097 – “SAP Web Dispatcher: Released releases and applying patches”

Mechanisms for Separating RequestsModification Handler (rules, conditions, variables)Access Point (combination of host name and port)URL Prefix (identify requests based URL prefixes)

For the specific purpose of routing requests to a “switched” PI runtime, only theModification Handler and Access Point mechanisms are relevant since theURL prefixes used for the various SAP PI runtimes would be the same whenperforming a switch.

© SAP 2008 / Page 22

Page 23: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Modification Handler

Modifications of HTTP RequestsManipulation of HTTP header fields in a request (append, remove, change)Filtering requests (by creating an error page)Redirecting requests to another pageManipulation of URL values (path and query string)Use of regular expressions for increased flexibilityConditional logicDefine rules in sepate rules action file

Fast-Switching ContextBuild conditions based on HTTP host header field

Variable %{HTTP_HOST} holds HTTP host header in requestHost aliases created in advance for Web Dispatcher systemInternal property x-sap-webdisp-target-sid set to target system conditionally according hostheader

© SAP 2008 / Page 23

Page 24: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Configure Web Dispatcher for Normal Usage

Configure Web Dispatcher for Normal UsageSpecify the rules file (WD profile configuration)Define rules to route requests to target systems (e.g. below);

#PI1 requestsif %{HTTP_HOST} regimatch wd_pi1*SetHeader x-sap-webdisp-target-sid PI1 [break]#PI2 requestsif %{HTTP_HOST} regimatch wd_pi2*SetHeader x-sap-webdisp-target-sid PI2 [break]#DI1 requestsif %{HTTP_HOST} regimatch wd_di1*SetHeader x-sap-webdisp-target-sid DI1 [break]

© SAP 2008 / Page 24

Page 25: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Configure Web Dispatcher in Switch Scenario

Configure Web Dispatcher in Switch ScenarioSimple edit to the rules fileModify property x-sap-webdisp-target-sid to switched target systemExample – switch from PI1 to DI1:

Old Value:if %{HTTP_HOST} regimatch wd_pi1*SetHeader x-sap-webdisp-target-sid PI1 [break]

New Value:if %{HTTP_HOST} regimatch wd_pi1*SetHeader x-sap-webdisp-target-sid DI1 [break]

© SAP 2008 / Page 25

Page 26: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Access Point

Access Point of the Web DispatcherUnique access point for each connected systemConfigured based on ports and/or IP addresses (if available)

Fast-Switching ContextRequests routed to connected PI system based on which WD access point used by senderE.g. – one IP address or hostname can be used w/ multiple portsSRCSRV property of WD parameter wdisp/system_<xx> used to map ports to connected PIsystems

© SAP 2008 / Page 26

Page 27: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Configuring Web Dispatcher Ports (NormalUsage)

Configuring Web Dispatcher Access Point (Ports) for Normal UsageAdditional ports configured in WD profile using parameter icm/server_port_<xx>

icm/server_port_0 = PROT=HTTP, PORT=<wd_port_1>icm/server_port_1 = PROT=HTTP, PORT=<wd_port_2>

Map ports to connected PI systems using parameter wdisp/system_<xx>

wdisp/system_0 = SID=PI1, MSHOST=<host_pi1>, MSPORT=<ms_pi1_port>,SRCSRV=*:<wd_port_1>

wdisp/system_1 = SID=DI1, MSHOST=<host_di1>, MSPORT=<ms_di1_port>,SRCSRV=*:<wd_port_2>

Property SRCSRV is used to indicate which Web Dispatcher port is mapped to the targetsystem.Wildcard character ‘*’ indicates that any valid Web Dispatcher IP address or host alias canbe used.

© SAP 2008 / Page 27

Page 28: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Configuring Web Dispatcher Ports (SwitchScenario)

Configuring Web Dispatcher Access Point (Ports) for Switch ScenarioSimple edit to the WD profileModify port to system mapping assignment for configured parameter wdisp/system_<xx>Example – Switch from PI1 to DI1

Old Value:wdisp/system_0 = SID=PI1, MSHOST=<host_pi1>, MSPORT=<ms_port_pi1>,SRCSRV=*:<wd_port_1>

New Value:wdisp/system_0 = SID=DI1, MSHOST=<host_di1>, MSPORT=<ms_port_di1>,SRCSRV=*:<wd_port_1>

SRCSRV property remains unchanged since this is the entry port for PI1 requests.All other existing rules should remain in place.Requests coming through port <wd_port_1> will now go to DI1.

© SAP 2008 / Page 28

Page 29: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 29

1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary

Agenda

Page 30: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Summary

Fast-switching for business continuity under federated PI contextUse existing technology to facilitate in minimizing planned downtimesMore De-central AAE deployments foreseen w/ added mediation features and moreautonomous status

Many common SAP NetWeaver PI integration scenarios qualify for fast-switchingSome restrictions apply (e.g. RFC based scenarios, exhaust EO/EOIO queues)

Main RequirementsDirectory APIDispatcher (e.g. SAP Web Dispatcher 7.2)De-central AE (w/ local UME); separate PI instanceESR/ID content sync (for PI instance and AEX switchovers)

© SAP 2008 / Page 30

Page 31: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 31

Further Information

SAP Help Portal:

SAP TechEd 2010

SAP SDN Community

Integration Directory Programming Interface

SAP Web Dispatcher for Multiple Systems

Session PMC212: Federated Process Integration - Robust and Scaling SAPNetWeaver PI Landscapes (Berlin, Las Vegas)

How-to Guides (Coming Soon):

How To... Fast-Switch Integration Scenarios Between SAP PI RuntimesPart I: Directory API

How To... Fast-Switch Integration Scenarios Between SAP PI RuntimesPart II: Web Dispatcher

Page 32: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 32

Thank you!

Page 33: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 33

Appendix

Page 34: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Near Zero Downtime Maintenance for SAPNetWeaver PI 7.1

Business valueProcedure for application of Support Package Stacks on PI system with businessdowntime reduced to one system restart

This holds for updating the SAP software – OS or DB updates not included

Update is performed on mirror system while production system is still available untilfinal switch to new SP level

All standard PI scenarios are fully available. Examples:Synchronous/asynchronous messagesEOIO, ccBPMIDOC, PlainHTTP, file adapter,…Mapping (including value mapping)

Page 35: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

Normal productionNo restrictions

Normal productionNo restrictions

Near Zero Downtime Maintenance for SAPNetWeaver PI: Mirror update with back copy

Customer System Mirror System

Copied Customer System

Clone productive systemexcept XPI processing data

SP nSP n

SP n+mSP n+m

SP nSP n

SP nSP n

SP n+mSP n+m

Normal productionNo restrictions

Normal productionNo restrictions

Restricted productionOnly allow XPI

processing(all scenarios)

No non-XPI changeoperations

No config changes/design time changes

Restricted productionOnly allow XPI

processing(all scenarios)

No non-XPI changeoperations

No config changes/design time changes

Standard updateApply SP on mirror

systemXPI processing data

is not affected

Standard updateApply SP on mirror

systemXPI processing data

is not affected

System downStop production

Switch shadow tables

System downStop production

Switch shadow tables

Back copyCopy back DB tables

not containing XPIprocessing data

Use shadow tablesas copy target

Back copyCopy back DB tables

not containing XPIprocessing data

Use shadow tablesas copy target

Copy back DBexcept XPI processing data

t

Page 36: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 36

Further Information – Near Zero Downtime

SAP SDN CommunityMinimizing Downtime for SAP Software Maintenance

Business Continuity – Best Practices to avoid “Unplanned Downtime” –Webinar Presentation

Page 37: Fast-Switch Integration Scenarios to a Different SAP PI Runtime - Webinar Presentation

© SAP 2008 / Page 37

Copyright 2008 SAP AGAll rights reserved

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changedwithout prior notice.

Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.

SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge and other SAP products and services mentioned herein as well as their respective logos aretrademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned and associated logos displayedare the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.

The information in this document is proprietary to SAP. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This documentcontains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy,and/or development. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, orother items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties ofmerchantability, fitness for a particular purpose, or non-infringement.

SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitationshall not apply in cases of intent or gross negligence.

The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in thesematerials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages

Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrückliche schriftliche Genehmigung durchSAP AG nicht gestattet. In dieser Publikation enthaltene Informationen können ohne vorherige Ankündigung geändert werden.

Einige von der SAP AG und deren Vertriebspartnern vertriebene Softwareprodukte können Softwarekomponenten umfassen, die Eigentum anderer Softwarehersteller sind.

SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge und andere in diesem Dokument erwähnte SAP-Produkte und Services sowie diedazugehörigen Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und in mehreren anderen Ländern weltweit. Alle anderen in diesem Dokument erwähnten Namenvon Produkten und Services sowie die damit verbundenen Firmenlogos sind Marken der jeweiligen Unternehmen. Die Angaben im Text sind unverbindlich und dienen lediglich zuInformationszwecken. Produkte können länderspezifische Unterschiede aufweisen.

Die in diesem Dokument enthaltenen Informationen sind Eigentum von SAP. Dieses Dokument ist eine Vorabversion und unterliegt nicht Ihrer Lizenzvereinbarung oder einer anderenVereinbarung mit SAP. Dieses Dokument enthält nur vorgesehene Strategien, Entwicklungen und Funktionen des SAP®-Produkts und ist für SAP nicht bindend, einen bestimmtenGeschäftsweg, eine Produktstrategie bzw. -entwicklung einzuschlagen. SAP übernimmt keine Verantwortung für Fehler oder Auslassungen in diesen Materialien. SAP garantiert nicht dieRichtigkeit oder Vollständigkeit der Informationen, Texte, Grafiken, Links oder anderer in diesen Materialien enthaltenen Elemente. Diese Publikation wird ohne jegliche Gewähr, wederausdrücklich noch stillschweigend, bereitgestellt. Dies gilt u. a., aber nicht ausschließlich, hinsichtlich der Gewährleistung der Marktgängigkeit und der Eignung für einen bestimmten Zwecksowie für die Gewährleistung der Nichtverletzung geltenden Rechts.

SAP übernimmt keine Haftung für Schäden jeglicher Art, einschließlich und ohne Einschränkung für direkte, spezielle, indirekte oder Folgeschäden im Zusammenhang mit der Verwendungdieser Unterlagen. Diese Einschränkung gilt nicht bei Vorsatz oder grober Fahrlässigkeit.

Die gesetzliche Haftung bei Personenschäden oder die Produkthaftung bleibt unberührt. Die Informationen, auf die Sie möglicherweise über die in diesem Material enthaltenen Hotlinkszugreifen, unterliegen nicht dem Einfluss von SAP, und SAP unterstützt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerlei Gewährleistungen oder Zusagen überInternetseiten Dritter ab.

Alle Rechte vorbehalten.