sequenceDiagram
    autonumber
    participant Alice as A
    participant Bob@{ "type" : "collections" }
    <beginfold id='1'>box</beginfold id='1'> rgb(from hwb(120deg 10% 20%) r g calc(b + 200)) Group Description
        participant Alice Bob@{ "type" : "collections" }
    <endfold id='1'>end</endfold id='1'>
    <beginfold id='1'>box</beginfold id='1'> Aqua Group Description
        participant Alice and Bob as P as p
    <endfold id='1'>end</endfold id='1'>
    link Alice: Dashboard @ https://example.com/alice
    links John: {"Dashboard": "https://example.com/john", "Wiki": "https://example.com/john"}

    A->B
    A->>B
    A-xB
    A-)B
    A-//B
    A-\\B
    A-|/B
    A-|\B
    A//-B
    A\\-B
    A/|-B
    A\|-B

    A-->B
    A-->>B
    A--xB
    A--)B
    A--//B
    A--\\B
    A--|/B
    A--|\B
    A//--B
    A\\--B
    A/|--B
    A\|--B

    A<<->>B
    A<<-->>B
    A()<<-->>()B

    %% oups
    A-A--B
    %% ok
    A-A-->B

    %% only <br\s*>
    A  ->   Bob: Queue *message*<br><br/><br /><b>dsds</b>
    Bob->>S: Queue response
    create participant Carl
    Alice-xCarl: Hi $$\pi$$!
    create actor D as Donald
    Carl--xD: Hi!
    destroy Carl
    Alice-xCarl: We are too many
    activate John
    John-->>Alice: I #9829; you #infin; times more!
    deactivate John
    Alice->>+John: Hello John, how are you?
    John-->>-Alice: Great!

    Note right of John: Text in note
    Note over Alice,John: A typical interaction

    <beginfold id='1'>loop</beginfold id='1'> Every minute
        John-->Alice: Great!
    <endfold id='1'>end</endfold id='1'>

    <beginfold id='1'>alt</beginfold id='1'> is sick
        Bob->>Alice: Not so good :(
    <endfold id='1'></endfold id='1'><beginfold id='1'>else</beginfold id='1'> is well
        Bob->>Alice: Feeling fresh like a daisy
    <endfold id='1'>end</endfold id='1'>
    <beginfold id='1'>opt</beginfold id='1'> Extra response
        Bob->>Alice: Thanks for asking
    <endfold id='1'>end</endfold id='1'>

    <beginfold id='1'>par</beginfold id='1'> Alice to Bob
        Alice->>Bob: Hello guys!
    <endfold id='1'></endfold id='1'><beginfold id='1'>and</beginfold id='1'> Alice to John
        Alice->>John: Hello guys!
    <endfold id='1'>end</endfold id='1'>

    <beginfold id='1'>critical</beginfold id='1'> Establish a connection to the DB
        Service-->DB: connect
    <endfold id='1'></endfold id='1'><beginfold id='1'>option</beginfold id='1'> Network timeout
        Service-->Service: Log error
    <endfold id='1'>end</endfold id='1'>

    <beginfold id='1'>break</beginfold id='1'> when the booking process fails
        API-->Consumer: show failure
    <endfold id='1'>end</endfold id='1'>

    <beginfold id='1'>rect</beginfold id='1'> rgb(200, 150, 255)
        Alice->>+John: John, can you hear me?
        John-->>-Alice: Hi Alice, I can hear you!
    <endfold id='1'>end</endfold id='1'>
