SEQUENCE {
  SET {
    SEQUENCE {
      # countryName
      OBJECT_IDENTIFIER { 2.5.4.6 }
      PrintableString { "US" }
    }
  }
  SET {
    SEQUENCE {
      # stateOrProvinceName
      OBJECT_IDENTIFIER { 2.5.4.8 }
      BMPString { u"  New   York  " }
    }
  }
  SET {
    SEQUENCE {
      # localityName
      OBJECT_IDENTIFIER { 2.5.4.7 }
      BMPString { u"  ABCDEFGHIJKLMNOPQRSTUVWXYZ   abcdefghijklmnopqrstuvwxyz   0123456789   '()+,-./:=?  " }
    }
    SEQUENCE {
      # localityName
      OBJECT_IDENTIFIER { 2.5.4.7 }
      BMPString { u"  ABCDEFGHIJKLMNOPQRSTUVWXYZ   abcdefghijklmnopqrstuvwxyz   0123456789   '()+,-./:=?  " }
    }
  }
}
-----BEGIN NAME-----
MIIBpjELMAkGA1UEBhMCVVMxJTAjBgNVBAgeHAAgACAATgBlAHcAIAAgACAAWQBvAHIAawAgACAx
ggFuMIG0BgNVBAcegawAIAAgAEEAQgBDAEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMA
VABVAFYAVwBYAFkAWgAgACAAIABhAGIAYwBkAGUAZgBnAGgAaQBqAGsAbABtAG4AbwBwAHEAcgBz
AHQAdQB2AHcAeAB5AHoAIAAgACAAMAAxADIAMwA0ADUANgA3ADgAOQAgACAAIAAnACgAKQArACwA
LQAuAC8AOgA9AD8AIAAgMIG0BgNVBAcegawAIAAgAEEAQgBDAEQARQBGAEcASABJAEoASwBMAE0A
TgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgAgACAAIABhAGIAYwBkAGUAZgBnAGgAaQBqAGsAbABt
AG4AbwBwAHEAcgBzAHQAdQB2AHcAeAB5AHoAIAAgACAAMAAxADIAMwA0ADUANgA3ADgAOQAgACAA
IAAnACgAKQArACwALQAuAC8AOgA9AD8AIAAg
-----END NAME-----
