JAVA-Maping Doubts--Urgetn

Hi Frnds,
i am working on JAVA Mapping, recently i started but when i started working i have some issues...
1)With out main method how to execute JAVA Mapping, i got one link  i am trying to implement the scenario,i am terying to comile java code but its not compiling , bcz no main method, how executeJAVA Mapping.
2) Whats the use of Stream Transformation interface.
3) whats the use of Mapping Trace,Abstarct Trace.
Please solve my above doubts...
Regards,
Raja Sekhar
please

Hi,
The runtime environment for Java mappings has an mapping API. To use Java mapping, you must define a Java class that implements the Java interface com.sap.aii.mapping.api.StreamTransformation. This interface has two methods:
public void execute(java.io.InputStream in, java.io.OutputStream out)
At runtime, the Integration Engine calls this method to execute a mapping. This method contains an input stream for the source document and an output stream for the target document as parameters. These streams are usually XML documents. You can import the substructures to be converted from the input stream and output the converted target document in the output stream.
●     public void setParameter(java.util.Map param)
The Integration Engine transfers parameters to the mapping program with this method. It evaluates these parameters at runtime in the method execute(). This enables you to control the process flow of the mapping.
The transferred object that implements the Java interface java.util.Map contains seven key/value pairs as parameters. These correspond to corresponding fields in the message header. Apart from the MAPPING_TRACE constant, the value objects are of type java.lang.String. The key objects are defined in the class com.sap.aii.mapping.api.StreamTransformationConstants
for more info
http://help.sap.com/saphelp_nw04/helpdata/en/a4/64b93d0d4e6b3be10000000a114084/frameset.htm

Similar Messages

  • Java Maping and ABAP Mapping

    Hello,
    Pls let me know about Java Maping and ABAP Mapping
    Also pls provide good simple scenario blogs for Java Maping and ABAP Mapping.
    Regards

    Hi Ranchit,
    Check these links for Mappings
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9202d890-0201-0010-1588-adb5e89a6638
    https://websmp102.sap-ag.de/~sapdownload/011000358700003604872004E/MappingXI30.pdf  (Need Service Makrket place ID)
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/8a57d190-0201-0010-9e87-d8f327e1dba7
    JAVA Mapping BLOGS
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
    /people/stefan.grube/blog/2006/10/23/testing-and-debugging-java-mapping-in-developer-studio
    ABAP Mapping Blogs
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e3ead790-0201-0010-64bb-9e4d67a466b4
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    Sachin
    Message was edited by:
            Sachin Dhingra

  • Where do i post java script doubts?

    Where do i post java script doubts?

    JavaScript has nothing to with Java at all, so if you are searching for a sub-forum of this forum to post JavaScript questions then I can't help you.
    You will need to google for a JavaScript forum, maybe someone around here knows of a good one.

  • Java card doubts..

    Hello all,
    I am trying to understand the concept of java card , I have some doubts , I want to share with , perhaps you would any best suggestion for me.
    //Jcop-  I read somewhere that Java Card OpenPlatform (JCOP) is a smart card operating system for the Java Card platform developed by IBM Zürich Research Laboratory.
    question 1 - if this above sentence is right it means jcop is an operating system developed by IBM, handle all operation inside the card.right? I have a card which indicate
    ATR like- 3b 89 80 01 4a ....40 ( in character form it indicate- ;---jcop41v22m) , so can i say? this is a card which o.s is made by IBM. and we require only and only JCOP tool to send cap inside this card because OS inside is JCOP and jcop tool would be the only option to talk to jCOp card?
    question 2 - or is there any other method by which i can send the applet inside my card?
    enable_trace
    establish_context
    card_connect
    select -AID a0000000030000
    open_sc -security 1 -keyind 0 -keyver 0 -mac_key 404142434445464748494a4b4c4d4e4f -enc_key 404142434445464748494a4b4c4d4e4f // Open secure channel
    delete -AID D0D1D2D3D4D50101
    delete -AID D0D1D2D3D4D501
    delete -AID D0D1D2D3D4D50101
    install -file helloworld.cap -nvDataLimit 500 -instParam 00 -priv 2
    # getdata
    # close_sc // Close secure channel
    # putkey // Put key
      // options:
      //          -keyind Key index
      //          -keyver Key version
      //          -key Key value in hex
    card_disconnect
    release_context
    question 3 - above code i got from gpshell 1.4.4 , the code style indictate that this is also a method tp send cap file inside the java card, I want to know that for my card case { atr is -3b 89 80 01 4a ....40 ( in character form it indicate- ;---jcop41v22m)} , I can apply gpshell to send .cap file in my card.
    question 4 - is gpshell is used to send cap into a special java card which is not jcop enable or which does not contaion jcop operating system?
    there are so many techniques , so many type of java card, it makes me confuse , I hope you seems this question genuine and would give me revert back
    regards:-
    Edited by: daniel on Feb 29, 2012 10:08 AM

    Alright, I'll awnser your questions my best.
    Question 1 :
    Yes, you could say that. However, i'm using a J2A080 card(JCOP card) and i'm not using the jcop tool kit.
    I use eclipse with EclipseJCRE add on to develop my application, since there is a JavaCard emulator in it, you can test it witout installing your applet everytime you make a modification.
    Question 2-3 :
    GPShell is a nice tool for card communication, but i would also suggest you GPJ. Specially if you start with java cards because it is way more easier. It works with my J2A080 and have been tested with your card type and should work. You just have to generate the cap file with eclipse and load it with GPJ
    Question 4 :
    I'm not sure about that but I think GPShell can works for pretty much all type of card that has OpenPlatform on it.
    But it is more complicated to find the good keys and get the good options at the good places, that is why I recomand you GPJ.
    Hope it helps you out!
    P.S. Pay attention to the JavaCard platform supportd by the card, yours is 2.2.1. If you try to build CAP file with an other version installed, it may not work properly.
    Edited by: FrancisOL on Feb 29, 2012 11:22 AM

  • JAVA Maping.... Scenario's

    Hi Frnds
    anyone share the Document about JAVA Mapping, and some useful links...
    and Blogs..
    Regards,
    Raja

    Hi,
    Java Mapping
    Java mapping can be used when you have complex mapping structures.
    We can do most of the times for our requirements through Graphical mapping.
    When the structures are very complex to build you can go for SAX (Simple API for XML) or DOM (Document Object Model) parsers.
    Message mapping internally generates DOM parser.
    Java Mapping in XI
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=java+mapping&adv=false&sortby=cm_rnd_rankvalue#
    SAP Network Blog: Implementing a Java Mapping in SAP PI
    /people/carlosivan.prietorubio/blog/2007/12/21/implementing-a-java-mapping-in-sap-pi
    Java Mapping (SAP Library - Partner Connectivity Kit)
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/frameset.htm
    SAP Network Blog: XI Java Mapping Helper (DOM)
    /people/alessandro.guarneri/blog/2007/03/25/xi-java-mapping-helper-dom
    SAP Network Blog: Testing and Debugging Java Mapping
    /people/stefan.grube/blog/2006/10/23/testing-and-debugging-java-mapping-in-developer-studio
    Binary Conversion in XI - Java Mapping - Code Gallery - Wiki
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/binary%2bconversion%2bin%2bxi%2b-%2bjava%2bmapping
    SAP Network Blog: "JAVA MAPPING", an alternate way of reading a CSV file
    /people/rahul.nawale2/blog/2006/07/18/java-mapping-an-alternate-way-of-reading-a-csv-file
    Difference in using java,xslt,message mapping
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
    /people/ravikumar.allampallam/blog/2005/06/24/convert-any-flat-file-to-any-idoc-java-mapping
    /people/amol.joshi2/blog/2006/03/10/think-objects-when-creating-java-mappings
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
    http://help.sap.com/saphelp_nw04s/helpdata/en/43/09b16006526e72e10000000a422035/frameset.htm
    /people/venkataramanan.parameswaran/blog/2006/12/12/java-mapping-to-handle-flat-files-in-sap-xi
    Thanks
    Swarup

  • Java maping and java proxies

    Hi
    Can i use in the java mapping proxies classes generated for interfaces?
    Or i can get in trouble because of library reference.
    Florin

    Proxies are essentially the APIs, or the programming lines of code, that are generated for the target application language like ABAP/JAVA/.Net.
    In some of the real time applications, each time it's not necessary to have particular Business Systems for send/ receive messages with SAP XI.
    Sap XI provides diff. options to generate interfaces with ABAP / Java Applications such as as Proxies.
    <b>ABAP Proxy :</b>
    1. With ABAP proxy generation function it will be possible to generate ABAP proxy objects to an SAP system from an interface description in the SAP Exchange Infrastructure Integration Repository.
    2. ABAP proxy objects can only be generated for SAP systems that are based on SAP Web Application Server 6.40.
    If you use ABAP Proxy , you can reduce the overhead calling the function again and again.
    /people/vijaya.kumari2/blog/2006/01/26/how-do-you-activate-abap-proxies - Activate Proxy
    /people/siva.maranani/blog/2005/04/03/abap-server-proxies - ABAP Server Proxy
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy - ABAP Client Proxy
    Re: JDBC Sender select/update problem
    <b>Java Proxy:</b>
    1. JAVA proxy is used for J2EE based systems communicating with XI for sending or processing msgs in those J2EE based systems
    2.It allows java applications to interact directly to Integration server with avoiding the configurations for the special adapters
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/7d4db211-0d01-0010-1e8e-9b07fc2113ab - How To Work with XI 3.0 Java Proxies
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/a068cf2f-0401-0010-2aa9-f5ae4b2096f9- Java Proxies and SAP XI - The Inside Story, Part 1
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f272165e-0401-0010-b4a1-e7eb8903501d - Java Proxies and SAP XI - The Inside Story, Part 2
    Please let me know if you need any more details on this.
    Reward Points if found useful **

  • Java program doubt

    Hello friends,
    what is the use of _ package_ and why only introduced in java ? what is the function of_ static_ keyword.

    The package keyword allows you to create your own packages similar to the current import packages that come with the JDK.
    e.g. import java.swing.*JOptionPane*;
    would import the JOptionPane class from the java.swing package allowing you to utilize the JOptionPane's predefined class and methods
    now in your case, say you want to package x amount of classes for what ever use that is intended (i.e. distribution, modulation, or just separating class for better debugging practice)
    once you package a class you would import it similar to the JOptionPane class:
    import examplePackage.*exampleClass*;
    or
    import examplePackage.*; (for all classes available to the examplePackage class)

  • Java Thread doubt

    i am having a code where i call notify(), but it notifies all the thread.. (i am not using notifyAll() ). please tell me what is the problem ... the code snippet is below
    class Waiter extends Thread
         Object n;
         public Waiter(Object not){
              this.n=not;
         public void run(){
              synchronized (n){
                   try{
                        System.out.println("before wait");
                        n.wait(4000);
                        System.out.println("after wait");
                   catch(InterruptedException ie){ie.printStackTrace();}
    class Notifier extends Thread{
         public void run(){
              synchronized(this){
                   System.out.println("Notifying");
                   notify();
    public class MainClassForThreads
         public static void main (String a[])
         Notifier n= new Notifier();
         //Object n = new Object();
         new Waiter(n).start();
         new Waiter(n).start();
         new Waiter(n).start();
         new Waiter(n).start();
    n.start();
    }

    BillJistson:
    Please use code tags when posting (more than a few lines of) source code (http://forum.java.sun.com/help.jspa?sec=formatting ).
    I'm also not aware that this is specified somewhere. Probably one of those spurious wakeups as mentioned in the JLS etc.?
    http://java.sun.com/docs/books/jls/third_edition/html/memory.html#17.8.1
    Whatever it turns out to be, the problems encountered here are due to a (common) bad practice: it is strongly recommended not only in Object.wait()'s Javadoc http://java.sun.com/javase/6/docs/api/java/lang/Object.html#wait() to always use a "wakeup" condition combined with a loop. If you do that, your example code works even when synchronizing on the Thread object itself (if you think that's necessary). But from a quick experiment it seems that the Notifier thread object notifyAll()'s/interrupts(?) all waiters periodically on my machine, and it's probably advisable to just use a dedicated monitor object if there isn't some other obvious synchronization instance...
    EDIT: Me dumb, I forgot that wait(4000)... just ignore the last sentence above. A Thread instance should be equally suited as a monitor as any other Object. I'm sorry if this caused confusion.
    See also: Spurios wakeups of Object.wait() ???
    http://forum.java.sun.com/thread.jspa?threadID=5206579
    Message was edited (2x, sorry) by:
    oebert: clarification/correction

  • MultiMapping Function Java Maping--Splitandmerger

    Hi Frnds,
    I am trying to develop multi mapping functionality using JAVA Mapping, I wrote the code But its not working ..
    I need to add the xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge to my output manually in DOM parcer code?? if i add that one its work fine??
    If anybody worked on same thing plese help me out..its very urgent.
    Regards,
    Raja Sekhar

    Hello Rajashekhar,
    As u r using DOM parser u would have applied the document method.
    chek this
    An implementation of DocumentBuilder is NOT guaranteed to behave as per the specification if it is used concurrently by two or more threads. It is recommended to have one instance of the DocumentBuilder per thread or it is upto the application to make sure about the use of DocumentBuilder from more than one thread
    probably thats the reason when u add the "xml:." it is able to execute.
    Hope this helps u out

  • Java basic doubt

    In java String is treated as object but when we pass the String value as a parameter to a method and reassigned the value of the object inside the method Still the initial object is not getting changed why ?
    public class A
         public void m(String a)
              a="ddd";
         public static void main (String a[])
              String a1 ="Sun";
              new A().m(a1);
              System.out.println(a1);
    out put : Sun
    Thanks,
    Suneesh

    Yes I got it only property changes in the object is
    getting reflected in the initial object's state .In
    this case the object itself assigned to another
    object . Am I right ??All parameters to methods are passed "by value." In other words, values of parameter variables in a method are copies of the values the invoker specified as arguments. If you pass a double to a method, its parameter is a copy of whatever value was being passed as an argument, and the method can change its parameter's value without affecting values in the code that invoked the method. For example:
    class PassByValue {
        public static void main(String[] args) {
            double one = 1.0;
            System.out.println("before: one = " + one);
            halveIt(one);
            System.out.println("after: one = " + one);
        public static void halveIt(double arg) {
            arg /= 2.0;     // divide arg by two
            System.out.println("halved: arg = " + arg);
    }The following output illustrates that the value of arg inside halveIt is divided by two without affecting the value of the variable one in main:before: one = 1.0
    halved: arg = 0.5
    after: one = 1.0You should note that when the parameter is an object reference, the object reference -- not the object itself -- is what is passed "by value." Thus, you can change which object a parameter refers to inside the method without affecting the reference that was passed. But if you change any fields of the object or invoke methods that change the object's state, the object is changed for every part of the program that holds a reference to it. Here is an example to show the distinction:
    class PassRef {
        public static void main(String[] args) {
            Body sirius = new Body("Sirius", null);
            System.out.println("before: " + sirius);
            commonName(sirius);
            System.out.println("after:  " + sirius);
        public static void commonName(Body bodyRef) {
            bodyRef.name = "Dog Star";
            bodyRef = null;
    }This program produces the following output: before: 0 (Sirius)
    after:  0 (Dog Star)Notice that the contents of the object have been modified with a name change, while the variable sirius still refers to the Body object even though the method commonName changed the value of its bodyRef parameter variable to null. This requires some explanation.
    The following diagram shows the state of the variables just after main invokes commonName:
    main()            |              |
        sirius------->| idNum: 0     |
                      | name --------+------>"Sirius"       
    commonName()----->| orbits: null  |
        bodyRef       |______________|At this point, the two variables sirius (in main) and bodyRef (in commonName) both refer to the same underlying object. When commonName changes the field bodyRef.name, the name is changed in the underlying object that the two variables share. When commonName changes the value of bodyRef to null, only the value of the bodyRef variable is changed; the value of sirius remains unchanged because the parameter bodyRef is a pass-by-value copy of sirius. Inside the method commonName, all you are changing is the value in the parameter variable bodyRef, just as all you changed in halveIt was the value in the parameter variable arg. If changing bodyRef affected the value of sirius in main, the "after" line would say "null". However, the variable bodyRef in commonName and the variable sirius in main both refer to the same underlying object, so the change made inside commonName is visible through the reference sirius.
    Some people will say incorrectly that objects are passed "by reference." In programming language design, the term pass by reference properly means that when an argument is passed to a function, the invoked function gets a reference to the original value, not a copy of its value. If the function modifies its parameter, the value in the calling code will be changed because the argument and parameter use the same slot in memory. If the Java programming language actually had pass-by-reference parameters, there would be a way to declare halveIt so that the preceding code would modify the value of one, or so that commonName could change the variable sirius to null. This is not possible. The Java programming language does not pass objects by reference; it passes object references by value. Because two copies of the same reference refer to the same actual object, changes made through one reference variable are visible through the other. There is exactly one parameter passing mode -- pass by value -- and that helps keep things simple.
    Quoted directly from:
    Arnold, K., Gosling J., Holmes D. (2000). The Java� Programming Language Third Edition. Boston: Addison-Wesley.
    I've said that java handles arrays and objects "by reference." Don't confuse this with the phrase "pass by reference." "Pass by reference" is a term used to describe the method-calling conventions of some programming languages. In a pass-by-reference language, values -- even primitive values -- are not passed directly to methods. Instead, methods are always passed references to values. Thus, if the method modifies its parameters, those modifications are visible when the method returns, even for primitive types.
    Java does not do this; it is a "pass by value" language. However, when a reference type is involved, the value that is passed is a reference. But this is not the same as pass-by-reference. If Java were a pass-by-reference language, when a reference type was passed to a method, it would be passed as a reference to the reference.
    Flanagan, D. (1999). Java In A Nutshell. p. 74. Sebastopol, CA: O'Reilly & Associates, Inc.

  • Java array doubt..

    public static void main(String Args[]){
         int[] array = new int[3];
         array[5] = 2; // why does this passes compilation as compiler knows that array[] is defined to hold only 3 integers !
         System.out.println(array);
         }

    You know there are 2 types of exceptions java handles.
    1. Compile Time Exception ( Checked exception ).Wrong. All exceptions occur at runtime.
    2. Run Time Exception (Unchecked Exception ).Wrong again.
    What code u have posted above throws java.lang.ArrayIndexOutOfBoundsException exception and this exception falls under run time exception 2nd in above list.Correct.
    So that it was not checked at compile time.Correct.
    Unfortunately that doesn't answer his question. He is asking why.

  • Java Certification Doubt

    Hi,
    I want to do a java certification SCJP, but I read online the exam is called OCPJP now. I have purchased a book 'SCJP Sun Certified Programmer for Java 6 Exam 310-065' for it. I want to know if SCJP and OCPJP mean the same so that the book I mentioned here is suitable to prepare for OCPJP. Kindly help.
    Thanks.

    899794 wrote:
    Hi,
    I want to do a java certification SCJP, but I read online the exam is called OCPJP now. I have purchased a book 'SCJP Sun Certified Programmer for Java 6 Exam 310-065' for it. I want to know if SCJP and OCPJP mean the same so that the book I mentioned here is suitable to prepare for OCPJP. Kindly help.
    Thanks.0) The exam will be very substantially unchanged AFAIK.
    1) Compare the topics in your book compared to topics on the exam webpage. If you see any differences ... then you may need to do a little more research. Its quite normal for for exams to get an update from time to time, and often books can be less than up to date.
    2) This thread covers the typical sort of detail changes to expect.
    3) Does the book have a website where updates/errata are known? Look there.
    4) There may be a couple note either in blogs.oracle.com/certification especially wrt the prometric to peason vue transition or the oracle to sun transition. I have other things to do in my life to search for this, espeically when the train i was to catch train decided to expire itself in a tunnel. This is probably a java software fault.

  • Java regex doubt?

    I have a string by as follows:
    String name = "aaaaaaaaaahgcnjcdcd";I am trying to validate the above string. When the number of "a" in the string excceds 5 and above, I need to throw an error. I tried as follos:
    if (name.matches("A{5,}")){
    system.out.println("There is an error");
    }The above code works only if my name is "aaaaaaaaaaaa" (contains only more than 5 "a"s)and it is not working when name is like "aaaaaaaaaahgcnjcdcd". Can anyone give suggestion so that I will be able to thrw an error if there are more than 5 continous "a" s along with other charactes as "aaaaaaaaaahgcnjcdcd".

    cotton.m wrote:
    For the regex way you need optional wildcards on either side. And sabre or uncle_alice are likely to yell at me for suggesting indexOf so maybe just do that instead.Far from it. If all the OP is interested in is a run of 5 or more 'a' chars then indexOf() is perfect BUT if he wants 5 or more of run of any of a possible set or chars then regex fits the problem much better. Something like
    boolean isValid = "your string xxxxx possibly containing 5 or more of a sequence of x,y or z".matches(".*([xyz])\\1{4,}.*");it is possible to refine this so that there is much less backtracking but until I better understand the OP's requirement ...

  • Java and doubt .

    class Test {
    void f() { throw new _____ ; }
    public static void main(String[] args) _____ Exception {
    Test t = new Test();
    try {
    t.f();
    catch(_____ e) {
    try{ throw ______ ; }
    catch(Exception ex) {
    System.out.print("catch1");
    ______ ex;
    finally {
    System.out.print("finally1"); }
    finally {
    System.out.print("finally2");
    System.exit(0);
    Hints :
    (Execption)e
    e
    throw
    throws
    RuntimeException()
    Throwable()
    Throwable
    Please send me the answer. You have to put the hints.

    class Test {
    void f() { throw new [b]Enum ; }
    public static void main(String[] args) public String toString () { return "Book";} Exception {
    Test t = new Test();
    try {
    t.f();
    catch(Grade.A e) {
    try{ throw [b]"Book"; }
    catch(Exception ex) {
    System.out.print("catch1");
    enum ex;
    finally {
    System.out.print("finally1"); }
    finally {
    System.out.print("finally2");
    System.exit(0);
    }

  • XML File - Problem.with naming tags with XI standard functions

    Hello,
    simple (?) problem:
    Receiver expects an XML file via file adapter.
    (The source data comes from an RFC connect to XI.)
    In the XML tags like these are expected (following W3C definitions):
    A)   </gdt:ValueGroup>
    How to define a data type with a ":" in its name or to convert it to the required tag?
    B)   <gdt:ExtendedAttribute gdt:guid="4c102d6b077de7c1f0e27391e40bb80f" gdt:code="X01" >GR2 LI3</gdt:ExtendedAttribute>
    This one is a real nice one. The part with "gtd:guid=" within the tag is variable. How to add such values into tag names?
    Any ideas if this is possible with standard and how.
    If this is the limit of XI I think we need an XSLT- or JAVA-maping program to generate the required file.
    Thank you for any help!
    Best regards
    Dirk

    Hi Dirk,
    just one thing:
    >>>>The part with "gtd:guid=" within the tag is variable.
    this is ok as it's just an attribute
    of the ExtendedAttribute tag's name
    so it can be variable without any problems
    (you can fill it in the mapping for example)
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

Maybe you are looking for