Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'in SDP"m=" line

From: "CHATRAS Bruno RD-CORE-ISS" <[email-masked]>
Date: Fri, 21 Jul 2006 09:26:10 +0200

Moreover, even if a CR was issued agaisnt ES 283 018 to recommend using the OMIT token rather than the "-", the "-" would have to be kept in the Ia profile anyway for backward compatibility purposes. I assume that we would not like an IP2IP MG to reject an H.248 command just because it contains a "-" sent by an MGC that has not implemented the CR yet.

Regards,
Bruno

-----Message d'origine-----
De : Christer Holmberg (JO/LMF) [mailto:[email-masked]] 
Envoyé : jeudi 20 juillet 2006 20:46
À : [email-masked]
Cc : [email-masked]
Objet : RE: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'in SDP"m=" line

Hi,

Why can't the Ia profile be based on RFC 4566? RFC 3108 is not referenced by the Ia profile, or by H.248.1.

Also, my understanding is that RFC 3108 DOES recommend "-", but says that "OMIT" can be used due to the syntax issue with RFC 2327.

Also, in the RFC 3108 examples "-" is used.

Regards,

Christer

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]
Sent: 20. heinäkuuta 2006 12:00
To: Christer Holmberg (JO/LMF)
Cc: [email-masked]
Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'in SDP "m=" line

Christer, et al.,

I was aware of the SDP extension by '-' in "SDP new" (guess will be RFC 4566), when writting my email.
(I was not aware of the Q.1950 SDP extensions, but I didn't consider them because Q.1950 is irrelevant for ETSI ES 283 018.)

We came finally to the conclusion that:
'OMIT' seems to be the best compromise because
* compliant to RFC 2327,
* ETSI ES 283 018 v1.1.1 is based on RFC 2327,
* when the H.248 Ia Profile will be based on RFC 4566 is still unclear to me ("I guess that first H.248.1 will obsolete RFC 2327 and then replace it by RFC 4566, but whether this is a straightforward task or not, I don't know. Next step then H.248 profiles ..."),
* 'OMIT' already recommended (& defined) by RFC 3108 for "media-agnostic"
SDP descriptors, so 'OMIT' is not totally new, and
* 'OMIT' is inline with separating into media-agnostic and media-aware IP terminations, and
* '-' would be an extension of the SDP grammar of RFC 2327 based H.248 profiles.

We will submitt a correspondent CR to next TISPAN meeting.

Regards,
Albrecht

                      "Christer Holmberg                                                                                                     
                      \(JO/LMF\)"                   To:      "Kevin Boyle" <[email-masked]>, "B Venkat S.R Swamy"                         
                      <christer.holmberg@er         <[email-masked]>, "Christian Groves" <[email-masked]>    
                      icsson.com>                   cc:      Albrecht SCHWARZ/DE/ALCATEL@ALCATEL, [email-masked]                            
                                                    Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media  value '-'inSDP"m=" line   
                      17.07.2006 22:00                                                                                                       

Hi,

According to draft-ietf-mmusic-sdp-new-26, which will replace RFC 2327, "-"
IS allowed.  Both the media and the fmt parts of the m= line are defined as tokens.

media =               token
                            ;typically "audio", "video", "text" or
                            ;"application"

fmt =                 token
                            ;typically an RTP payload type for audio
                            ;and video media

token =               1*(token-char)

token-char =          %x21 / %x23-27 / %x2A-2B / %x2D-2E / %x30-39 /
%x41-5A / %x5E-7E

(The ascii code for "-" is %x2D)

Regards,

Christer

-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: 17. heinäkuuta 2006 19:58
To: B Venkat S.R Swamy; Christian Groves
Cc: [email-masked]; [email-masked]; Christer Holmberg
(JO/LMF)
Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'inSDP"m=" line

The MGC could place "$" there if it truly did not care.  This would align better with the intent of both SDP and H.248.

Kevin

________________________________

From: B Venkat S.R Swamy [mailto:[email-masked]]
Sent: Monday, July 17, 2006 12:40 AM
To: Christian Groves
Cc: [email-masked]; [email-masked]; [email-masked]
Subject: Re: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'
inSDP"m=" line

Hi

Although you are right these are don't care values, but the point here was SDP grammar does not support "-" in the media as shown below.

"m=" media space port ["/" integer] space proto 1*(space fmt) CRLF

media =               1*(alpha-numeric)
;typically "audio", "video", "application"
;or "data"

therefore the string "OMIT" was suggested for the media, so as not to violate the SDP grammar.

regards
B Venkat S.R Swamy
Senior Technical Leader
Flextronics Software Systems
Phone: +91-124- 4176213
Fax: +91-124-4300247
web: www.flextronicssoftware.com
 Christian Groves <[email-masked]>

                                                 Christian Groves <[email-masked]>

                                                 07/17/2006 06:36 AM

To

[email-masked]

cc

B Venkat S.R Swamy/HSS@HSS, [email-masked], [email-masked]

Subject

Re: [Megaco] ETSI H.248 Ia Profile: issue with media value '-' inSDP"m="
line

Hello Albrecht,

In Q.1950 which encounters a similar issue it states :

"NOTE - "-" indicates "do not care" - i.e. the field should be set to any value valid according to SDP, but it is not used on the CBC interface."

So a profile may specify what values it doesn't care about. If it receives normal SDP values in those positions these can simply be ignored. No need to say OMIT.

Regards, Christian

[email-masked] wrote:

>Thanks for pointing to § 2.5/RFC 3108!
>" The string "OMIT" can be used in lieu of "-" for an omitted
parameter."
>Seems to be the best change proposal IMHO.
>- Albrecht
>
>
>RFC 3108:
>   2.5 Use of special characters in SDP parameter values
>
>      In general, RFC 2327-conformant string values of SDP parameters
[1]
>      do not include special characters that are neither alphabets nor
>      digits.  An exception is the "/" character used in the value
>      "RTP/AVP" of transport sub-field of the 'm' line.
>
>      String values used in SDP descriptions of ATM connections retain
this
>      convention, while allowing the use of the special character "/"
in a
>      manner commensurate with [1].  In addition, the special
characters
>      "$" and "-" are used in the following manner.  A "$" value is a
>      wildcard that allows the recipient of the SDP description to
select
>      any permitted value of the parameter.  A "-" value indicates that
it
>      is not necessary to specify the value of the parameter in the SDP
>      description because this parameter is irrelevant for this
>      application, or because its value can be known from another
source
>      such as provisioning, defaults, another protocol, another SDP
>      descriptor or another part of the same SDP descriptor.  If the
use of
>      these special characters is construed as a violation of RFC 2327
[1]
>      syntax, then reserved string values can be used.  The string
"CHOOSE"
>      can be used in lieu of "$".  The string "OMIT" can be used in
lieu of
>      "-" for an omitted parameter.
>
>
>
>
>

>                      "B Venkat S.R Swamy"

>                      <b.swamy@flextronicsso         To:      Albrecht
SCHWARZ/DE/ALCATEL@ALCATEL
>                      ftware.com>                    cc:
[email-masked], [email-masked]

>                                                     Subject: Re:
[Megaco] ETSI H.248 Ia Profile: issue with media value '-' in SDP"m="
>                      14.07.2006 05:59               line

>
>
>
>
>Hi
>
>I support the option 2, and we should try to avoid any violation of the
RFC
>2327/RFC 3108.
>The string "OMIT" as suggested by RFC 3108, section 2.5, can be used
for
>media.
>Also the use of "-" is not allowed as per RFC 2327/RFC 2848 for the
proto
>field.
>
>
>regards
>B Venkat S.R Swamy
>Senior Technical Leader
>Flextronics Software Systems
>Phone: +91-124- 4176213
>Fax: +91-124-4300247
>web: www.flextronicssoftware.com
>(Embedded image moved to file: pic12377.gif)[email-masked]
>
>

>                         Albrecht

>                         .Schwarz

>                         @alcatel

>                         .de      (Embedded image moved to file:

>                                  pic00224.gif)

To
>                         07/13/20          (Embedded image moved to
file:
>                         06 09:49          pic02722.gif)

>                         PM
[email-masked],
>                                           [email-masked]

>                                  (Embedded image moved to file:

>                                  pic31609.gif)

cc
>                                           (Embedded image moved to
file:
>                                           pic17314.gif)

>                                           [email-masked]

>                                  (Embedded image moved to file:

>                                  pic14997.gif)

Subject
>                                           (Embedded image moved to
file:
>                                           pic24297.gif)

>                                           [Megaco] ETSI H.248 Ia
Profile:
>                                           issue with media value '-'
in
>                                           SDP"m=" line

>                                  (Embedded image moved to file:

>                                  pic24565.gif)

>                                         (Embedded image moved to file:

>                                         pic28141.gif)

>
>
>
>Christer, et al.,
>
>media value '-' is not allowed by RFC 2327 (& RFC 3108) in our
>understanding:
>
>  RFC 2327:
>
>
>  media-descriptions =  *( media-field
>
>
>                           information-field
>
>
>                           *(connection-field)
>
>
>                           bandwidth-fields
>
>
>                           key-field
>
>
>                           attribute-fields )
>
>
>     media-field =         "m=" media space port ["/" integer]
>
>
>                           space proto 1*(space fmt) CRLF
>
>
>     media =               1*(alpha-numeric)
>
>
>                           ;typically "audio", "video", "application"
>
>
>                           ;or "data"
>
>
>  RFC 3108:
>
>
>  media-descriptions = *(media-description)
>
>
>  media-description  = media-field information-field
*(connection-field)
>
>
>                       bandwidth-fields key-field attribute-fields
>
>
>  media-field = RFC 2327-media-field / RFC 2848-media-field /
>
>
>                atm-media-field
>
>
>      ; RFC 2327-media-field and RFC 2848-media-field defined in those  
> rfc's
>
>
>  atm-media-field = "m=" media space vcId space transport-fmts EOL
>
>
>     ; superset of RFC 2327 definition
>
>
>  media = "audio" / "video" / "data" / "application" / "control" /
>
>
>          1*(alpha-numeric)
>
>
>
>If our understanding is correct then either
>
>(1) ETSI ES 283 018 is extending the SDP codepoint space, leading to 
>further differences between H.248/SDP and SIP/SDP, with further mapping 
>requirements for the "SDP mapper" (ETSI TR 183 046; WI-03062), or
>
>(2) alternatively we could change the codepoint '-' to an allowed
codepoint
>(e.g., '0', 'none' or 'mediaagnostic' or sth similar).
>
>We are in favour of (2) due to compliance to RFC 2327.
>What is the feeling of others (Tom, guess you got some deep insights
with
>your work on media formats and SDP usage in msf2006.046.01)?
>
>Regards,
>Albrecht
>
>
>PS
>Didn't checked yet whether '-' is affecting other SDP codepoints, too.
>
>
>Reference:
>ETSI ES 283 018 V1.1.1 (2006-06)
>
>
>
>
>5.15     Mandatory support of SDP and annex C information elements
>
>
>
>              Table 81: Supported SDP Information Elements
>|---------------------------+---------------------------+--------------
---------------|
>
>|  SDP Information Element  |     Mandatory/optional    |
>Description         |
>|---------------------------+---------------------------+--------------
---------------|
>
>| Protocol version          | Mandatory                 | The value
must
>always be    |
>| "v=" line                 |                           | equals to
zero:
>|
>|                           |                           | v=0
>|
>|---------------------------+---------------------------+--------------
---------------|
>
>| Connection                | Mandatory                 | The network
type
>must always|
>| "c=" line                 |                           | be "IN".
>|
>|                           |                           |
>|
>|                           |                           |The address
type
>value must  |
>|                           |                           |be "IP4" or
"IP6".
>|
>|                           |                           |
>|
>|                           |                           |The connection
>address value |
>|                           |                           |may be
>underspecified with   |
>|                           |                           |CHOOSE
wildcard
>("$").       |
>|---------------------------+---------------------------+--------------
---------------|
>
>| Media                     | Mandatory                 |"-" may be
used
>for the media|
>| "m=" line                 |                           |value. Other
>values shall be |
>|                           |                           |ignored,
unless
>media        |
>|                           |                           |specific
>information is      |
>|                           |                           |required.
>|
>|                           |                           |
>|
>|                           |                           |The port value
may
>be        |
>|                           |                           |underspecified
>with CHOOSE   |
>|                           |                           |wildcard
("$").
>|
>|                           |                           |
>|
>|                           |                           |"-" may be
used
>for the      |
>|                           |                           |transport
value,
>unless      |
>|                           |                           |transport
specific
>behaviour |
>|                           |                           |is required by
the
>MG.       |
>|                           |                           |(See note)
>|
>|                           |                           | "-" may be
used
>for the     |
>|                           |                           | format list
>value. Other    |
>|                           |                           | values shall
be
>ignored.    |
>|---------------------------+---------------------------+--------------
---------------|
>
>
>
>
>
>
>
>
>
>
>
>_______________________________________________
>Megaco mailing list
>[email-masked]
>https://www1.ietf.org/mailman/listinfo/megaco
>
>
>
>*********************** FSS-Restricted ***********************
>"DISCLAIMER: This message is proprietary to Flextronics Software 
>Systems Limited (FSS) and is intended solely for the use of the 
>individual to whom it is addressed. It may contain privileged or 
>confidential information and should not be circulated or used for any 
>purpose other than for what it is intended. If you have received this 
>message in error, please notify the originator immediately.
>If you are not the intended recipient, you are notified that you are 
>strictly prohibited from using, copying, altering, or disclosing the 
>contents of this message. FSS accepts no responsibility for loss or 
>damage arising from the use of the information transmitted by this 
>email including damage from virus."
>_______________________________________________
>Megaco mailing list
>[email-masked]
>https://www1.ietf.org/mailman/listinfo/megaco
>
>
>
>
>
>
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
>
>-----------------------------------------------------------------------
-
>
>_______________________________________________
>Megaco mailing list
>[email-masked]
>https://www1.ietf.org/mailman/listinfo/megaco
>
>

*********************** FSS-Restricted ***********************
"DISCLAIMER: This message is proprietary to Flextronics Software Systems Limited (FSS) and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or used for any purpose other than for what it is intended. If you have received this message in error, please notify the originator immediately.
If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering, or disclosing the contents of this message. FSS accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus."

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

---

From: "CHATRAS Bruno RD-CORE-ISS" <[email-masked]>
Date: Tue, 25 Jul 2006 14:51:44 +0200

I would of course vote of option a) as well. I don't think we need to extend this to all properties. This convention can be restricted to SDP fields. 

The Binary case is different. If SDP fields are represented by dedicated tags (e.g. Media/1001), then the MGC can simply omit the parameters that are meaningless. If the SDP equivalent (e.g. SDP_M) are used then the "-" convention shall also be used in the valeu field of the TLV parameter.

Regards,
Bruno

-----Message d'origine-----
De : Christer Holmberg [mailto:[email-masked]] 
Envoyé : mardi 25 juillet 2006 09:34
À : Christian Groves; [email-masked]
Cc : CHATRAS Bruno RD-CORE-ISS; [email-masked]; Campos, Simao
Objet : Re: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'in SDP"m=" line

Hi Christian,

As Bruno also said, in future the Ia profile may become media aware, so we can't just say that "-" means that you can send whatever you want since the receiver doesn't care about the value. We will need a dedicated "do not care" value, so that the receiver knows whether it should care or not.

For the response I would vote for option a).

Regards,

Christer

________________ Reply Header ________________
Subject:	Re: [Megaco] ETSI H.248 Ia Profile: issue with media value	'-'in SDP"m=" line
Author:	"Christian Groves" <[email-masked]>
Date:		25th July 2006 10:06:12 am

Hello All,

I'm not really comfortable with this being added via the way of the implementors guide (e.g. I don't support this). In an earlier email Bruno had concerns other the ability of ability of previous Ia implementations to accept a CR on this. I think we strike the same (if not bigger) problem if we simply state "-" is supported. I would assume there are a lot more H.248.1 implementations than Ia implementations out there. If we added this we would be introducing a possible error to a greater set of implementations.

I would also consider the use of "-" as new functionality. Is this used in command requests AND responses?

Let's look at the original text from the Ia profile:
"-" may be used for the transport value, unless transport specific behaviour is required by the MG. 
"-" may be used for the format list value. Other values shall be ignored.

Now H.248 requires that fully compliant SDP be returned in the command response. So what does this text really mean?
a) Does "-" mean the MGC doesn't care and return "-" in the command reply?
b) Does "-" mean the MGC doesn't care but its up to the MG to choose something.
c) The Ia profile doesn't care what is put there. Any valid SDP can be used.

If its a) then its definately not an implementor's guide change. As now we have to change things in command requests and responses. Do we also need to add this "don't care" to all properties. e.g. for the ASN.1?
If its b) then it sound like CHOOSE ? is really what it being requested.
If its c) I believe is the original intention from profiles and was probably lost in translation (e.g. a derivitive of the Q.1950 text) then "-" is never sent and this can be fixed in the Ia profile which introduced this problem.

Regards, Christian

[email-masked] wrote:

>Hi,
>
>it's a syntax issue. An implementation following strictly ES 283 018 
>v1.1.1 may not work due to RFC 2327 and H.248.1 (09/2005) baseline (in 
>my understanding of the profile specification).
>'-' is an implicit SDP syntax extension in ES 283 018 IMHO.
>
>I do accept all your arguments in favour for '-', i.e. I won't submit a 
>CR for 'OMIT'.
>I do support the clarification proposal for H.248.1 from Kevin/Christer.
>I'll submit a CR for a new NOTE in Table 81/ES 283 018, pointing out 
>explicitly the syntax extension.
>
>Thanks,
>regards,
>
>Albrecht
>
>
>
>
>                                                                                                                                             
>                      "Christer Holmberg                                                                                                     
>                      \(JO/LMF\)"                   To:      "Kevin Boyle" <[email-masked]>, "CHATRAS Bruno RD-CORE-ISS"                  
>                      <christer.holmberg@er         <[email-masked]>, Albrecht SCHWARZ/DE/ALCATEL@ALCATEL                       
>                      icsson.com>                   cc:      [email-masked]                                                                 
>                                                    Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value '-'in  SDP"m=" line  
>                      21.07.2006 16:42                                                                                                       
>                                                                                                                                             
>
>
>
>
>
>Hi,
>
>What we need to say is that "-" is allowed in H.248 usage of SDP(in 
>case
>H.248.1 still refers to RFC 2327), and we need to say what a "-" value 
>means.
>
>Regards,
>
>Christer
>
>
>Sent: 21. heinäkuuta 2006 17:23
>To: Christer Holmberg (JO/LMF); CHATRAS Bruno RD-CORE-ISS; 
>Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value 
>'-'in SDP"m=" line
>
>I will draft something to be included in the next IG.  Even though we 
>are talking about something syntactical in nature, the syntax is that 
>of SDP and not H.248.  It also appears that there is a common 
>understanding of how this is to be used.  Therefore, I think this falls 
>into the realm of clarification and not as a change to the procedures of the protocol.
>
>As for updating the reference to 4566, I will have to ask the TSB if 
>that is acceptable in the IG, or if we should look to prepare a 
>Corrigendum in November.
>
>Kevin
>
>From: Christer Holmberg (JO/LMF) 
>[mailto:[email-masked]]
>Sent: Friday, July 21, 2006 5:18 AM
>To: CHATRAS Bruno RD-CORE-ISS; [email-masked]
>Cc: [email-masked]
>Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value 
>'-'in SDP"m=" line
>
>
>Hi,
>
>I agree with Bruno.
>
>Also, H.248.1 does already "extend" RFC 2327, by defining some SDP 
>values which are not allowed by the RFC, e.g. "*" and "$".
>
>I think a solution would be to add text to H.248.1, allowing also the "-"
>value and define what it is used for (similar to "*" and "$").
>
>(It would of course have been good to define the meaning of "-" in RFC 
>4566, in case some other protocol needs it, but it's too late now.)
>
>Regards,
>
>Christer
>
>
>
>From: CHATRAS Bruno RD-CORE-ISS [mailto:[email-masked]]
>Sent: 21. heinäkuuta 2006 10:26
>To: Christer Holmberg (JO/LMF); [email-masked]
>Cc: [email-masked]
>Subject: RE: [Megaco] ETSI H.248 Ia Profile: issue with media value 
>'-'in SDP"m=" line
>
>Moreover, even if a CR was issued agaisnt ES 283 018 to recommend using 
>the OMIT token rather than the "-", the "-" would have to be kept in 
>the Ia profile anyway for backward compatibility purposes. I assume 
>that we would not like an IP2IP MG to reject an H.248 command just 
>because it contains a "-" sent by an MGC that has not implemented the CR yet.
>
>Regards,
>Bruno
>
>Why can't the Ia profile be based on RFC 4566? RFC 3108 is not 
>referenced by the Ia profile, or by H.248.1.
>
>Also, my understanding is that RFC 3108 DOES recommend "-", but says 
>that "OMIT" can be used due to the syntax issue with RFC 2327.
>
>(I was not aware of the Q.1950 SDP extensions, but I didn't consider 
>them because Q.1950 is irrelevant for ETSI ES 283 018.)
>
>* when the H.248 Ia Profile will be based on RFC 4566 is still unclear 
>to me ("I guess that first H.248.1 will obsolete RFC 2327 and then 
>replace it by RFC 4566, but whether this is a straightforward task or 
>not, I don't know. Next step then H.248 profiles ..."),
>                      \(JO/LMF\)"                   To:      "Kevin Boyle"
><[email-masked]>, "B Venkat S.R Swamy"
>                      <christer.holmberg@er 
><[email-masked]>, "Christian Groves"
><[email-masked]>
>                      icsson.com>                   cc:      Albrecht
>SCHWARZ/DE/ALCATEL@ALCATEL, [email-masked]
>                                                    Subject: RE: 
>[Megaco] ETSI H.248 Ia Profile: issue with media  value '-'inSDP"m=" line
>                      17.07.2006 22:00
>
>
>
>
>
>
>
>Hi,
>
>The MGC could place "$" there if it truly did not care.  This would 
>align better with the intent of both SDP and H.248.
>
>Kevin
>
>Although you are right these are don't care values, but the point here 
>was SDP grammar does not support "-" in the media as shown below.
>
>"NOTE - "-" indicates "do not care" - i.e. the field should be set to 
>any value valid according to SDP, but it is not used on the CBC interface."
>
>So a profile may specify what values it doesn't care about. If it 
>receives normal SDP values in those positions these can simply be 
>ignored. No need to say OMIT.
>
>Regards, Christian
>
>>pic12377.gif)[email-masked]
>>
>>
>>    
>>
>
>  
>
>>                        Albrecht
>>    
>>
>
>  
>
>>                        .Schwarz
>>    
>>
>
>  
>
>>                        @alcatel
>>    
>>
>
>  
>
>>further differences between H.248/SDP and SIP/SDP, with further 
>>mapping requirements for the "SDP mapper" (ETSI TR 183 046; WI-03062), 
>>or
>>
>>|---------------------------+---------------------------+-------------
>>|---------------------------+---------------------------+-
>>    
>>
>---------------|
>  
>
>>|---------------------------+---------------------------+-------------
>>|---------------------------+---------------------------+-
>>    
>>
>---------------|
>  
>
>>|---------------------------+---------------------------+-------------
>>|---------------------------+---------------------------+-
>>    
>>
>---------------|
>  
>
>>|---------------------------+---------------------------+-------------
>>|---------------------------+---------------------------+-
>>    
>>
>---------------|
>  
>
>>|---------------------------+---------------------------+-------------
>>|---------------------------+---------------------------+-
>>    
>>
>---------------|
>  
>
>>
>>
>>
>>
>>
>>
>>
>>
>>