
From y.oiwa@aist.go.jp  Mon Jul  1 02:50:28 2013
Return-Path: <y.oiwa@aist.go.jp>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 06E8221F9330 for <precis@ietfa.amsl.com>; Mon,  1 Jul 2013 02:50:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.977
X-Spam-Level: 
X-Spam-Status: No, score=-5.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RDpRtO6VQlkn for <precis@ietfa.amsl.com>; Mon,  1 Jul 2013 02:50:22 -0700 (PDT)
Received: from na3sys010aog113.obsmtp.com (na3sys010aog113.obsmtp.com [74.125.245.94]) by ietfa.amsl.com (Postfix) with ESMTP id 3922F21F8925 for <precis@ietf.org>; Mon,  1 Jul 2013 02:50:17 -0700 (PDT)
Received: from mail-ve0-f180.google.com ([209.85.128.180]) (using TLSv1) by na3sys010aob113.postini.com ([74.125.244.12]) with SMTP ID DSNKUdFQ1/BIBDidxUe7UQzledTS1GUEctfA@postini.com; Mon, 01 Jul 2013 02:50:17 PDT
Received: by mail-ve0-f180.google.com with SMTP id pa12so3549334veb.39 for <precis@ietf.org>; Mon, 01 Jul 2013 02:50:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aist.go.jp; s=google; h=mime-version:from:date:message-id:subject:to:content-type; bh=bKL1BhW8sRDEVyRJ53Fs93P052WeRURz/R1/CaO4QFA=; b=bnQsFc5nBr2NWLRzBOnive8S/LA8v3dl+Rh8QYeCjo6FG/7WWxOn8Ym/9EzHrsj52S dxzU+shvoFPZQsHOhk34U+V7Czz6ae8347m+TK042EMdkMHTJKh4YmnpGCk/nZJS/Z+U aapi+MgCju8rXNk/WIm2NJ9PFloDqGFWrXrLc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:from:date:message-id:subject:to:content-type :x-gm-message-state; bh=bKL1BhW8sRDEVyRJ53Fs93P052WeRURz/R1/CaO4QFA=; b=lH53J+jcEuvcDIvhI1RTF/A4HZRMHDH+Vo3YX/qNh76HqCoY3N88LDujqhnAQLe/dn keF2SR5TjkFVQ6L+6Hl/ReNBtUOpVevwdr3kH0zwKjsjJtSaG99sJ91mBLIkYiK0SEJE rEYx2BHbeQ74Mpu93dLpmvFKf0R+BfqndXVHpTzD1U7NCfqXG3HgomF7FywMu1LTcnIq yJwRQ1V4VYZmDp5mDnGidJwr9VQ4Jc/lfvYlQsPwCgC7auKvpkH82UZF+oJaIj56Kany nDjrjCxVAQ8631tWPk07alGPVe2sris1c/kXrm3vtc6GD+mLmvolUZaztR200ysUUrMP zqhQ==
X-Received: by 10.52.18.171 with SMTP id x11mr7816694vdd.92.1372672215003; Mon, 01 Jul 2013 02:50:15 -0700 (PDT)
X-Received: by 10.52.18.171 with SMTP id x11mr7816692vdd.92.1372672214859; Mon, 01 Jul 2013 02:50:14 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.58.243.66 with HTTP; Mon, 1 Jul 2013 02:49:54 -0700 (PDT)
From: Yutaka OIWA <y.oiwa@aist.go.jp>
Date: Mon, 1 Jul 2013 18:49:54 +0900
Message-ID: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com>
To: precis@ietf.org
Content-Type: text/plain; charset=ISO-8859-1
X-Gm-Message-State: ALoCoQmzdf55tnwd9iwarzJncH1Ibm4gBnIMwyAceRHEp+Gb0mKa+14vbGB7AkyCqGdRao0RFAtQ65qRhavASELbYBUbjXaBA6I60YP7cxQBg4F5S9M1NN3NucaeExd0PgpmrWRFPHwaJ8q9pdUyzgUOTPAoPmh5jg==
Subject: [precis] About precis-httpauth-prep plan
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 01 Jul 2013 09:50:28 -0000

Dear PRECIS list members,

Corresponding to the request by Yoneya-san in Orlando,
I am considering for a precis profile for HTTP-authentication.

A straw-man I-D text is about to be prepared, but before submitting it,
I'd like to have some comments on what is to be written.
The following is a list-style summary of the possible content.
If you have any suggestions/comments/whatever, these are really appreciated.

Thanks,
Yutaka


[http-prep]

= Importance of string preparation in HTTP authentications

  * needs for I17N
  * existing movements for I17N

= applicability and scope

  * Generally applicable for all HTTP-(p7-)based authentications
  * It is only for the "default" algorithm
  * Specific authentication schemes MAY define alternative preparation to use
    (e.g. SASL-tunnelling, NTLM etc.)
  * Applicable for both Web and non-Web usages
  * Non-HTTP (e.g. HTML Form-based) authentications are out-of-scope
    * httpauth-prep will never require e.g. HTML-based auths to use this
    * however, it MAY be referred to/used by such applications if they want

= technical requirements (non-normative)

  * ASCII transparency (MUST-requirement)
    * Every codepoint within U+0020 to U+007E MUST be preserved, and
      mapped to its 1-byte equivalent respectively.
    * This is a requirement for existing HTTP auth compatibility

  * Latin-1 preservation (SHOULD requirement)
    * codepoints U+00A1 to U+00FE SHOULD be preserved.
    * this enables non-crashing mapping from existing ISO-8859-1 user databases.

  * strong normalization
    * all representations (decomposed and composed) of every single "character"
      MUST be normalized to exactly one unicode character sequence.
    * NFC is to be taken.
    * Without this, virtually all "non-Basic" authentication may become broken
      with regard to internationalized username and passwords (e.g. Digest).
      * Not only passwords but also username will need this, as
        usernames are often hashed with passwords before key exchange.
    * Example: "Japanese katakana GA" = U+30AC or
      U+30AB U+3099 ... should be prepared to U+30AC.

= Definition of preparation rule (the main part, normative)

    * To be written, a technical content

= Discussions

  * case mapping

    * ASCII transparency rule automatically excludes any kinds of case mappings.

    * Is this OK? ... This is the "safer" rule for existing system compatibility

    * When prep does not use case mapping...

      * Case-sensitive existing systems:
        * Basic: OK
        * Digest etc: OK for ASCII username/passwords

      * Case-insensitive existing systems
        * Basic: OK (server-side may case-mapping if they want)
        * Digest etc: to require users to input their name/passwords
in specific case
          (workaround relatively easy)

    * When prep forces use of case mapping... (e.g. lower-case mapping)

      * Case-sensitive existing systems:
        * Basic: NG for names/passwords containing mapped (capital) characters
          (workaround hard to imprement, sometimes impossible)
        * Digest etc: NG, ditto (workaround impossible)

      * Case-insensitive existing systems
        * Basic: OK
        * Digest etc: OK for ASCII username/passwords

--
Yutaka OIWA, Ph.D.                 Leader, System Life-cycle Research Group
                               Research Institute for Secure Systems (RISEC)
     National Institute of Advanced Industrial Science and Technology (AIST)
                       Mail addresses: <y.oiwa@aist.go.jp>, <yutaka@oiwa.jp>
OpenPGP: id[440546B5] fp[7C9F 723A 7559 3246 229D  3139 8677 9BD2 4405 46B5]

From stpeter@stpeter.im  Tue Jul  2 12:57:02 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0E14421F9B26; Tue,  2 Jul 2013 12:57:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.493
X-Spam-Level: 
X-Spam-Status: No, score=-102.493 tagged_above=-999 required=5 tests=[AWL=0.106, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id myp8-84kIBjT; Tue,  2 Jul 2013 12:56:55 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 7D61A21F9AE0; Tue,  2 Jul 2013 12:56:55 -0700 (PDT)
Received: from sjc-vpn5-1046.cisco.com (unknown [128.107.239.233]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 6D3D141101; Tue,  2 Jul 2013 13:57:35 -0600 (MDT)
Message-ID: <51D33084.5060903@stpeter.im>
Date: Tue, 02 Jul 2013 13:56:52 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130509 Thunderbird/17.0.6
MIME-Version: 1.0
To: Nico Williams <nico@cryptonector.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com>
In-Reply-To: <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 02 Jul 2013 19:57:03 -0000

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 5/3/13 1:39 PM, Nico Williams wrote:

> Please forgive my apparent apathy.  I lost track of this due to
> business travel.

And please forgive my delay in replying. It's good to know you're not
apathetic. And as you can tell, we're proceeding rather slowly with
this work. That doesn't mean it is unimportant. This recent example
from the blogosphere might of interest:

http://labs.spotify.com/2013/06/18/creative-usernames/

PRECIS might have helped those folks avoid some significant pain.

> I'm not sure where the case mapping requirement for usernames came 
> from.

Are you referring to global case mapping or local case mapping?

> I guess it has something to do with the Turkish I and such.

Yes, that is a nasty problem with even nastier consequences:

http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-three-more-in-jail

Just to be clear, that's an issue of what we're calling local case
mapping (where locale is taken into consideration).

> I can't say I'm excited about this case mapping requirement; if
> anything it strikes as silly.

In general, the opinion so far has been that, say, StPeter is treated
the same as stpeter when it comes to authentication and authorization
based on usernames. Do you disagree? If so, why? For example, would
you be inclined to leave this up to the protocol that uses SASL (say,
IMAP or XMPP) instead of specifying it in SASLprepbis?

> Why would we apply mappings to usernames (which are sent on the
> wire) that we don't apply to passwords (which servers generally
> don't get the plaintext of)?  We need mappings for passwords to
> make password entry reliable.  The same does NOT apply to
> usernames.

My naÃ¯ve perspective is that the combination of username and password
is your credential (for password-based systems). If I provide StPeter
and AUrwyaxDQ6rH68OefESL as my username and password, IMHO we sure
want the password to be treated in a case-sensitive manner (since that
reduces the possibility of false positives), whereas we want the
username to be treated in a case-insensitive manner (since most
application protocols treat StPeter@example.com as the same account as
stpeter@example.com).

> Also, looking at SASLprep and PRECIS, I see no mention of query 
> strings vs. display vs. storage.  These distinctions matter.  But 
> maybe I'm just failing to search for the right terms.

Would you be so kind as to expand on that a bit? I'd like to make sure
I understand what you mean by each of those terms.

> Heck, we're not even told whether these rules should be applied by
> the client, the server, or both.

That is a very good point. This was something that bit us in RFC 3920
(for XMPP) and we've cleared that up in 6122bis:

http://tools.ietf.org/html/draft-ietf-xmpp-6122bis-07#section-3

In my experience, we can *say* that the client needs to do this, but
the server will need to do it anyway since it can't trust the client
to do the right thing. However, for passwords (which, as you note, we
hope the server never sees in plaintext) the client would need to
enforce the rules.

> Anyways, I'm for applying as few transformations as possible to 
> usernames on the *client* side and leaving the server to apply 
> RECOMMENDED, and a few REQUIRED rules for matching.

I'd agree with that sentiment.

> I don't see room for case folding in general,

Even on the server side? Again, do you think it would be better to
leave that up to the application?

> but I do for specific cases (e.g., Turkish I handling).

Unfortunately, local case mapping might be difficult for the server to
perform because it doesn't necessarily have information about the
locale of the user. So this is something that might best be handled at
the client.

> If this review is too late to make a difference, well, c'est la
> vie. But do give the above some thought before rejecting my
> comments for being late.  Once more, I'm sorry I let this slip.

You are not too late and your comments are important!

Peter

- -- 
Peter Saint-Andre
https://stpeter.im/


-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.19 (Darwin)
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJR0zCEAAoJEOoGpJErxa2p7xEQAJROFDCBZfnrP+9+h0qi29VL
SBmWvTXkJTcLzRTUJja6bsTp75vqdFfckFT4apWeTuBrABktt8ny0/kNPAGue41H
Q1avmi0y06oonL49zMbSiEmnPBakgOL75q5V1z218iV4w6cUFFh/AJtL36Dh8t//
VZABcnuitQYknJbHR4HXZ0iAp4Aeo6EUHSkX9YSspf3IZJkXivXG3cCYNfw08B6p
5YrwXdsu4q7wH6bZcEDQBrQO1puaFG5/svOI/YnfvdIZH5ulYg0eeKOPp8VBVD4E
exssCzttwTOGUDA2QLWovNHyHBKIHpfNAEiOvXj976UIPX5revaR6o0VUq7ekJfj
uoaO+xvVAaKHI6huv1EUtVtbOxW248heZxci6eaQEYzheOrsyUInGgjpAYcMUdRy
UjPmGtYQAgiZNIcLLCCdbZIjl8soF4rxu1LUBeVLkgW5widbHN1DXxvpHM499Kyf
FyS2xC2WSDxV6c0oueFTG6VlXjevyCamAc4AjEycPTR+180or7OTaH841SSGAN5j
IVRZVlK4CmYdDQTUAoPYacpYE4Y1jXqI+G5VZQVOIrlYoIGUu1RvujzJH1zDKBjQ
9uJyd6NtdTvc0ABBhoGLOiF/RcXzIwiLNHg1of5XVUWygs8KGUZxYtbepw0+nw08
JPzjpq3IyDXhavrqStFp
=rkzA
-----END PGP SIGNATURE-----

From nico@cryptonector.com  Tue Jul  2 16:20:47 2013
Return-Path: <nico@cryptonector.com>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4BD6A21F9A65; Tue,  2 Jul 2013 16:20:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.977
X-Spam-Level: 
X-Spam-Status: No, score=-1.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8owcRoTFaBWP; Tue,  2 Jul 2013 16:20:42 -0700 (PDT)
Received: from homiemail-a66.g.dreamhost.com (caiajhbdcaid.dreamhost.com [208.97.132.83]) by ietfa.amsl.com (Postfix) with ESMTP id 595A321F9A64; Tue,  2 Jul 2013 16:20:42 -0700 (PDT)
Received: from homiemail-a66.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a66.g.dreamhost.com (Postfix) with ESMTP id BB6E1350082; Tue,  2 Jul 2013 16:20:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type:content-transfer-encoding; s= cryptonector.com; bh=HbeJvHav0w9/psSm4/vGDapOLKg=; b=o1hrgt7wuk3 kf+QchyviIbWGeZ4uHAtts/KRT0k+dc5LSHdlCiMztwkz+aju8QdL3k1ji3UJlDY eW2cds+glpoYZtYbXV1w+UO6wk4z9V8newt/XhCohxT7oGGZl2zi1MWPqjEfdxhN pNaXmHWvJJldPLqjrR3wEefWWTT5vf04=
Received: from mail-ie0-f171.google.com (mail-ie0-f171.google.com [209.85.223.171]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a66.g.dreamhost.com (Postfix) with ESMTPSA id 811B335007A;  Tue,  2 Jul 2013 16:20:41 -0700 (PDT)
Received: by mail-ie0-f171.google.com with SMTP id qd12so13481003ieb.2 for <multiple recipients>; Tue, 02 Jul 2013 16:20:40 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=lC0HEmJLMZnj8FmkH88L9Zcbdjv2KLA+WlKHIlDbH98=; b=L07hhB63G9weUjZ5wuIOXZEYWG/Vt1LfPf3U3FDUrAIHrU3gdDecTx/biIFxgxC7T3 lfPURQbYRivTgLarOLjhOUI8YaX+KxEcQbj1EpDLw5EY+fUelLPfoU0YJAPLefMxoCHV FyNX0gpjpgVkkAzrXcokXbhBy0Mg3rmGxfsjm+SXJQOC76X1wMb40jJq11ZvLHxHFQtN E31jrN82J/EdEq/GWb7Y02wKQv6w2UizQ2X3r1xYLcLQgEUCYX5F5gPnRjT1v984FT73 lgQ1xFrtAOr7ybdOlwc4SZV82qtS8dQ3dI7LX1q3jqqQgAaXxjgdzYFzWwF9T7yFRV3E PNVg==
MIME-Version: 1.0
X-Received: by 10.50.128.36 with SMTP id nl4mr22805598igb.38.1372807240866; Tue, 02 Jul 2013 16:20:40 -0700 (PDT)
Received: by 10.64.130.169 with HTTP; Tue, 2 Jul 2013 16:20:40 -0700 (PDT)
In-Reply-To: <51D33084.5060903@stpeter.im>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im>
Date: Tue, 2 Jul 2013 18:20:40 -0500
Message-ID: <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 02 Jul 2013 23:20:47 -0000

On Tue, Jul 2, 2013 at 2:56 PM, Peter Saint-Andre <stpeter@stpeter.im> wrot=
e:
> On 5/3/13 1:39 PM, Nico Williams wrote:
>
>> Please forgive my apparent apathy.  I lost track of this due to
>> business travel.
>
> And please forgive my delay in replying. It's good to know you're not
> apathetic. And as you can tell, we're proceeding rather slowly with
> this work. That doesn't mean it is unimportant. This recent example
> from the blogosphere might of interest:
>
> http://labs.spotify.com/2013/06/18/creative-usernames/
>
> PRECIS might have helped those folks avoid some significant pain.
>
>> I'm not sure where the case mapping requirement for usernames came
>> from.
>
> Are you referring to global case mapping or local case mapping?
>
>> I guess it has something to do with the Turkish I and such.
>
> Yes, that is a nasty problem with even nastier consequences:
>
> http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-=
three-more-in-jail

!

But that can't apply here.  Or, if anything, case mappings makes it
more likely.  Let's say I'm logged in in some app and it shows the
username I typed in, but because of case mapping some typos are
tolerated, so the username shown could offend someone.  Whereas if I'm
required to type my username exactly one way (not including NF) then
that can't happen.  So if anything that link indicates we should not
have case mappings here...  :)

> Just to be clear, that's an issue of what we're calling local case
> mapping (where locale is taken into consideration).
>
>> I can't say I'm excited about this case mapping requirement; if
>> anything it strikes as silly.
>
> In general, the opinion so far has been that, say, StPeter is treated
> the same as stpeter when it comes to authentication and authorization
> based on usernames. Do you disagree? If so, why? For example, would
> you be inclined to leave this up to the protocol that uses SASL (say,
> IMAP or XMPP) instead of specifying it in SASLprepbis?

I think it'd be nice if *servers* got to choose whether to do this.
The principle here is that the server should make right when it comes
to the username.  This means that clients should be pretty much able
to send just about anything as a username and let the server figure it
out.

Whether it's a server application or the mechanisms (or SASL library)
that applies such rules is a different story, and one I don't think I
care much about here.

>> Why would we apply mappings to usernames (which are sent on the
>> wire) that we don't apply to passwords (which servers generally
>> don't get the plaintext of)?  We need mappings for passwords to
>> make password entry reliable.  The same does NOT apply to
>> usernames.
>
> My na=C3=AFve perspective is that the combination of username and passwor=
d
> is your credential (for password-based systems). If I provide StPeter
> and AUrwyaxDQ6rH68OefESL as my username and password, IMHO we sure
> want the password to be treated in a case-sensitive manner (since that
> reduces the possibility of false positives), whereas we want the
> username to be treated in a case-insensitive manner (since most
> application protocols treat StPeter@example.com as the same account as
> stpeter@example.com).

It's not just false positives: many sites require multiple character
classes in password data, but case folding would nullify part of such
policies :)

If the user's password must survive with case intact then the user
must be able to enter it portably (i.e., on many devices).  Surely
asking the same of usernames is not an undue additional burden for the
user.

Still, I don't mind if some site wants to have case-insensitive
usernames.  I just don't want us to impose that policy on *all* sites.

Once again I'm thinking of online games, ones where people often
convey ideas (usually comical ones) via their usernames.  Providing
the most freedom possible here seems like the right thing to do;
requiring case-insensitivity is denying some freedom.

>> Also, looking at SASLprep and PRECIS, I see no mention of query
>> strings vs. display vs. storage.  These distinctions matter.  But
>> maybe I'm just failing to search for the right terms.
>
> Would you be so kind as to expand on that a bit? I'd like to make sure
> I understand what you mean by each of those terms.

Sure.

Query string =3D=3D a string entered by a user in some UI, to be matched
against some thing's name.

Display string =3D=3D a thing's name, as displayed to users in UIs.

Storage string =3D=3D a thing's name as stored, and usually this is the
canonical form of the thing's name.

For example, "nico" might be a query name for my Kerberos principal,
but the display name might be nico@CRYPTONECTOR.COM, and the storage
string will be in some format we don't really care about here but
roughly equivalent to the display string form.

To continue the example, if my KDC was case-insensitive then "Nico"
would also work as a query string; what I get for the display string
might either match the query string or the storage string, and the
storage string could be any of the many case variants of "nico" (but
almost certainly would be case-folded in many implementations).

The relevance here is that we should apply as few transformations as
possible to *query* strings on the client-side and just send them.
What transformations a server applies then can be up to the server
and/or the mechanism (e.g., a federated mechanism might need to apply
transformations specified by it).

SASLprep-like stringpreps are very useful, especially for *passwords*
because passwords may need to be in canonical form because they are
used as inputs to client-side cryptographic functions (e.g., Digest).
But they are less relevant for usernames, unless they too are used as
inputs to client-side cryptographic functions (e.g., as salts), but
even then the username query string might still be sent as-is
separately to the server.

>> Heck, we're not even told whether these rules should be applied by
>> the client, the server, or both.
>
> That is a very good point. This was something that bit us in RFC 3920
> (for XMPP) and we've cleared that up in 6122bis:

This is where the distinction between query, display, and storage (or
canonical) forms comes in.

> http://tools.ietf.org/html/draft-ietf-xmpp-6122bis-07#section-3
>
> In my experience, we can *say* that the client needs to do this, but
> the server will need to do it anyway since it can't trust the client
> to do the right thing. However, for passwords (which, as you note, we
> hope the server never sees in plaintext) the client would need to
> enforce the rules.

Correct, as to the last part.  I don't think we need the client to
apply this to anything that isn't an input to a cryptograhic function
on the client-side -- just send the darned thing as is.

>> Anyways, I'm for applying as few transformations as possible to
>> usernames on the *client* side and leaving the server to apply
>> RECOMMENDED, and a few REQUIRED rules for matching.
>
> I'd agree with that sentiment.

Great.

>> I don't see room for case folding in general,
>
> Even on the server side? Again, do you think it would be better to
> leave that up to the application?

I'd leave it to the site/mechanism/app -- whatever's appropriate.

>> but I do for specific cases (e.g., Turkish I handling).
>
> Unfortunately, local case mapping might be difficult for the server to
> perform because it doesn't necessarily have information about the
> locale of the user. So this is something that might best be handled at
> the client.

Ah, well, if we're dealing in Unicode we could send a language tag in
the string.  That's a non-starter.

But note that the server probably has a username database anyways, so
it knows the relevant language at account-creation time (or should
anyways).

Nico
--

From stpeter@stpeter.im  Wed Jul 10 11:21:59 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4D30A21F9EAA for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 11:21:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.531
X-Spam-Level: 
X-Spam-Status: No, score=-102.531 tagged_above=-999 required=5 tests=[AWL=0.068, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id awcWRG9248Ae for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 11:21:54 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id E8EC321F9FA4 for <precis@ietf.org>; Wed, 10 Jul 2013 11:21:48 -0700 (PDT)
Received: from ergon.local (unknown [128.107.239.233]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 030F1413F5; Wed, 10 Jul 2013 12:22:54 -0600 (MDT)
Message-ID: <51DDA63A.7080400@stpeter.im>
Date: Wed, 10 Jul 2013 12:21:46 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: precis@ietf.org
References: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com>
In-Reply-To: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Subject: Re: [precis] About precis-httpauth-prep plan
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 18:21:59 -0000

On 7/1/13 3:49 AM, Yutaka OIWA wrote:
> Dear PRECIS list members,
> 
> Corresponding to the request by Yoneya-san in Orlando,
> I am considering for a precis profile for HTTP-authentication.

Hi Yutaka,

My apologies for the delayed reply. I see that you have already posted
your I-D. I can provide detailed feedback, but first I wonder: why not
just use draft-ietf-precis-saslprepbis for usernames and passwords,
instead of defining a new PRECIS profile for HTTP authentication? Is
there something special about HTTP authentication that makes the profile
defined in draft-ietf-precis-saslprepbis unusable? Also, it seems
preferable to use the same profile for both SASL and HTTP (shared code,
common user expectations, etc.).

Thanks!

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Wed Jul 10 12:01:43 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0F18721F8808; Wed, 10 Jul 2013 12:01:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.534
X-Spam-Level: 
X-Spam-Status: No, score=-102.534 tagged_above=-999 required=5 tests=[AWL=0.065, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wskkcO8VVZHn; Wed, 10 Jul 2013 12:01:37 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 94CD421F8D0D; Wed, 10 Jul 2013 12:00:44 -0700 (PDT)
Received: from ergon.local (unknown [128.107.239.234]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id EE87E413F5; Wed, 10 Jul 2013 13:01:49 -0600 (MDT)
Message-ID: <51DDAF59.4040800@stpeter.im>
Date: Wed, 10 Jul 2013 13:00:41 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Nico Williams <nico@cryptonector.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com>
In-Reply-To: <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 19:01:43 -0000

On 7/2/13 5:20 PM, Nico Williams wrote:
> On Tue, Jul 2, 2013 at 2:56 PM, Peter Saint-Andre <stpeter@stpeter.im> wrote:
>> On 5/3/13 1:39 PM, Nico Williams wrote:
>>
>>> Please forgive my apparent apathy.  I lost track of this due to
>>> business travel.
>>
>> And please forgive my delay in replying. It's good to know you're not
>> apathetic. And as you can tell, we're proceeding rather slowly with
>> this work. That doesn't mean it is unimportant. This recent example
>> from the blogosphere might of interest:
>>
>> http://labs.spotify.com/2013/06/18/creative-usernames/
>>
>> PRECIS might have helped those folks avoid some significant pain.
>>
>>> I'm not sure where the case mapping requirement for usernames came
>>> from.
>>
>> Are you referring to global case mapping or local case mapping?
>>
>>> I guess it has something to do with the Turkish I and such.
>>
>> Yes, that is a nasty problem with even nastier consequences:
>>
>> http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-three-more-in-jail
> 
> !
> 
> But that can't apply here.  Or, if anything, case mappings makes it
> more likely.  Let's say I'm logged in in some app and it shows the
> username I typed in, but because of case mapping some typos are
> tolerated, so the username shown could offend someone.  Whereas if I'm
> required to type my username exactly one way (not including NF) then
> that can't happen.  So if anything that link indicates we should not
> have case mappings here...  :)
>
>> Just to be clear, that's an issue of what we're calling local case
>> mapping (where locale is taken into consideration).
>>
>>> I can't say I'm excited about this case mapping requirement; if
>>> anything it strikes as silly.
>>
>> In general, the opinion so far has been that, say, StPeter is treated
>> the same as stpeter when it comes to authentication and authorization
>> based on usernames. Do you disagree? If so, why? For example, would
>> you be inclined to leave this up to the protocol that uses SASL (say,
>> IMAP or XMPP) instead of specifying it in SASLprepbis?
> 
> I think it'd be nice if *servers* got to choose whether to do this.
> The principle here is that the server should make right when it comes
> to the username.  This means that clients should be pretty much able
> to send just about anything as a username and let the server figure it
> out.
> 
> Whether it's a server application or the mechanisms (or SASL library)
> that applies such rules is a different story, and one I don't think I
> care much about here.

Ah, I see.

It seems to me that there are numerous layers here:

1. SASL (including preparation and comparison rules)

2. The application protocol that's using SASL (e.g., IMAP)

3. A software implementation of the application protocol, which likely
embeds or links to a SASL implementation (e.g., dovecot)

4. A deployment of said software implementation (e.g., example.net)

By "server" I think you mean a deployment. Correct?

Rather than legislating in saslprepbis that all application protocols
shall leave casemapping up to implementations or deployments, I think
that it would be reasonable for the specification of an application
protocol using SASL (e.g., draft-ietf-xmpp-6122bis) to recommend or
require casemapping behavior for all implementations or deployments of
that application protocol, or to leave such decisions up to the
implementation or deployment. For example, perhaps the XMPP spec would
say "all implementations shall perform case mapping, full stop" whereas
the IMAP spec might leave that up to implementations or deployments.

>>> Why would we apply mappings to usernames (which are sent on the
>>> wire) that we don't apply to passwords (which servers generally
>>> don't get the plaintext of)?  We need mappings for passwords to
>>> make password entry reliable.  The same does NOT apply to
>>> usernames.
>>
>> My naÃ¯ve perspective is that the combination of username and password
>> is your credential (for password-based systems). If I provide StPeter
>> and AUrwyaxDQ6rH68OefESL as my username and password, IMHO we sure
>> want the password to be treated in a case-sensitive manner (since that
>> reduces the possibility of false positives), whereas we want the
>> username to be treated in a case-insensitive manner (since most
>> application protocols treat StPeter@example.com as the same account as
>> stpeter@example.com).
> 
> It's not just false positives: many sites require multiple character
> classes in password data, but case folding would nullify part of such
> policies :)

Indeed!

> If the user's password must survive with case intact then the user
> must be able to enter it portably (i.e., on many devices).  Surely
> asking the same of usernames is not an undue additional burden for the
> user.
> 
> Still, I don't mind if some site wants to have case-insensitive
> usernames.  I just don't want us to impose that policy on *all* sites.

I now agree that I don't want the SASLprepbis spec to impose that policy
on all sites, but I also don't think that I want the SASLprepbis spec to
impose deployment-layer policies on all application protocols. However,
I do think it's reasonable for the SASLprepbis spec to say
"specifications for application protocols that use SASLprepbis must
specify the casemapping policy for that application protocol; options
include but are not limited to legislating behavior for all
implementations or leaving casemapping up to particular deployments".

> Once again I'm thinking of online games, ones where people often
> convey ideas (usually comical ones) via their usernames.  Providing
> the most freedom possible here seems like the right thing to do;
> requiring case-insensitivity is denying some freedom.

The SASLprepbis document is about comparison and what gets sent over the
wire. An application might preserve case for user interface purposes but
still lowercase "StPeter" to "stpeter" for comparison purposes during
authentication.

See also the nickname spec (what you're talking about sounds more like
a nickname or screen name than a username, but that might be a
distinction without a difference):

http://tools.ietf.org/id/draft-ietf-precis-nickname-05.txt

>>> Also, looking at SASLprep and PRECIS, I see no mention of query
>>> strings vs. display vs. storage.  These distinctions matter.  But
>>> maybe I'm just failing to search for the right terms.
>>
>> Would you be so kind as to expand on that a bit? I'd like to make sure
>> I understand what you mean by each of those terms.
> 
> Sure.
> 
> Query string == a string entered by a user in some UI, to be matched
> against some thing's name.
> 
> Display string == a thing's name, as displayed to users in UIs.
> 
> Storage string == a thing's name as stored, and usually this is the
> canonical form of the thing's name.
> 
> For example, "nico" might be a query name for my Kerberos principal,
> but the display name might be nico@CRYPTONECTOR.COM, and the storage
> string will be in some format we don't really care about here but
> roughly equivalent to the display string form.
> 
> To continue the example, if my KDC was case-insensitive then "Nico"
> would also work as a query string; what I get for the display string
> might either match the query string or the storage string, and the
> storage string could be any of the many case variants of "nico" (but
> almost certainly would be case-folded in many implementations).
> 
> The relevance here is that we should apply as few transformations as
> possible to *query* strings on the client-side and just send them.
> What transformations a server applies then can be up to the server
> and/or the mechanism (e.g., a federated mechanism might need to apply
> transformations specified by it).
> 
> SASLprep-like stringpreps are very useful, especially for *passwords*
> because passwords may need to be in canonical form because they are
> used as inputs to client-side cryptographic functions (e.g., Digest).
> But they are less relevant for usernames, unless they too are used as
> inputs to client-side cryptographic functions (e.g., as salts), but
> even then the username query string might still be sent as-is
> separately to the server.

Thanks for clarifying.

>>> Heck, we're not even told whether these rules should be applied by
>>> the client, the server, or both.
>>
>> That is a very good point. This was something that bit us in RFC 3920
>> (for XMPP) and we've cleared that up in 6122bis:
> 
> This is where the distinction between query, display, and storage (or
> canonical) forms comes in.

Yes.

>> http://tools.ietf.org/html/draft-ietf-xmpp-6122bis-07#section-3
>>
>> In my experience, we can *say* that the client needs to do this, but
>> the server will need to do it anyway since it can't trust the client
>> to do the right thing. However, for passwords (which, as you note, we
>> hope the server never sees in plaintext) the client would need to
>> enforce the rules.
> 
> Correct, as to the last part.  I don't think we need the client to
> apply this to anything that isn't an input to a cryptograhic function
> on the client-side -- just send the darned thing as is.
> 
>>> Anyways, I'm for applying as few transformations as possible to
>>> usernames on the *client* side and leaving the server to apply
>>> RECOMMENDED, and a few REQUIRED rules for matching.
>>
>> I'd agree with that sentiment.
> 
> Great.
> 
>>> I don't see room for case folding in general,
>>
>> Even on the server side? Again, do you think it would be better to
>> leave that up to the application?
> 
> I'd leave it to the site/mechanism/app -- whatever's appropriate.

OK, good. That's consistent with what I typed earlier in this message.

>>> but I do for specific cases (e.g., Turkish I handling).
>>
>> Unfortunately, local case mapping might be difficult for the server to
>> perform because it doesn't necessarily have information about the
>> locale of the user. So this is something that might best be handled at
>> the client.
> 
> Ah, well, if we're dealing in Unicode we could send a language tag in
> the string.  That's a non-starter.
> 
> But note that the server probably has a username database anyways, so
> it knows the relevant language at account-creation time (or should
> anyways).

Quite possible. In XMPP the client can tell the server its locale, but
that might not be supported yet in other application protocols...

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From internet-drafts@ietf.org  Wed Jul 10 12:42:31 2013
Return-Path: <internet-drafts@ietf.org>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C991B21F9DA8; Wed, 10 Jul 2013 12:42:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.531
X-Spam-Level: 
X-Spam-Status: No, score=-102.531 tagged_above=-999 required=5 tests=[AWL=0.069, BAYES_00=-2.599, NO_RELAYS=-0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id p9b7Xj4g9uMZ; Wed, 10 Jul 2013 12:42:31 -0700 (PDT)
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id C11D921F9D8B; Wed, 10 Jul 2013 12:42:30 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: internet-drafts@ietf.org
To: i-d-announce@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 4.51.p2
Message-ID: <20130710194229.4141.77958.idtracker@ietfa.amsl.com>
Date: Wed, 10 Jul 2013 12:42:29 -0700
Cc: precis@ietf.org
Subject: [precis] I-D Action: draft-ietf-precis-nickname-06.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 19:42:32 -0000

A New Internet-Draft is available from the on-line Internet-Drafts director=
ies.
 This draft is a work item of the Preparation and Comparison of Internation=
alized Strings Working Group of the IETF.

	Title           : Preparation and Comparison of Nicknames
	Author(s)       : Peter Saint-Andre
	Filename        : draft-ietf-precis-nickname-06.txt
	Pages           : 8
	Date            : 2013-07-10

Abstract:
   This document describes how to prepare and compare Unicode strings
   representing nicknames, primarily for use within textual chatrooms.
   This profile is intended to be used by messaging and text
   conferencing technologies such as the Extensible Messaging and
   Presence Protocol (XMPP), the Message Session Relay Protocol (MSRP),
   and Centralized Conferencing (XCON).


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-precis-nickname

There's also a htmlized version available at:
http://tools.ietf.org/html/draft-ietf-precis-nickname-06

A diff from the previous version is available at:
http://www.ietf.org/rfcdiff?url2=3Ddraft-ietf-precis-nickname-06


Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/


From stpeter@stpeter.im  Wed Jul 10 12:47:12 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 36ADB21F9D5E for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 12:47:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.539
X-Spam-Level: 
X-Spam-Status: No, score=-102.539 tagged_above=-999 required=5 tests=[AWL=0.060, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kwE0PuANo48v for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 12:47:07 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 82A1F21F9D56 for <precis@ietf.org>; Wed, 10 Jul 2013 12:47:07 -0700 (PDT)
Received: from ergon.local (unknown [128.107.239.233]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 6B8BB413F5; Wed, 10 Jul 2013 13:48:14 -0600 (MDT)
Message-ID: <51DDBA39.2060706@stpeter.im>
Date: Wed, 10 Jul 2013 13:47:05 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: precis@ietf.org
References: <20130710194229.4141.77958.idtracker@ietfa.amsl.com>
In-Reply-To: <20130710194229.4141.77958.idtracker@ietfa.amsl.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Subject: Re: [precis] I-D Action: draft-ietf-precis-nickname-06.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 19:47:12 -0000

This document completed WGLC in December, but it has slowly gone out of
sync with the framework specification (e.g., with regard to the order of
operations). This small update brings it back into sync. I leave it up
to the chairs whether this requires a new Last Call, or some other form
of working group review.

Peter

On 7/10/13 1:42 PM, internet-drafts@ietf.org wrote:
> 
> A New Internet-Draft is available from the on-line Internet-Drafts directories.
>  This draft is a work item of the Preparation and Comparison of Internationalized Strings Working Group of the IETF.
> 
> 	Title           : Preparation and Comparison of Nicknames
> 	Author(s)       : Peter Saint-Andre
> 	Filename        : draft-ietf-precis-nickname-06.txt
> 	Pages           : 8
> 	Date            : 2013-07-10
> 
> Abstract:
>    This document describes how to prepare and compare Unicode strings
>    representing nicknames, primarily for use within textual chatrooms.
>    This profile is intended to be used by messaging and text
>    conferencing technologies such as the Extensible Messaging and
>    Presence Protocol (XMPP), the Message Session Relay Protocol (MSRP),
>    and Centralized Conferencing (XCON).
> 
> 
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-precis-nickname
> 
> There's also a htmlized version available at:
> http://tools.ietf.org/html/draft-ietf-precis-nickname-06
> 
> A diff from the previous version is available at:
> http://www.ietf.org/rfcdiff?url2=draft-ietf-precis-nickname-06
> 
> 
> Internet-Drafts are also available by anonymous FTP at:
> ftp://ftp.ietf.org/internet-drafts/
> 
> _______________________________________________
> precis mailing list
> precis@ietf.org
> https://www.ietf.org/mailman/listinfo/precis
> 



From stpeter@stpeter.im  Wed Jul 10 13:03:24 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D1C3521F9E18 for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 13:03:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.541
X-Spam-Level: 
X-Spam-Status: No, score=-102.541 tagged_above=-999 required=5 tests=[AWL=0.058, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FN+qBtxd-ap7 for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 13:03:19 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 6D79121F9DA1 for <precis@ietf.org>; Wed, 10 Jul 2013 13:03:19 -0700 (PDT)
Received: from ergon.local (unknown [128.107.239.233]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id BCEE8413F5; Wed, 10 Jul 2013 14:04:22 -0600 (MDT)
Message-ID: <51DDBE01.6090605@stpeter.im>
Date: Wed, 10 Jul 2013 14:03:13 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: "precis@ietf.org" <precis@ietf.org>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Subject: [precis] updated framework I-D
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 20:03:24 -0000

I have received no feedback about the (IMHO small) ordering issues I
raised several weeks ago:

http://www.ietf.org/mail-archive/web/precis/current/msg00456.html

http://www.ietf.org/mail-archive/web/precis/current/msg00459.html

Because the I-D submission deadline is fast approaching, I will soon
submit a revised I-D incorporating my proposed changes (as well as
numerous fixes to the codepoint table). We can discuss these as open
issues at IETF 87 in Berlin.

Thanks!

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From internet-drafts@ietf.org  Wed Jul 10 13:07:26 2013
Return-Path: <internet-drafts@ietf.org>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 48B6221F9EC6; Wed, 10 Jul 2013 13:07:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.532
X-Spam-Level: 
X-Spam-Status: No, score=-102.532 tagged_above=-999 required=5 tests=[AWL=0.068, BAYES_00=-2.599, NO_RELAYS=-0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sJ+aXY-bc2QP; Wed, 10 Jul 2013 13:07:25 -0700 (PDT)
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id CD42321F9970; Wed, 10 Jul 2013 13:07:25 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: internet-drafts@ietf.org
To: i-d-announce@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 4.51.p2
Message-ID: <20130710200725.14735.40771.idtracker@ietfa.amsl.com>
Date: Wed, 10 Jul 2013 13:07:25 -0700
Cc: precis@ietf.org
Subject: [precis] I-D Action: draft-ietf-precis-framework-09.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 20:07:26 -0000

A New Internet-Draft is available from the on-line Internet-Drafts director=
ies.
 This draft is a work item of the Preparation and Comparison of Internation=
alized Strings Working Group of the IETF.

	Title           : PRECIS Framework: Preparation and Comparison of Internat=
ionalized Strings in Application Protocols
	Author(s)       : Peter Saint-Andre
                          Marc Blanchet
	Filename        : draft-ietf-precis-framework-09.txt
	Pages           : 65
	Date            : 2013-07-10

Abstract:
   Application protocols using Unicode code points in protocol strings
   need to properly prepare such strings in order to perform valid
   comparison operations (e.g., for purposes of authentication or
   authorization).  This document defines a framework enabling
   application protocols to perform the preparation and comparison of
   internationalized strings (a.k.a.  "PRECIS") in a way that depends on
   the properties of Unicode code points and thus is agile with respect
   to versions of Unicode.  As a result, this framework provides a more
   sustainable approach to the handling of internationalized strings
   than the previous framework, known as Stringprep (RFC 3454).  A
   specification that reuses this framework can either directly use the
   PRECIS string classes or subclass the PRECIS string classes as
   needed.  This framework takes an approach similar to the revised
   internationalized domain names (IDNs) in applications (IDNA)
   technology (RFC 5890, RFC 5891, RFC 5892, RFC 5893, RFC 5894) and
   thus adheres to the high-level design goals described in the IAB's
   recommendations regarding IDNs (RFC 4690), albeit for application
   technologies other than the Domain Name System (DNS).  This document
   obsoletes RFC 3454.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-precis-framework

There's also a htmlized version available at:
http://tools.ietf.org/html/draft-ietf-precis-framework-09

A diff from the previous version is available at:
http://www.ietf.org/rfcdiff?url2=3Ddraft-ietf-precis-framework-09


Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/


From marc.blanchet@viagenie.ca  Wed Jul 10 13:42:19 2013
Return-Path: <marc.blanchet@viagenie.ca>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7D65321F9D4B for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 13:42:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Nj++VmBFmTOH for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 13:42:18 -0700 (PDT)
Received: from jazz.viagenie.ca (jazz.viagenie.ca [IPv6:2620:0:230:8000::2]) by ietfa.amsl.com (Postfix) with ESMTP id 6019421F871D for <precis@ietf.org>; Wed, 10 Jul 2013 13:42:18 -0700 (PDT)
Received: from h227.viagenie.ca (h227.viagenie.ca [206.123.31.227]) by jazz.viagenie.ca (Postfix) with ESMTPSA id 0347C47131; Wed, 10 Jul 2013 16:42:07 -0400 (EDT)
Content-Type: text/plain; charset=iso-8859-1
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Marc Blanchet <marc.blanchet@viagenie.ca>
In-Reply-To: <51DDA63A.7080400@stpeter.im>
Date: Wed, 10 Jul 2013 16:42:05 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <D2DC956F-6588-4345-AB60-1F0E306D7F63@viagenie.ca>
References: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com> <51DDA63A.7080400@stpeter.im>
To: Peter Saint-Andre <stpeter@stpeter.im>
X-Mailer: Apple Mail (2.1508)
Cc: precis@ietf.org
Subject: Re: [precis] About precis-httpauth-prep plan
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 20:42:19 -0000

Le 2013-07-10 =E0 14:21, Peter Saint-Andre <stpeter@stpeter.im> a =E9crit =
:

> On 7/1/13 3:49 AM, Yutaka OIWA wrote:
>> Dear PRECIS list members,
>>=20
>> Corresponding to the request by Yoneya-san in Orlando,
>> I am considering for a precis profile for HTTP-authentication.
>=20
> Hi Yutaka,
>=20
> My apologies for the delayed reply. I see that you have already posted
> your I-D. I can provide detailed feedback, but first I wonder: why not
> just use draft-ietf-precis-saslprepbis for usernames and passwords,
> instead of defining a new PRECIS profile for HTTP authentication? Is
> there something special about HTTP authentication that makes the =
profile
> defined in draft-ietf-precis-saslprepbis unusable? Also, it seems
> preferable to use the same profile for both SASL and HTTP (shared =
code,
> common user expectations, etc.).

same credentials carried over multiple apps...

Marc.

>=20
> Thanks!
>=20
> Peter
>=20
> --=20
> Peter Saint-Andre
> https://stpeter.im/
>=20
>=20
> _______________________________________________
> precis mailing list
> precis@ietf.org
> https://www.ietf.org/mailman/listinfo/precis


From stpeter@stpeter.im  Wed Jul 10 13:49:02 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DE55121F9E96 for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 13:49:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.543
X-Spam-Level: 
X-Spam-Status: No, score=-102.543 tagged_above=-999 required=5 tests=[AWL=0.056, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id btapo3uwFMZi for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 13:48:57 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id CB93F21F9E7C for <precis@ietf.org>; Wed, 10 Jul 2013 13:48:57 -0700 (PDT)
Received: from ergon.local (unknown [128.107.239.235]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 5D172413F5; Wed, 10 Jul 2013 14:50:04 -0600 (MDT)
Message-ID: <51DDC8B7.3050509@stpeter.im>
Date: Wed, 10 Jul 2013 14:48:55 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Marc Blanchet <marc.blanchet@viagenie.ca>
References: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com> <51DDA63A.7080400@stpeter.im> <D2DC956F-6588-4345-AB60-1F0E306D7F63@viagenie.ca>
In-Reply-To: <D2DC956F-6588-4345-AB60-1F0E306D7F63@viagenie.ca>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Cc: precis@ietf.org
Subject: Re: [precis] About precis-httpauth-prep plan
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 20:49:03 -0000

On 7/10/13 2:42 PM, Marc Blanchet wrote:
> 
> Le 2013-07-10 à 14:21, Peter Saint-Andre <stpeter@stpeter.im> a écrit :
> 
>> On 7/1/13 3:49 AM, Yutaka OIWA wrote:
>>> Dear PRECIS list members,
>>>
>>> Corresponding to the request by Yoneya-san in Orlando,
>>> I am considering for a precis profile for HTTP-authentication.
>>
>> Hi Yutaka,
>>
>> My apologies for the delayed reply. I see that you have already posted
>> your I-D. I can provide detailed feedback, but first I wonder: why not
>> just use draft-ietf-precis-saslprepbis for usernames and passwords,
>> instead of defining a new PRECIS profile for HTTP authentication? Is
>> there something special about HTTP authentication that makes the profile
>> defined in draft-ietf-precis-saslprepbis unusable? Also, it seems
>> preferable to use the same profile for both SASL and HTTP (shared code,
>> common user expectations, etc.).
> 
> same credentials carried over multiple apps...

Yes, that too! :-)

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Wed Jul 10 13:49:38 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DE06421F9E85; Wed, 10 Jul 2013 13:49:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.545
X-Spam-Level: 
X-Spam-Status: No, score=-102.545 tagged_above=-999 required=5 tests=[AWL=0.054, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wS6+WdMbYZur; Wed, 10 Jul 2013 13:49:34 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 82E8B21F9E7C; Wed, 10 Jul 2013 13:49:34 -0700 (PDT)
Received: from ergon.local (unknown [128.107.239.235]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id A8EA8413F5; Wed, 10 Jul 2013 14:50:32 -0600 (MDT)
Message-ID: <51DDC8D3.5060808@stpeter.im>
Date: Wed, 10 Jul 2013 14:49:23 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Nico Williams <nico@cryptonector.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im>
In-Reply-To: <51DDAF59.4040800@stpeter.im>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 20:49:39 -0000

Hi Nico, I've looked at this a bit further. Proposed text changes below...

On 7/10/13 1:00 PM, Peter Saint-Andre wrote:
> On 7/2/13 5:20 PM, Nico Williams wrote:
>> On Tue, Jul 2, 2013 at 2:56 PM, Peter Saint-Andre
>> <stpeter@stpeter.im> wrote:
>>> On 5/3/13 1:39 PM, Nico Williams wrote:
>>> 
>>>> Please forgive my apparent apathy.  I lost track of this due
>>>> to business travel.
>>> 
>>> And please forgive my delay in replying. It's good to know
>>> you're not apathetic. And as you can tell, we're proceeding
>>> rather slowly with this work. That doesn't mean it is
>>> unimportant. This recent example from the blogosphere might of
>>> interest:
>>> 
>>> http://labs.spotify.com/2013/06/18/creative-usernames/
>>> 
>>> PRECIS might have helped those folks avoid some significant
>>> pain.
>>> 
>>>> I'm not sure where the case mapping requirement for usernames
>>>> came from.
>>> 
>>> Are you referring to global case mapping or local case
>>> mapping?
>>> 
>>>> I guess it has something to do with the Turkish I and such.
>>> 
>>> Yes, that is a nasty problem with even nastier consequences:
>>> 
>>> http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-three-more-in-jail
>>
>>
>>> 
!
>> 
>> But that can't apply here.  Or, if anything, case mappings makes
>> it more likely.  Let's say I'm logged in in some app and it shows
>> the username I typed in, but because of case mapping some typos
>> are tolerated, so the username shown could offend someone.
>> Whereas if I'm required to type my username exactly one way (not
>> including NF) then that can't happen.  So if anything that link
>> indicates we should not have case mappings here...  :)
>> 
>>> Just to be clear, that's an issue of what we're calling local
>>> case mapping (where locale is taken into consideration).
>>> 
>>>> I can't say I'm excited about this case mapping requirement;
>>>> if anything it strikes as silly.
>>> 
>>> In general, the opinion so far has been that, say, StPeter is
>>> treated the same as stpeter when it comes to authentication and
>>> authorization based on usernames. Do you disagree? If so, why?
>>> For example, would you be inclined to leave this up to the
>>> protocol that uses SASL (say, IMAP or XMPP) instead of
>>> specifying it in SASLprepbis?
>> 
>> I think it'd be nice if *servers* got to choose whether to do
>> this. The principle here is that the server should make right
>> when it comes to the username.  This means that clients should be
>> pretty much able to send just about anything as a username and
>> let the server figure it out.
>> 
>> Whether it's a server application or the mechanisms (or SASL
>> library) that applies such rules is a different story, and one I
>> don't think I care much about here.
> 
> Ah, I see.
> 
> It seems to me that there are numerous layers here:
> 
> 1. SASL (including preparation and comparison rules)
> 
> 2. The application protocol that's using SASL (e.g., IMAP)
> 
> 3. A software implementation of the application protocol, which
> likely embeds or links to a SASL implementation (e.g., dovecot)
> 
> 4. A deployment of said software implementation (e.g.,
> example.net)
> 
> By "server" I think you mean a deployment. Correct?
> 
> Rather than legislating in saslprepbis that all application
> protocols shall leave casemapping up to implementations or
> deployments, I think that it would be reasonable for the
> specification of an application protocol using SASL (e.g.,
> draft-ietf-xmpp-6122bis) to recommend or require casemapping
> behavior for all implementations or deployments of that application
> protocol, or to leave such decisions up to the implementation or
> deployment. For example, perhaps the XMPP spec would say "all
> implementations shall perform case mapping, full stop" whereas the
> IMAP spec might leave that up to implementations or deployments.

Here is what I suggest in Section 2.2 of draft-ietf-precis-saslprepbis:

OLD
   3.  Uppercase and titlecase characters MUST be mapped to their
       lowercase equivalents.

NEW
   3.  Uppercase and titlecase characters MAY be mapped to their
       lowercase equivalents.

Then add the following sentence at the end of that section:

   Application protocols that use this profile MUST specify whether case
   mapping or additional mapping is to be applied by implementations or
   deployments of that protocol.

Does that seem acceptable?

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From nico@cryptonector.com  Wed Jul 10 14:20:53 2013
Return-Path: <nico@cryptonector.com>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 185CE21F9A30; Wed, 10 Jul 2013 14:20:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.377
X-Spam-Level: 
X-Spam-Status: No, score=-2.377 tagged_above=-999 required=5 tests=[AWL=-0.400, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MBTph78rDOOq; Wed, 10 Jul 2013 14:20:48 -0700 (PDT)
Received: from homiemail-a25.g.dreamhost.com (caiajhbdccah.dreamhost.com [208.97.132.207]) by ietfa.amsl.com (Postfix) with ESMTP id 2483221F99FA; Wed, 10 Jul 2013 14:20:48 -0700 (PDT)
Received: from homiemail-a25.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a25.g.dreamhost.com (Postfix) with ESMTP id 14C0E678089; Wed, 10 Jul 2013 14:20:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type; s=cryptonector.com; bh=iduQE6CaJQL5QIfe2giP ql/rWXk=; b=Z94b2l3FWuZNEyAZWH58fuDfWPtQsQaU3Vj2HHWO6D8anh1f9P3f POJMzx1nsWWElLixc8OEfa8rEWkWtT3sYz6GckMTZuOXy50BaY4ni5bjcDvGKlXb qSBNQDBjYT8CU7hd/w2QwTEooB5Cb3ge7C7aB77hODTp1thhinAzENo=
Received: from mail-wi0-f170.google.com (mail-wi0-f170.google.com [209.85.212.170]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a25.g.dreamhost.com (Postfix) with ESMTPSA id 028AB67808D;  Wed, 10 Jul 2013 14:20:18 -0700 (PDT)
Received: by mail-wi0-f170.google.com with SMTP id ey16so12904569wid.5 for <multiple recipients>; Wed, 10 Jul 2013 14:20:17 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=LABTzHsiRrtfmVtvWTjrzGDA5KQk5U4Lvcqd1pK/beU=; b=iRwnUdexvtUSdi8iboWJWlZ9IKdIeNNv84nLIxZmeAIm+p/aAVtF0mjBnRBQ18wLNL 0vAtO1x708yUIvLzjD+/SZ845SzkfldQx2dFoXExmoSWQLdAvdyRBCZqWVVHilH0pPE8 6wXOYOt2Q6akxPnTBUHcbNWMCDQpHqQnxqZXTIsUk/MgHIXA6SmPbkESYzsDAUSWCbYI 4UAyOrgs8c1WccPhRljlT+fjg93vLsLTMNRyxR3Dkt9gqWaQbJFvI97pVwwdSdAWIkW9 R++XGSmNjxiHj35pZKlj7DbJ9MTzYP65jdoQdGyFprslHulUsc5yt8NM9dAg0L1yGAPl w73g==
MIME-Version: 1.0
X-Received: by 10.194.240.169 with SMTP id wb9mr18554445wjc.90.1373491217156;  Wed, 10 Jul 2013 14:20:17 -0700 (PDT)
Received: by 10.217.38.138 with HTTP; Wed, 10 Jul 2013 14:20:16 -0700 (PDT)
In-Reply-To: <51DDAF59.4040800@stpeter.im>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im>
Date: Wed, 10 Jul 2013 16:20:16 -0500
Message-ID: <CAK3OfOiRFC0d5NnNPoFyqGJeuWxifdOjQEh-Wu+T1j=-HJZv8Q@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Content-Type: text/plain; charset=UTF-8
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 21:20:53 -0000

On Wed, Jul 10, 2013 at 2:00 PM, Peter Saint-Andre <stpeter@stpeter.im> wrote:
> On 7/2/13 5:20 PM, Nico Williams wrote:
>> I think it'd be nice if *servers* got to choose whether to do this.
>> The principle here is that the server should make right when it comes
>> to the username.  This means that clients should be pretty much able
>> to send just about anything as a username and let the server figure it
>> out.
>>
>> Whether it's a server application or the mechanisms (or SASL library)
>> that applies such rules is a different story, and one I don't think I
>> care much about here.
>
> Ah, I see.
>
> It seems to me that there are numerous layers here:

Yes.  Lots of layers.  Consider SASL/GS1 and SASL/GS2 as well.

> By "server" I think you mean a deployment. Correct?

Generally, yes.

> Rather than legislating in saslprepbis that all application protocols
> shall leave casemapping up to implementations or deployments, I think
> that it would be reasonable for the specification of an application
> protocol using SASL (e.g., draft-ietf-xmpp-6122bis) to recommend or
> require casemapping behavior for all implementations or deployments of
> that application protocol, or to leave such decisions up to the
> implementation or deployment. For example, perhaps the XMPP spec would
> say "all implementations shall perform case mapping, full stop" whereas
> the IMAP spec might leave that up to implementations or deployments.

We could have:

 - apps specify whether to case fold
 - apps specify that the server can casefold if it wants

That's fine with me.

Note that the second comes naturally from speaking of
query/display/store syntaxes.  The client only deals in query and
display syntaxes for usernames, so the server can make right.

>> Still, I don't mind if some site wants to have case-insensitive
>> usernames.  I just don't want us to impose that policy on *all* sites.
>
> I now agree that I don't want the SASLprepbis spec to impose that policy
> on all sites, but I also don't think that I want the SASLprepbis spec to
> impose deployment-layer policies on all application protocols. However,
> I do think it's reasonable for the SASLprepbis spec to say
> "specifications for application protocols that use SASLprepbis must
> specify the casemapping policy for that application protocol; options
> include but are not limited to legislating behavior for all
> implementations or leaving casemapping up to particular deployments".

No, not MUST, but MAY is fine, and I might go along with SHOULD.
First, we'd be informing authors of app protocol specs -- we can use
RFC2119 language for that, but it's hard to enforce -- this language
doesn't deal with interop.

>> Once again I'm thinking of online games, ones where people often
>> convey ideas (usually comical ones) via their usernames.  Providing
>> the most freedom possible here seems like the right thing to do;
>> requiring case-insensitivity is denying some freedom.
>
> The SASLprepbis document is about comparison and what gets sent over the
> wire. An application might preserve case for user interface purposes but
> still lowercase "StPeter" to "stpeter" for comparison purposes during
> authentication.

The only party doing comparisons is the server, therefore the only
party that should have to apply any sort of normalization should also
be the server -- otherwise if the client also normalizes *prevents*
some names from being useful/usable.  Normalizations that preserve
equivalence can be OK on the client side (e.g., Unicode
normalization), but case folding loses information.

This principle, that the party doing comparisons/lookups (because the
server might be comparing hashes for all we know) is the party that
should normalize, is a very useful principle here.  It follows from
distinguishing types of name syntax.

If multiple parties have to do these comparisons/lookups *then* we may
need to say more about who normalizes and when (and why).

> See also the nickname spec (what you're talking about sounds more like
> a nickname or screen name than a username, but that might be a
> distinction without a difference):

Remember that what I have in mind is a bevy of online games where
users are free to pick usernames we'd *never* consider valid in an
enterprise environment, like "Joe 6-pack (I'm the best)".

(For an example you can see for yourself, download bzflag and play for
a bit.  It's an open source game with user-contributed maps, user-run
servers, and so on.  Its users tend to have weird names -- these
aren't nicknames, they *are* the usernames, it's what you type in at
login time.)

>> I'd leave it to the site/mechanism/app -- whatever's appropriate.
>
> OK, good. That's consistent with what I typed earlier in this message.

Well, except I want to be able to leave it to the server if the app
protocol authors think that's fine.

I don't want to prescribe that app protocols must prescribe which
normalization the clients apply.  I don't mind if some app protocols
do.  But I want it to be possible that the client doesn't have to.  In
fact, I'd prefer if SASL clients *never* had to normalize usernames
*except* when they must use them for salting purposes (but still send
the unmodified original as the actual username) -- it's far simpler
and most flexible this way.

>> Ah, well, if we're dealing in Unicode we could send a language tag in
>> the string.  That's a non-starter.
>>
>> But note that the server probably has a username database anyways, so
>> it knows the relevant language at account-creation time (or should
>> anyways).
>
> Quite possible. In XMPP the client can tell the server its locale, but
> that might not be supported yet in other application protocols...

Right, but I think the server still has enough context.  In the worst
case scenario it might have to try N different normalizations and
lookups, but I kinda doubt N will ever be larger than 1.

Nico
--

From marc.blanchet@viagenie.ca  Wed Jul 10 15:07:57 2013
Return-Path: <marc.blanchet@viagenie.ca>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 107CE21F9CE6; Wed, 10 Jul 2013 15:07:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5c8DpvNmdxAS; Wed, 10 Jul 2013 15:07:56 -0700 (PDT)
Received: from jazz.viagenie.ca (jazz.viagenie.ca [IPv6:2620:0:230:8000::2]) by ietfa.amsl.com (Postfix) with ESMTP id 0045F21F9CCC; Wed, 10 Jul 2013 15:07:55 -0700 (PDT)
Received: from h227.viagenie.ca (h227.viagenie.ca [206.123.31.227]) by jazz.viagenie.ca (Postfix) with ESMTPSA id AA630403ED; Wed, 10 Jul 2013 18:07:46 -0400 (EDT)
Content-Type: text/plain; charset=iso-8859-1
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Marc Blanchet <marc.blanchet@viagenie.ca>
In-Reply-To: <51DDC8D3.5060808@stpeter.im>
Date: Wed, 10 Jul 2013 18:07:37 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im>
To: Peter Saint-Andre <stpeter@stpeter.im>
X-Mailer: Apple Mail (2.1508)
Cc: kitten@ietf.org, Nico Williams <nico@cryptonector.com>, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 22:07:57 -0000

Le 2013-07-10 =E0 16:49, Peter Saint-Andre <stpeter@stpeter.im> a =E9crit =
:

> Hi Nico, I've looked at this a bit further. Proposed text changes =
below...
>=20
> On 7/10/13 1:00 PM, Peter Saint-Andre wrote:
>> On 7/2/13 5:20 PM, Nico Williams wrote:
>>> On Tue, Jul 2, 2013 at 2:56 PM, Peter Saint-Andre
>>> <stpeter@stpeter.im> wrote:
>>>> On 5/3/13 1:39 PM, Nico Williams wrote:
>>>>=20
>>>>> Please forgive my apparent apathy.  I lost track of this due
>>>>> to business travel.
>>>>=20
>>>> And please forgive my delay in replying. It's good to know
>>>> you're not apathetic. And as you can tell, we're proceeding
>>>> rather slowly with this work. That doesn't mean it is
>>>> unimportant. This recent example from the blogosphere might of
>>>> interest:
>>>>=20
>>>> http://labs.spotify.com/2013/06/18/creative-usernames/
>>>>=20
>>>> PRECIS might have helped those folks avoid some significant
>>>> pain.
>>>>=20
>>>>> I'm not sure where the case mapping requirement for usernames
>>>>> came from.
>>>>=20
>>>> Are you referring to global case mapping or local case
>>>> mapping?
>>>>=20
>>>>> I guess it has something to do with the Turkish I and such.
>>>>=20
>>>> Yes, that is a nasty problem with even nastier consequences:
>>>>=20
>>>> =
http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-t=
hree-more-in-jail
>>>=20
>>>=20
>>>>=20
> !
>>>=20
>>> But that can't apply here.  Or, if anything, case mappings makes
>>> it more likely.  Let's say I'm logged in in some app and it shows
>>> the username I typed in, but because of case mapping some typos
>>> are tolerated, so the username shown could offend someone.
>>> Whereas if I'm required to type my username exactly one way (not
>>> including NF) then that can't happen.  So if anything that link
>>> indicates we should not have case mappings here...  :)
>>>=20
>>>> Just to be clear, that's an issue of what we're calling local
>>>> case mapping (where locale is taken into consideration).
>>>>=20
>>>>> I can't say I'm excited about this case mapping requirement;
>>>>> if anything it strikes as silly.
>>>>=20
>>>> In general, the opinion so far has been that, say, StPeter is
>>>> treated the same as stpeter when it comes to authentication and
>>>> authorization based on usernames. Do you disagree? If so, why?
>>>> For example, would you be inclined to leave this up to the
>>>> protocol that uses SASL (say, IMAP or XMPP) instead of
>>>> specifying it in SASLprepbis?
>>>=20
>>> I think it'd be nice if *servers* got to choose whether to do
>>> this. The principle here is that the server should make right
>>> when it comes to the username.  This means that clients should be
>>> pretty much able to send just about anything as a username and
>>> let the server figure it out.
>>>=20
>>> Whether it's a server application or the mechanisms (or SASL
>>> library) that applies such rules is a different story, and one I
>>> don't think I care much about here.
>>=20
>> Ah, I see.
>>=20
>> It seems to me that there are numerous layers here:
>>=20
>> 1. SASL (including preparation and comparison rules)
>>=20
>> 2. The application protocol that's using SASL (e.g., IMAP)
>>=20
>> 3. A software implementation of the application protocol, which
>> likely embeds or links to a SASL implementation (e.g., dovecot)
>>=20
>> 4. A deployment of said software implementation (e.g.,
>> example.net)
>>=20
>> By "server" I think you mean a deployment. Correct?
>>=20
>> Rather than legislating in saslprepbis that all application
>> protocols shall leave casemapping up to implementations or
>> deployments, I think that it would be reasonable for the
>> specification of an application protocol using SASL (e.g.,
>> draft-ietf-xmpp-6122bis) to recommend or require casemapping
>> behavior for all implementations or deployments of that application
>> protocol, or to leave such decisions up to the implementation or
>> deployment. For example, perhaps the XMPP spec would say "all
>> implementations shall perform case mapping, full stop" whereas the
>> IMAP spec might leave that up to implementations or deployments.
>=20
> Here is what I suggest in Section 2.2 of =
draft-ietf-precis-saslprepbis:
>=20
> OLD
>   3.  Uppercase and titlecase characters MUST be mapped to their
>       lowercase equivalents.
>=20
> NEW
>   3.  Uppercase and titlecase characters MAY be mapped to their
>       lowercase equivalents.
>=20
> Then add the following sentence at the end of that section:
>=20
>   Application protocols that use this profile MUST specify whether =
case
>   mapping or additional mapping is to be applied by implementations or
>   deployments of that protocol.

I have a hard time thinking that, especially for credentials, app =
protocol 1 chooses no mapping and app protocol 2 chooses mapping and =
that both are using the SASL layer below.  Looks like looking for =
trouble here. no?

Marc.


>=20
> Does that seem acceptable?
>=20
> Peter
>=20
> --=20
> Peter Saint-Andre
> https://stpeter.im/
>=20
>=20
> _______________________________________________
> precis mailing list
> precis@ietf.org
> https://www.ietf.org/mailman/listinfo/precis


From nico@cryptonector.com  Wed Jul 10 15:37:12 2013
Return-Path: <nico@cryptonector.com>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6BD2411E8144; Wed, 10 Jul 2013 15:37:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.341
X-Spam-Level: 
X-Spam-Status: No, score=-2.341 tagged_above=-999 required=5 tests=[AWL=-0.364, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QcXCQZpteEtO; Wed, 10 Jul 2013 15:37:07 -0700 (PDT)
Received: from homiemail-a54.g.dreamhost.com (caiajhbdcahe.dreamhost.com [208.97.132.74]) by ietfa.amsl.com (Postfix) with ESMTP id 8258611E8124; Wed, 10 Jul 2013 15:37:07 -0700 (PDT)
Received: from homiemail-a54.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a54.g.dreamhost.com (Postfix) with ESMTP id A025540122425;  Wed, 10 Jul 2013 15:37:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type; s=cryptonector.com; bh=FpPp/OwLxlRo2gFKh12Z 8xAUimU=; b=azeIUAyoHm0jTfMX0vqREqPQ7bk/iDO+CoYXHaI67kFofV6bwN6w SFEsehocUWJHCVUBK7kCKD9gzHr8LyyY3cT+JEtzMsO80+UEYz2YwcTHspvydLgO D/BUXISfQohGNOrdmG+8JsIW1g2NuDIG1YC8GLTr8NXMiM7Kmmp2LPU=
Received: from mail-wi0-f173.google.com (mail-wi0-f173.google.com [209.85.212.173]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a54.g.dreamhost.com (Postfix) with ESMTPSA id 206924012241C; Wed, 10 Jul 2013 15:37:05 -0700 (PDT)
Received: by mail-wi0-f173.google.com with SMTP id hq4so11957093wib.12 for <multiple recipients>; Wed, 10 Jul 2013 15:37:04 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=tze3ce0Qt5Hee+R1/X3HqY6oVMIgcDe6ypuNt5HGK5k=; b=o5ZXRlwqnAsnXlgvVgdDBAxTtIR8TpRVe590Gd1RebtQPMNoqYkyWahkPaxXyM+EBM rGdXLib4W2+MB1Hxr5Lm6H9hJ2m3GuYrRoQ8jofZ809IFyEq6nWE6cxherysml96NsZo owiKbPVQqCNtD5MYtL9np3FBDb4Mti/xu7S/x9AU/En88nrg3q6bleduHOAJfivtgQRa HUkXJaUKM6inmWsMc2qFS9wur6JQuGbQynzdd65MD79U94KZlruUhn5N00G4eHnsca4h x28H737GCR/zbVK26cbBJzAI+Rae2SmwWFCHaR8JL9yNMy4KaJH5j3aUqGNyyuhxCYhK j/AQ==
MIME-Version: 1.0
X-Received: by 10.194.240.169 with SMTP id wb9mr18703595wjc.90.1373495824379;  Wed, 10 Jul 2013 15:37:04 -0700 (PDT)
Received: by 10.217.38.138 with HTTP; Wed, 10 Jul 2013 15:37:04 -0700 (PDT)
In-Reply-To: <51DDC8D3.5060808@stpeter.im>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im>
Date: Wed, 10 Jul 2013 17:37:04 -0500
Message-ID: <CAK3OfOj0enci3FivQEQtrOxWAvcmZFdC8jJzHmFO9n-sm5OBVg@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Content-Type: text/plain; charset=UTF-8
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 22:37:12 -0000

On Wed, Jul 10, 2013 at 3:49 PM, Peter Saint-Andre <stpeter@stpeter.im> wrote:
> Here is what I suggest in Section 2.2 of draft-ietf-precis-saslprepbis:
>
> OLD
>    3.  Uppercase and titlecase characters MUST be mapped to their
>        lowercase equivalents.
>
> NEW
>    3.  Uppercase and titlecase characters MAY be mapped to their
>        lowercase equivalents.

Do we need to give advice regarding the use of query strings for
cryptographic protocols?  E.g., usernames as salts.  I think we do.
Specifically, *mechanisms* must specify what normalizations (and let's
provide a nice one for them to all use) for such purposes.

> Then add the following sentence at the end of that section:
>
>    Application protocols that use this profile MUST specify whether case
>    mapping or additional mapping is to be applied by implementations or
>    deployments of that protocol.
>
> Does that seem acceptable?

Yes.

Nico
--

From nico@cryptonector.com  Wed Jul 10 15:41:50 2013
Return-Path: <nico@cryptonector.com>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DFDE421F9CC2; Wed, 10 Jul 2013 15:41:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.064
X-Spam-Level: 
X-Spam-Status: No, score=-2.064 tagged_above=-999 required=5 tests=[AWL=-0.087, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id waIVwK7Djhvn; Wed, 10 Jul 2013 15:41:46 -0700 (PDT)
Received: from homiemail-a16.g.dreamhost.com (caiajhbdcbef.dreamhost.com [208.97.132.145]) by ietfa.amsl.com (Postfix) with ESMTP id E49F821F9CBF; Wed, 10 Jul 2013 15:41:45 -0700 (PDT)
Received: from homiemail-a16.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a16.g.dreamhost.com (Postfix) with ESMTP id 91778508072; Wed, 10 Jul 2013 15:41:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type:content-transfer-encoding; s= cryptonector.com; bh=jVYMAzIE+etpnZVZXMwwGBVOXx0=; b=aOB1g4X1Wal 0zelm8gp92mCFe/Z2wPe95yC87beYJhV4Ji7B3bdMJEx531V9bKVFeXRYcxC5iRf Y6kncLmEusRvoOHto9fNgxJ2SWhrEKElVYhAYA5Od8/ZILVc9QLOvp+EsnyA74Yl +HK6B369EG3o0YI20RciqtN/W5K3uRHY=
Received: from mail-we0-f169.google.com (mail-we0-f169.google.com [74.125.82.169]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a16.g.dreamhost.com (Postfix) with ESMTPSA id 19CF9508063;  Wed, 10 Jul 2013 15:41:44 -0700 (PDT)
Received: by mail-we0-f169.google.com with SMTP id n57so6432727wev.28 for <multiple recipients>; Wed, 10 Jul 2013 15:41:43 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=skX79uj6vm5EdVWFb6wH3W0CE0/m/h9nD8JfX7q7dos=; b=Z9SaMhifEBpUAfn3b887qlsanp4kmM3/xBy2FHbhRi9hyIpQVOh/KqsrWpZ7yTPGX5 UcowRmPKiENDQBfKjM4ZeNTp+R+EXO3RcLpb9l6ClGKbkQSPD2q6PDCqbnXZGxOAOFzp w1qu4jcd8zMXwk8PaLB0777FKvY5fWRv5oknuv/ztRPfWeIg5PrIz8QuIRiR6/G1eAkU 63aOFlvDi/6e3FpANGVFRS4R4rqJbU3OIJluBjsd7QzGmnTAA7QCZiYnI01YsKbOYOIA SeqgfsmERT6VYVR7770oyx3GBFs20QTWOgQboUBjBo8GPn1E9f6ljLMwR5LfRB+1GOxb YBxg==
MIME-Version: 1.0
X-Received: by 10.180.84.70 with SMTP id w6mr18243964wiy.36.1373496103676; Wed, 10 Jul 2013 15:41:43 -0700 (PDT)
Received: by 10.217.38.138 with HTTP; Wed, 10 Jul 2013 15:41:43 -0700 (PDT)
In-Reply-To: <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca>
Date: Wed, 10 Jul 2013 17:41:43 -0500
Message-ID: <CAK3OfOijd2AvHgHd_Wi3+S=PZkTyUjRuRAXj5fV26ArsRO8zKg@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: Marc Blanchet <marc.blanchet@viagenie.ca>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2013 22:41:51 -0000

On Wed, Jul 10, 2013 at 5:07 PM, Marc Blanchet
<marc.blanchet@viagenie.ca> wrote:
> Le 2013-07-10 =C3=A0 16:49, Peter Saint-Andre <stpeter@stpeter.im> a =C3=
=A9crit :
>> Here is what I suggest in Section 2.2 of draft-ietf-precis-saslprepbis:
>>
>> OLD
>>   3.  Uppercase and titlecase characters MUST be mapped to their
>>       lowercase equivalents.
>>
>> NEW
>>   3.  Uppercase and titlecase characters MAY be mapped to their
>>       lowercase equivalents.
>>
>> Then add the following sentence at the end of that section:
>>
>>   Application protocols that use this profile MUST specify whether case
>>   mapping or additional mapping is to be applied by implementations or
>>   deployments of that protocol.
>
> I have a hard time thinking that, especially for credentials, app protoco=
l 1 chooses no mapping and app protocol 2 chooses mapping and that both are=
 using the SASL layer below.  Looks like looking for trouble here. no?

The mechanism on the server side absolutely must apply whatever
normalization is appropriate for it.

The client should not have to.

The app protocol could specify whether the client does or does not
have to, I don't mind that.  But it'd be silly to specify something
that conflicts with whatever the mechanism will apply, so, that's a
good point.

All the more reason to have the app do nothing with usernames.  Just
pass them to the mechanism.  Let the mechanism work it out.

The mechanism on the client side should only normalize usernames for
the purposes of generating salts.

Also, the mechanism on the client side may want to apply Unicode
normalization if the client has an input mode that produces NFD (say)
when most servers happen to not implement a normalization (though they
should) and expect NFC (say, which mostly they do).

Nico
--

From y.oiwa@aist.go.jp  Wed Jul 10 18:20:52 2013
Return-Path: <y.oiwa@aist.go.jp>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7059621F922A for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 18:20:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.977
X-Spam-Level: 
X-Spam-Status: No, score=-5.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jr6z8jBV321u for <precis@ietfa.amsl.com>; Wed, 10 Jul 2013 18:20:48 -0700 (PDT)
Received: from na3sys010aog107.obsmtp.com (na3sys010aog107.obsmtp.com [74.125.245.82]) by ietfa.amsl.com (Postfix) with ESMTP id AA23921F8F4A for <precis@ietf.org>; Wed, 10 Jul 2013 18:20:41 -0700 (PDT)
Received: from mail-ve0-f173.google.com ([209.85.128.173]) (using TLSv1) by na3sys010aob107.postini.com ([74.125.244.12]) with SMTP ID DSNKUd4IZK8+FFehGohcWvzJXK41W6Wg+pvm@postini.com; Wed, 10 Jul 2013 18:20:46 PDT
Received: by mail-ve0-f173.google.com with SMTP id jw11so6756807veb.32 for <precis@ietf.org>; Wed, 10 Jul 2013 18:20:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aist.go.jp; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=yd2DWmHK9MJf091p0garo+YVEkgwDxAgDY0I1klPbp8=; b=caiQayiuR+dW+Uz/gZrahy8f4tnNg/wKyTY0Zt/JsVg3we6UBwremU07nwk4A1+QTn P/zNG054qGM3ynnUV1xGHjVVAZVqiQ/JLPLPkBJ8vmpK2CbS5UYjuTgC2sZHyY2uIKad hoRi0HaBulG80/+kzfkxCHfizInv4shhlFM+c=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:x-gm-message-state; bh=yd2DWmHK9MJf091p0garo+YVEkgwDxAgDY0I1klPbp8=; b=TQDzT5tYKR248Uybgx/TrCpmqKPnjr8FxS2yc0sa0/Nody6vNNyaEba4omlFw9mDBW v0Vok5b26cYuOA4lfrvMYnm2tnZ2QO2QSBIfrOONgXIYv9CD9kXzfPOrSI+g8/rWPbAJ zNkILXaLExI9abE1PEmlSxAe+7Mq9zm0JDlVQvXQkPE9eeEK83uipd8dOquCN4JvUdgM tu83jYSmck+QzTA+kzu+GwN7ADPuv06bEyTyri61OE83xxU4gYmt7bGbIeSwbBDLIrXK fQeaFdA4AeuaWHNpaG98XwBmCqLNf/ijUDSHVTn3BOoC26q4Sbxdu4L3erExuuG87KfR Nvgw==
X-Received: by 10.58.86.70 with SMTP id n6mr20828845vez.8.1373505635496; Wed, 10 Jul 2013 18:20:35 -0700 (PDT)
X-Received: by 10.58.86.70 with SMTP id n6mr20828842vez.8.1373505635373; Wed, 10 Jul 2013 18:20:35 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.58.230.101 with HTTP; Wed, 10 Jul 2013 18:20:15 -0700 (PDT)
In-Reply-To: <51DDA63A.7080400@stpeter.im>
References: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com> <51DDA63A.7080400@stpeter.im>
From: Yutaka OIWA <y.oiwa@aist.go.jp>
Date: Thu, 11 Jul 2013 10:20:15 +0900
Message-ID: <CAMeZVwsE3JbCdiHW5bP1fUauGb-9gi41Ku6+uJKX8y-zNHUeCg@mail.gmail.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Content-Type: text/plain; charset=ISO-8859-1
X-Gm-Message-State: ALoCoQlg/sgOdAtsAopexdjV9mNLfPF5wwwkLAtD8YrfPz1/WIE1WDCuWMgzRX+X9eFjzLivAZDx+pXhDxnV0zDUF9S0sOaoXQDEqvrCxGDnzA6XIu+I01b9idYwztmcwERSfYWwDZbjCjxe39c5uOcp1KbBXnSEwg==
Cc: precis@ietf.org
Subject: Re: [precis] About precis-httpauth-prep plan
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 01:20:52 -0000

> Is there something special about HTTP authentication that makes the profile
> defined in draft-ietf-precis-saslprepbis unusable?

Simply speaking, case mapping.
To interoperate with existing user DBs, and to use with
case-sensitive existing systems, case mapping for
general-purpose HTTP authentication is a MUST-NOT.
We also expect that existing ASCII-only systems will
not implement the HTTPAUTHprep, and the existing
HTTP authentication is case-sensitive (or ASCII octetwise),
we SHOULD keep ASCII transparency, which means case-sensitive.

As you might have already read, HTTPAUTHprep will be
one of the simplest PRECIS profile.
(Possibly it may be called a SIMPLE precis profile instead.)
Given that there is a simple-enough case-insensitive
profile, I will be happy to merge with it.


2013/7/11 Peter Saint-Andre <stpeter@stpeter.im>:
> On 7/1/13 3:49 AM, Yutaka OIWA wrote:
>> Dear PRECIS list members,
>>
>> Corresponding to the request by Yoneya-san in Orlando,
>> I am considering for a precis profile for HTTP-authentication.
>
> Hi Yutaka,
>
> My apologies for the delayed reply. I see that you have already posted
> your I-D. I can provide detailed feedback, but first I wonder: why not
> just use draft-ietf-precis-saslprepbis for usernames and passwords,
> instead of defining a new PRECIS profile for HTTP authentication? Is
> there something special about HTTP authentication that makes the profile
> defined in draft-ietf-precis-saslprepbis unusable? Also, it seems
> preferable to use the same profile for both SASL and HTTP (shared code,
> common user expectations, etc.).
>
> Thanks!
>
> Peter
>
> --
> Peter Saint-Andre
> https://stpeter.im/
>
>
> _______________________________________________
> precis mailing list
> precis@ietf.org
> https://www.ietf.org/mailman/listinfo/precis



-- 
Yutaka OIWA, Ph.D.                 Leader, System Life-cycle Research Group
                               Research Institute for Secure Systems (RISEC)
     National Institute of Advanced Industrial Science and Technology (AIST)
                       Mail addresses: <y.oiwa@aist.go.jp>, <yutaka@oiwa.jp>
OpenPGP: id[440546B5] fp[7C9F 723A 7559 3246 229D  3139 8677 9BD2 4405 46B5]

From alexey.melnikov@isode.com  Thu Jul 11 00:43:26 2013
Return-Path: <alexey.melnikov@isode.com>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B86C521F964C; Thu, 11 Jul 2013 00:43:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.134
X-Spam-Level: 
X-Spam-Status: No, score=-102.134 tagged_above=-999 required=5 tests=[AWL=0.465, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nDweO68jQXPy; Thu, 11 Jul 2013 00:43:26 -0700 (PDT)
Received: from waldorf.isode.com (cl-125.lon-03.gb.sixxs.net [IPv6:2a00:14f0:e000:7c::2]) by ietfa.amsl.com (Postfix) with ESMTP id 0049F21F963F; Thu, 11 Jul 2013 00:43:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1373528604; d=isode.com; s=selector; i=@isode.com; bh=na+NfkCLyLJlyodF4CjeH3dPwkTCRpDFHslhujzTljw=; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:Cc:MIME-Version: In-Reply-To:References:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description; b=ZPUIjKPIMA257gf3W8XN9vPbBJU0g5UVpv2826rXEo/AmqTO8oCc98nnnHKhJZltTMy8FA ZYghQyAoeBHOM+olo8A/YBKSJK4fQxC681XOF/WF1nI/jPo/Cxzj3DbEKevxAfUd+sIyHJ 3Ci8BrrFvvh3qtBhr1Bu2GiPhHKlg1s=;
Received: from [10.243.90.242] ((unknown) [212.183.128.181])  by waldorf.isode.com (submission channel) via TCP with ESMTPA  id <Ud5iGgBjM1Dt@waldorf.isode.com>; Thu, 11 Jul 2013 08:43:24 +0100
X-SMTP-Protocol-Errors: NORDNS
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im>
In-Reply-To: <51DDC8D3.5060808@stpeter.im>
Message-Id: <0145BE0C-08DA-48D3-9F25-77714EDBA2D6@isode.com>
X-Mailer: iPhone Mail (10A523)
From: Alexey Melnikov <alexey.melnikov@isode.com>
Date: Thu, 11 Jul 2013 08:44:59 +0100
To: Peter Saint-Andre <stpeter@stpeter.im>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Cc: "kitten@ietf.org" <kitten@ietf.org>, Nico Williams <nico@cryptonector.com>, "precis@ietf.org" <precis@ietf.org>
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 07:43:26 -0000

On 10 Jul 2013, at 21:49, Peter Saint-Andre <stpeter@stpeter.im> wrote:

>> Rather than legislating in saslprepbis that all application
>> protocols shall leave casemapping up to implementations or
>> deployments, I think that it would be reasonable for the
>> specification of an application protocol using SASL (e.g.,
>> draft-ietf-xmpp-6122bis) to recommend or require casemapping
>> behavior for all implementations or deployments of that application
>> protocol, or to leave such decisions up to the implementation or
>> deployment. For example, perhaps the XMPP spec would say "all
>> implementations shall perform case mapping, full stop" whereas the
>> IMAP spec might leave that up to implementations or deployments.
> 
> Here is what I suggest in Section 2.2 of draft-ietf-precis-saslprepbis:
> 
> OLD
>   3.  Uppercase and titlecase characters MUST be mapped to their
>       lowercase equivalents.
> 
> NEW
>   3.  Uppercase and titlecase characters MAY be mapped to their
>       lowercase equivalents.
> 
> Then add the following sentence at the end of that section:
> 
>   Application protocols that use this profile MUST specify whether case
>   mapping or additional mapping is to be applied by implementations or
>   deployments of that protocol.
> 
> Does that seem acceptable?

Yes.


From stpeter@stpeter.im  Thu Jul 11 10:49:20 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8A3AC21E804C; Thu, 11 Jul 2013 10:49:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.543
X-Spam-Level: 
X-Spam-Status: No, score=-102.543 tagged_above=-999 required=5 tests=[AWL=0.056, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id znZy9h8yzxP6; Thu, 11 Jul 2013 10:49:15 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 4E98421F9B2A; Thu, 11 Jul 2013 10:49:12 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.235]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 2E5FA41400; Thu, 11 Jul 2013 11:50:21 -0600 (MDT)
Message-ID: <51DEF015.70608@stpeter.im>
Date: Thu, 11 Jul 2013 11:49:09 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Alexey Melnikov <alexey.melnikov@isode.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0145BE0C-08DA-48D3-9F25-77714EDBA2D6@isode.com>
In-Reply-To: <0145BE0C-08DA-48D3-9F25-77714EDBA2D6@isode.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: "kitten@ietf.org" <kitten@ietf.org>, Nico Williams <nico@cryptonector.com>, "precis@ietf.org" <precis@ietf.org>
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 17:49:20 -0000

On 7/11/13 1:44 AM, Alexey Melnikov wrote:
> On 10 Jul 2013, at 21:49, Peter Saint-Andre <stpeter@stpeter.im> wrote:
> 
>>> Rather than legislating in saslprepbis that all application
>>> protocols shall leave casemapping up to implementations or
>>> deployments, I think that it would be reasonable for the
>>> specification of an application protocol using SASL (e.g.,
>>> draft-ietf-xmpp-6122bis) to recommend or require casemapping
>>> behavior for all implementations or deployments of that application
>>> protocol, or to leave such decisions up to the implementation or
>>> deployment. For example, perhaps the XMPP spec would say "all
>>> implementations shall perform case mapping, full stop" whereas the
>>> IMAP spec might leave that up to implementations or deployments.
>>
>> Here is what I suggest in Section 2.2 of draft-ietf-precis-saslprepbis:
>>
>> OLD
>>   3.  Uppercase and titlecase characters MUST be mapped to their
>>       lowercase equivalents.
>>
>> NEW
>>   3.  Uppercase and titlecase characters MAY be mapped to their
>>       lowercase equivalents.
>>
>> Then add the following sentence at the end of that section:
>>
>>   Application protocols that use this profile MUST specify whether case
>>   mapping or additional mapping is to be applied by implementations or
>>   deployments of that protocol.
>>
>> Does that seem acceptable?
> 
> Yes.

Thanks for the feedback. I was wondering last night whether we want to
add some guidance or recommendations on this topic, or truly just leave
it up to those who define application protocols. (For example, we could
say something about balancing interoperability and user expectations.)

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Thu Jul 11 12:19:50 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 716B521F9E95 for <precis@ietfa.amsl.com>; Thu, 11 Jul 2013 12:19:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.545
X-Spam-Level: 
X-Spam-Status: No, score=-102.545 tagged_above=-999 required=5 tests=[AWL=0.054, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XDBGJSk2Dmum for <precis@ietfa.amsl.com>; Thu, 11 Jul 2013 12:19:45 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 4F6BF21F9D28 for <precis@ietf.org>; Thu, 11 Jul 2013 12:19:45 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.234]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id B97C841403; Thu, 11 Jul 2013 13:20:54 -0600 (MDT)
Message-ID: <51DF054E.4050003@stpeter.im>
Date: Thu, 11 Jul 2013 13:19:42 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Yutaka OIWA <y.oiwa@aist.go.jp>
References: <CAMeZVwtLGtww=L9f--W5sdYa2sVRVModrkVCOV9aq+zqR8UPhA@mail.gmail.com> <51DDA63A.7080400@stpeter.im> <CAMeZVwsE3JbCdiHW5bP1fUauGb-9gi41Ku6+uJKX8y-zNHUeCg@mail.gmail.com>
In-Reply-To: <CAMeZVwsE3JbCdiHW5bP1fUauGb-9gi41Ku6+uJKX8y-zNHUeCg@mail.gmail.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: precis@ietf.org
Subject: Re: [precis] About precis-httpauth-prep plan
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 19:19:50 -0000

On 7/10/13 7:20 PM, Yutaka OIWA wrote:
>> Is there something special about HTTP authentication that makes the profile
>> defined in draft-ietf-precis-saslprepbis unusable?
> 
> Simply speaking, case mapping.
> To interoperate with existing user DBs, and to use with
> case-sensitive existing systems, case mapping for
> general-purpose HTTP authentication is a MUST-NOT.
> We also expect that existing ASCII-only systems will
> not implement the HTTPAUTHprep, and the existing
> HTTP authentication is case-sensitive (or ASCII octetwise),
> we SHOULD keep ASCII transparency, which means case-sensitive.
> 
> As you might have already read, HTTPAUTHprep will be
> one of the simplest PRECIS profile.
> (Possibly it may be called a SIMPLE precis profile instead.)
> Given that there is a simple-enough case-insensitive
> profile, I will be happy to merge with it.

Hi Yutaka,

Your feedback is consistent with the feedback that Nico and Jeffrey have
provided about the replacement for SASLprep. Since we will change
draft-ietf-precis-saslprepbis to make casemapping completely optional, I
think we will be able to define a general-purpose HTTP-auth profile of
that spec which forbids casemapping (whereas, say, XMPP might require or
recommend casemapping).

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Thu Jul 11 12:27:58 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6795E21F9E05; Thu, 11 Jul 2013 12:27:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.547
X-Spam-Level: 
X-Spam-Status: No, score=-102.547 tagged_above=-999 required=5 tests=[AWL=0.052, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QC0wOGrJwPpr; Thu, 11 Jul 2013 12:27:54 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 8078921F9E13; Thu, 11 Jul 2013 12:27:52 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.234]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 04AF841403; Thu, 11 Jul 2013 13:29:01 -0600 (MDT)
Message-ID: <51DF0735.8000006@stpeter.im>
Date: Thu, 11 Jul 2013 13:27:49 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Marc Blanchet <marc.blanchet@viagenie.ca>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca>
In-Reply-To: <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Cc: kitten@ietf.org, Nico Williams <nico@cryptonector.com>, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 19:27:58 -0000

On 7/10/13 4:07 PM, Marc Blanchet wrote:
> Le 2013-07-10 à 16:49, Peter Saint-Andre <stpeter@stpeter.im> a écrit
> :
> 
>> Hi Nico, I've looked at this a bit further. Proposed text changes
>> below...
>> 
>> On 7/10/13 1:00 PM, Peter Saint-Andre wrote:
>>> On 7/2/13 5:20 PM, Nico Williams wrote:
>>>> On Tue, Jul 2, 2013 at 2:56 PM, Peter Saint-Andre 
>>>> <stpeter@stpeter.im> wrote:
>>>>> On 5/3/13 1:39 PM, Nico Williams wrote:
>>>>> 
>>>>>> Please forgive my apparent apathy.  I lost track of this
>>>>>> due to business travel.
>>>>> 
>>>>> And please forgive my delay in replying. It's good to know 
>>>>> you're not apathetic. And as you can tell, we're proceeding 
>>>>> rather slowly with this work. That doesn't mean it is 
>>>>> unimportant. This recent example from the blogosphere might
>>>>> of interest:
>>>>> 
>>>>> http://labs.spotify.com/2013/06/18/creative-usernames/
>>>>> 
>>>>> PRECIS might have helped those folks avoid some significant 
>>>>> pain.
>>>>> 
>>>>>> I'm not sure where the case mapping requirement for
>>>>>> usernames came from.
>>>>> 
>>>>> Are you referring to global case mapping or local case 
>>>>> mapping?
>>>>> 
>>>>>> I guess it has something to do with the Turkish I and
>>>>>> such.
>>>>> 
>>>>> Yes, that is a nasty problem with even nastier consequences:
>>>>> 
>>>>> http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-three-more-in-jail
>>>>
>>>>
>>>>>
>>
>>>>> 
!
>>>> 
>>>> But that can't apply here.  Or, if anything, case mappings
>>>> makes it more likely.  Let's say I'm logged in in some app and
>>>> it shows the username I typed in, but because of case mapping
>>>> some typos are tolerated, so the username shown could offend
>>>> someone. Whereas if I'm required to type my username exactly
>>>> one way (not including NF) then that can't happen.  So if
>>>> anything that link indicates we should not have case mappings
>>>> here...  :)
>>>> 
>>>>> Just to be clear, that's an issue of what we're calling
>>>>> local case mapping (where locale is taken into
>>>>> consideration).
>>>>> 
>>>>>> I can't say I'm excited about this case mapping
>>>>>> requirement; if anything it strikes as silly.
>>>>> 
>>>>> In general, the opinion so far has been that, say, StPeter
>>>>> is treated the same as stpeter when it comes to
>>>>> authentication and authorization based on usernames. Do you
>>>>> disagree? If so, why? For example, would you be inclined to
>>>>> leave this up to the protocol that uses SASL (say, IMAP or
>>>>> XMPP) instead of specifying it in SASLprepbis?
>>>> 
>>>> I think it'd be nice if *servers* got to choose whether to do 
>>>> this. The principle here is that the server should make right 
>>>> when it comes to the username.  This means that clients should
>>>> be pretty much able to send just about anything as a username
>>>> and let the server figure it out.
>>>> 
>>>> Whether it's a server application or the mechanisms (or SASL 
>>>> library) that applies such rules is a different story, and one
>>>> I don't think I care much about here.
>>> 
>>> Ah, I see.
>>> 
>>> It seems to me that there are numerous layers here:
>>> 
>>> 1. SASL (including preparation and comparison rules)
>>> 
>>> 2. The application protocol that's using SASL (e.g., IMAP)
>>> 
>>> 3. A software implementation of the application protocol, which 
>>> likely embeds or links to a SASL implementation (e.g., dovecot)
>>> 
>>> 4. A deployment of said software implementation (e.g., 
>>> example.net)
>>> 
>>> By "server" I think you mean a deployment. Correct?
>>> 
>>> Rather than legislating in saslprepbis that all application 
>>> protocols shall leave casemapping up to implementations or 
>>> deployments, I think that it would be reasonable for the 
>>> specification of an application protocol using SASL (e.g., 
>>> draft-ietf-xmpp-6122bis) to recommend or require casemapping 
>>> behavior for all implementations or deployments of that
>>> application protocol, or to leave such decisions up to the
>>> implementation or deployment. For example, perhaps the XMPP spec
>>> would say "all implementations shall perform case mapping, full
>>> stop" whereas the IMAP spec might leave that up to
>>> implementations or deployments.
>> 
>> Here is what I suggest in Section 2.2 of
>> draft-ietf-precis-saslprepbis:
>> 
>> OLD 3.  Uppercase and titlecase characters MUST be mapped to their 
>> lowercase equivalents.
>> 
>> NEW 3.  Uppercase and titlecase characters MAY be mapped to their 
>> lowercase equivalents.
>> 
>> Then add the following sentence at the end of that section:
>> 
>> Application protocols that use this profile MUST specify whether
>> case mapping or additional mapping is to be applied by
>> implementations or deployments of that protocol.
> 
> I have a hard time thinking that, especially for credentials, app
> protocol 1 chooses no mapping and app protocol 2 chooses mapping and
> that both are using the SASL layer below.  Looks like looking for
> trouble here. no?

I see your point, although I agree with Nico and Jeff that for SASL
purposes these things will be mostly or completely determined by the
mechanism (not all mechanisms have a concept of a "simple user name" --
the ones I'm familiar with are CRAM-MD5, DIGEST-MD5, and SCRAM).
However, I think that this PRECIS profile might be used by
non-SASL-using application protocols, such as HTTP authentication (see
message from Yutaka Oiwa).

I will try to formulate some corrected text.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Thu Jul 11 12:46:03 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3B10121F999C; Thu, 11 Jul 2013 12:46:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.548
X-Spam-Level: 
X-Spam-Status: No, score=-102.548 tagged_above=-999 required=5 tests=[AWL=0.051, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kG3LQBmIRrNx; Thu, 11 Jul 2013 12:45:58 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id B3DE621F992E; Thu, 11 Jul 2013 12:45:58 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.234]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 8E9A141403; Thu, 11 Jul 2013 13:47:08 -0600 (MDT)
Message-ID: <51DF0B74.5000808@stpeter.im>
Date: Thu, 11 Jul 2013 13:45:56 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Marc Blanchet <marc.blanchet@viagenie.ca>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <51DF0735.8000006@stpeter.im>
In-Reply-To: <51DF0735.8000006@stpeter.im>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 19:46:03 -0000

On 7/11/13 1:27 PM, Peter Saint-Andre wrote:
> On 7/10/13 4:07 PM, Marc Blanchet wrote:
>> Le 2013-07-10 à 16:49, Peter Saint-Andre <stpeter@stpeter.im> a écrit
>> :
>>
>>> Hi Nico, I've looked at this a bit further. Proposed text changes
>>> below...
>>>
>>> On 7/10/13 1:00 PM, Peter Saint-Andre wrote:
>>>> On 7/2/13 5:20 PM, Nico Williams wrote:
>>>>> On Tue, Jul 2, 2013 at 2:56 PM, Peter Saint-Andre 
>>>>> <stpeter@stpeter.im> wrote:
>>>>>> On 5/3/13 1:39 PM, Nico Williams wrote:
>>>>>>
>>>>>>> Please forgive my apparent apathy.  I lost track of this
>>>>>>> due to business travel.
>>>>>>
>>>>>> And please forgive my delay in replying. It's good to know 
>>>>>> you're not apathetic. And as you can tell, we're proceeding 
>>>>>> rather slowly with this work. That doesn't mean it is 
>>>>>> unimportant. This recent example from the blogosphere might
>>>>>> of interest:
>>>>>>
>>>>>> http://labs.spotify.com/2013/06/18/creative-usernames/
>>>>>>
>>>>>> PRECIS might have helped those folks avoid some significant 
>>>>>> pain.
>>>>>>
>>>>>>> I'm not sure where the case mapping requirement for
>>>>>>> usernames came from.
>>>>>>
>>>>>> Are you referring to global case mapping or local case 
>>>>>> mapping?
>>>>>>
>>>>>>> I guess it has something to do with the Turkish I and
>>>>>>> such.
>>>>>>
>>>>>> Yes, that is a nasty problem with even nastier consequences:
>>>>>>
>>>>>> http://gizmodo.com/382026/a-cellphones-missing-dot-kills-two-people-puts-three-more-in-jail
>>>>>
>>>>>
>>>>>>
>>>
>>>>>>
> !
>>>>>
>>>>> But that can't apply here.  Or, if anything, case mappings
>>>>> makes it more likely.  Let's say I'm logged in in some app and
>>>>> it shows the username I typed in, but because of case mapping
>>>>> some typos are tolerated, so the username shown could offend
>>>>> someone. Whereas if I'm required to type my username exactly
>>>>> one way (not including NF) then that can't happen.  So if
>>>>> anything that link indicates we should not have case mappings
>>>>> here...  :)
>>>>>
>>>>>> Just to be clear, that's an issue of what we're calling
>>>>>> local case mapping (where locale is taken into
>>>>>> consideration).
>>>>>>
>>>>>>> I can't say I'm excited about this case mapping
>>>>>>> requirement; if anything it strikes as silly.
>>>>>>
>>>>>> In general, the opinion so far has been that, say, StPeter
>>>>>> is treated the same as stpeter when it comes to
>>>>>> authentication and authorization based on usernames. Do you
>>>>>> disagree? If so, why? For example, would you be inclined to
>>>>>> leave this up to the protocol that uses SASL (say, IMAP or
>>>>>> XMPP) instead of specifying it in SASLprepbis?
>>>>>
>>>>> I think it'd be nice if *servers* got to choose whether to do 
>>>>> this. The principle here is that the server should make right 
>>>>> when it comes to the username.  This means that clients should
>>>>> be pretty much able to send just about anything as a username
>>>>> and let the server figure it out.
>>>>>
>>>>> Whether it's a server application or the mechanisms (or SASL 
>>>>> library) that applies such rules is a different story, and one
>>>>> I don't think I care much about here.
>>>>
>>>> Ah, I see.
>>>>
>>>> It seems to me that there are numerous layers here:
>>>>
>>>> 1. SASL (including preparation and comparison rules)
>>>>
>>>> 2. The application protocol that's using SASL (e.g., IMAP)
>>>>
>>>> 3. A software implementation of the application protocol, which 
>>>> likely embeds or links to a SASL implementation (e.g., dovecot)
>>>>
>>>> 4. A deployment of said software implementation (e.g., 
>>>> example.net)
>>>>
>>>> By "server" I think you mean a deployment. Correct?
>>>>
>>>> Rather than legislating in saslprepbis that all application 
>>>> protocols shall leave casemapping up to implementations or 
>>>> deployments, I think that it would be reasonable for the 
>>>> specification of an application protocol using SASL (e.g., 
>>>> draft-ietf-xmpp-6122bis) to recommend or require casemapping 
>>>> behavior for all implementations or deployments of that
>>>> application protocol, or to leave such decisions up to the
>>>> implementation or deployment. For example, perhaps the XMPP spec
>>>> would say "all implementations shall perform case mapping, full
>>>> stop" whereas the IMAP spec might leave that up to
>>>> implementations or deployments.
>>>
>>> Here is what I suggest in Section 2.2 of
>>> draft-ietf-precis-saslprepbis:
>>>
>>> OLD 3.  Uppercase and titlecase characters MUST be mapped to their 
>>> lowercase equivalents.
>>>
>>> NEW 3.  Uppercase and titlecase characters MAY be mapped to their 
>>> lowercase equivalents.
>>>
>>> Then add the following sentence at the end of that section:
>>>
>>> Application protocols that use this profile MUST specify whether
>>> case mapping or additional mapping is to be applied by
>>> implementations or deployments of that protocol.
>>
>> I have a hard time thinking that, especially for credentials, app
>> protocol 1 chooses no mapping and app protocol 2 chooses mapping and
>> that both are using the SASL layer below.  Looks like looking for
>> trouble here. no?
> 
> I see your point, although I agree with Nico and Jeff that for SASL
> purposes these things will be mostly or completely determined by the
> mechanism (not all mechanisms have a concept of a "simple user name" --
> the ones I'm familiar with are CRAM-MD5, DIGEST-MD5, and SCRAM).
> However, I think that this PRECIS profile might be used by
> non-SASL-using application protocols, such as HTTP authentication (see
> message from Yutaka Oiwa).
> 
> I will try to formulate some corrected text.

How's this?

OLD

   Application protocols that use this profile MUST specify whether
   case mapping or additional mapping is to be applied by
   implementations or deployments of that protocol.

NEW

   SASL mechanisms and application protocols that directly re-use this
   profile MUST specify whether case mapping or additional mapping is to
   be applied by implementations or deployments thereof.  Note that some
   application protocols themselves re-use SASL (examples include IMAP
   [RFC4616] and XMPP [RFC6120]); such protocols ought to apply the
   mapping rules defined for the relevant SASL mechanisms and not
   specify application-specific rules for that protocol's use of SASL or
   particular SASL mechanisms.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Thu Jul 11 13:05:16 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 120B821F9D59; Thu, 11 Jul 2013 13:05:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.549
X-Spam-Level: 
X-Spam-Status: No, score=-102.549 tagged_above=-999 required=5 tests=[AWL=0.050, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wUIkvDmjC7oc; Thu, 11 Jul 2013 13:05:11 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id CF61721F9D9D; Thu, 11 Jul 2013 13:05:10 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.234]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 0B5D041403; Thu, 11 Jul 2013 14:05:52 -0600 (MDT)
Message-ID: <51DF0FD8.3090908@stpeter.im>
Date: Thu, 11 Jul 2013 14:04:40 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Jeffrey Hutzelman <jhutz@cmu.edu>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <14735_1373496114_r6AMfr0J008900_CAK3OfOijd2AvHgHd_Wi3+S=PZkTyUjRuRAXj5fV26ArsRO8zKg@mail.gmail.com> <1373554540.23328.87.camel@destiny.pc.cs.cmu.edu>
In-Reply-To: <1373554540.23328.87.camel@destiny.pc.cs.cmu.edu>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: kitten@ietf.org, Nico Williams <nico@cryptonector.com>, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 20:05:16 -0000

On 7/11/13 8:55 AM, Jeffrey Hutzelman wrote:

[snipping lots of interesting material, since I'm focused on finding
appropriate text before the I-D deadline]

> Now, back to the original point...
> 
> 
>>>>   Application protocols that use this profile MUST specify whether
>> case
>>>>   mapping or additional mapping is to be applied by implementations
>> or
>>>>   deployments of that protocol.
>>>
>>> I have a hard time thinking that, especially for credentials, app
>> protocol 1 chooses no mapping and app protocol 2 chooses mapping and
>> that both are using the SASL layer below.  Looks like looking for
>> trouble here. no?
> 
> 
> The key phrase is "Application protocols that use this profile".  Such a
> protocol can apply the profile, and rules about whether to do
> case-mapping, only to protocol elements that belong to it.  For example,
> an application might apply the profile to its SASL authorization names,
> or to some other protocol element that is not related to SASL at all.
> But it cannot apply the profile to protocol elements that a particular
> SASL mechanism depends on, because those belong to the mechanism and
> exist below the SASL abstraction, where the application protocol spec
> cannot even see them.

Agreed.

> That said, I think we need to be clear that the profile is _also_
> available for use by SASL _mechanisms_, since after all, that was no
> small part of the original purpose of SASLprep.  The same requirement
> applies -- a mechanism that uses the profile must specify whether to do
> case folding.

Right. We have two direct customers here: SASL mechanisms and
application protocols that don't use SASL (e.g., HTTP auth). What you're
terming "SASL application protocols" are indirect customers and IMHO we
don't want to encourage them to do interesting things with the strings
that they feed into SASL implementations.

> FWIW, I think both the "OLD" and "NEW" variants from Peter's message are
> wrong.  We should not say that case-folding MUST be done, because that
> mandates its use everywhere.  However, we should also not say that it
> MAY be done, because that looks like we are granting permission for
> implementations of the profile to do case-folding anytime they want,
> even if that's not what the protocol says.

Mostly agree.

The PRECIS framework specification says that any PRECIS "usage" (of
which so far we have nickname, username, password, XMPP localpart, and
XMPP resourcepart) must specify its rules for casemapping (among other
things).

> Instead, we should keep only the sentence Peter proposes adding at the
> end, or some variation thereof, which has the effect of leaving the
> case-folding question up to the protocol applying the profile.

Right. So we need to re-word the rule:

REALLY OLD

   2.  So-called additional mappings MAY be applied, such as those
       defined in [I-D.ietf-precis-mappings].
   3.  Uppercase and titlecase characters MUST be mapped to their
       lowercase equivalents.

MORE RECENT

   2.  So-called additional mappings MAY be applied, such as those
       defined in [I-D.ietf-precis-mappings].
   3.  Uppercase and titlecase characters MAY be mapped to their
       lowercase equivalents.

PROPOSED SOLUTION

   2.  SASL mechanisms and application protocols that directly
       use this profile MUST specify whether so-called additional
       mappings are to be applied, such as those defined in
       [I-D.ietf-precis-mappings].
   3.  SASL mechanisms and application protocols that directly
       use this profile MUST specify whether uppercase and titlecase
       characters are be mapped to their lowercase equivalents.

Then we'd have something like the follow-on paragraph I just posted:

   As noted, SASL mechanisms and application protocols that directly
   use this profile MUST specify whether case mapping and additional
   mappings are to be applied by implementations or deployments
   thereof.  Note that some application protocols themselves re-use
   SASL (examples include IMAP [RFC4616] and XMPP [RFC6120]); such
   protocols ought to apply the mapping rules defined for the relevant
   SASL mechanisms and not specify application-specific rules for that
   protocol's use of SASL or particular SASL mechanisms.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From nico@cryptonector.com  Thu Jul 11 13:13:17 2013
Return-Path: <nico@cryptonector.com>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F10FD21F9FF4; Thu, 11 Jul 2013 13:13:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.052
X-Spam-Level: 
X-Spam-Status: No, score=-2.052 tagged_above=-999 required=5 tests=[AWL=-0.075, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tppBgBQ6aAxN; Thu, 11 Jul 2013 13:13:12 -0700 (PDT)
Received: from homiemail-a26.g.dreamhost.com (caiajhbdcbbj.dreamhost.com [208.97.132.119]) by ietfa.amsl.com (Postfix) with ESMTP id C82B921F9FF9; Thu, 11 Jul 2013 13:13:11 -0700 (PDT)
Received: from homiemail-a26.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a26.g.dreamhost.com (Postfix) with ESMTP id 06920B807F; Thu, 11 Jul 2013 13:12:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type; s=cryptonector.com; bh=SIDw9JWOdupHK5sigGWB e0I0nOA=; b=K9oVLbsha19NvtUUCIS4Z+MjrNVKA2cZXS527mWdFjXm7C9Ej1Jy HmpHNzWlfEBdClPqJh9t0Bhjzk58FW7NFrcIvHrEM5cj6sO1ps/zQq0juC7ZrpwN 2k8D+9dYOqawcmQbN2X9ti5pDPZnrILhFMI0f9mVAoR5Rj0HVxgdyn8=
Received: from mail-we0-f179.google.com (mail-we0-f179.google.com [74.125.82.179]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a26.g.dreamhost.com (Postfix) with ESMTPSA id 4B5C7B8076;  Thu, 11 Jul 2013 13:12:50 -0700 (PDT)
Received: by mail-we0-f179.google.com with SMTP id w59so7499519wes.10 for <multiple recipients>; Thu, 11 Jul 2013 13:12:47 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=XR56LBXPV+rHfkle4LLTPpthXtJ5JF579kswa1Tz3Ho=; b=NZfkp/JuTKbu8Y1ZIDGj8uMqVYundNFNuiXyDoyVA8vEAb7a3QGUefh1cfLi7cD1/B v5vNjIUBfdG+hLW6uXSbCElRqa/H8AcM5RwYPd9SBXK1URi2WdOfKUAFGPrbHVX9vz3s gduqkHHgbw6L8wZuUwo1sAt4pJkvL81R2dO9pvKeDva/WWu40LlzvAp+BcyXy4AKKzri cOBK+FR6PR4PtbDBCLP+tsFX+9fw0c6vwNuCCLKpovj/6bDRHvX+9CpKegw7D0zMXN/Z GL0a68FVGTYHD4P108YibBBkt8HM2xUU1mazdvaI5aMY5SXY5ouvPdQpHwRbDndbFofG xJfQ==
MIME-Version: 1.0
X-Received: by 10.180.74.162 with SMTP id u2mr9516733wiv.36.1373573567834; Thu, 11 Jul 2013 13:12:47 -0700 (PDT)
Received: by 10.217.38.138 with HTTP; Thu, 11 Jul 2013 13:12:47 -0700 (PDT)
In-Reply-To: <51DF0B74.5000808@stpeter.im>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <51DF0735.8000006@stpeter.im> <51DF0B74.5000808@stpeter.im>
Date: Thu, 11 Jul 2013 15:12:47 -0500
Message-ID: <CAK3OfOhrnWEaZ6gkv6AVtdPVvk2c57NhfVOjs8Aiv5mdWp0y+Q@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Content-Type: text/plain; charset=UTF-8
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 20:13:17 -0000

On Thu, Jul 11, 2013 at 2:45 PM, Peter Saint-Andre <stpeter@stpeter.im> wrote:
> NEW
>
>    SASL mechanisms and application protocols that directly re-use this
>    profile MUST specify whether case mapping or additional mapping is to
>    be applied by implementations or deployments thereof.  Note that some
>    application protocols themselves re-use SASL (examples include IMAP
>    [RFC4616] and XMPP [RFC6120]); such protocols ought to apply the
>    mapping rules defined for the relevant SASL mechanisms and not
>    specify application-specific rules for that protocol's use of SASL or
>    particular SASL mechanisms.

I don't really like the second sentence.  In all cases *only* the
application applies any stringprep to authorization IDs, and *only*
mechanisms apply any stringprep to authentication IDs.  (If a SASL
framework implementation allows an app to provide an authentication DB
for a mechanism then the app is providing a bit of mechanism
functionality but it should still be understood as properly a part of
the mechanism.  We don't usually go into that level of detail in the
core SASL RFC, and we shouldn't here.

NEW
   SASL mechanisms that directly re-use this profile MUST specify
   whether case mapping is to be applied to authentication IDs, and
   when.  SASL mechanisms SHOULD delay any case mapping to the last
   possible moment, such as when doing a lookup by username, username
   comparisons, or generating a cryptographic salt from a username.

   SASL application protocols that directly re-use this profile MUST
   specify whether case mapping is to be applied to authorization IDs.
   SASL application protocols SHOULD delay any case mapping of
   authorization IDs to the last possible moment, which happens to
   necessarily be on the server side.

   Note that, in keeping with RFC4422, SASL applications must not apply
   this or any other profile to authentication IDs.

   Note that, in keeping with RFC4422, SASL mechanisms must not apply
   this or any other profile to authorization IDs.


Nico
--

From stpeter@stpeter.im  Thu Jul 11 13:28:00 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AA0E011E8122; Thu, 11 Jul 2013 13:28:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.551
X-Spam-Level: 
X-Spam-Status: No, score=-102.551 tagged_above=-999 required=5 tests=[AWL=0.048, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zXeK6Vc8gq2Y; Thu, 11 Jul 2013 13:27:55 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 1EF8C21F995A; Thu, 11 Jul 2013 13:27:38 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.233]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 9205341403; Thu, 11 Jul 2013 14:28:32 -0600 (MDT)
Message-ID: <51DF1527.6080102@stpeter.im>
Date: Thu, 11 Jul 2013 14:27:19 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Nico Williams <nico@cryptonector.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <CAK3OfOj0enci3FivQEQtrOxWAvcmZFdC8jJzHmFO9n-sm5OBVg@mail.gmail.com>
In-Reply-To: <CAK3OfOj0enci3FivQEQtrOxWAvcmZFdC8jJzHmFO9n-sm5OBVg@mail.gmail.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 20:28:00 -0000

On 7/10/13 4:37 PM, Nico Williams wrote:
> On Wed, Jul 10, 2013 at 3:49 PM, Peter Saint-Andre <stpeter@stpeter.im> wrote:
>> Here is what I suggest in Section 2.2 of draft-ietf-precis-saslprepbis:
>>
>> OLD
>>    3.  Uppercase and titlecase characters MUST be mapped to their
>>        lowercase equivalents.
>>
>> NEW
>>    3.  Uppercase and titlecase characters MAY be mapped to their
>>        lowercase equivalents.
> 
> Do we need to give advice regarding the use of query strings for
> cryptographic protocols?  E.g., usernames as salts.  I think we do.

It seems to me that rules for handling query strings in a cryptographic
protocol would be the responsibility of that protocol. Now, maybe you
are suggesting that such protocols would apply the PRECIS profile we're
defining here, if it provides what they need. Do you think that the
rules in draft-ietf-precis-saslprepbis are sufficient? I get the sense
you think more is needed, but I'm not yet sure exactly what.

> Specifically, *mechanisms* must specify what normalizations (and let's
> provide a nice one for them to all use) for such purposes.

When you say "mechanisms" do you mean "SASL mechanisms" and when you say
"normalizations" do you mean "Unicode normalization forms"? I ask
because I think we have those bases covered, but perhaps you're looking
for more...

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Thu Jul 11 13:30:28 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 17BA211E815B; Thu, 11 Jul 2013 13:30:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.552
X-Spam-Level: 
X-Spam-Status: No, score=-102.552 tagged_above=-999 required=5 tests=[AWL=0.047, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sHfamRjcu6jJ; Thu, 11 Jul 2013 13:30:23 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id DC4C611E8122; Thu, 11 Jul 2013 13:30:22 -0700 (PDT)
Received: from sjc-vpn2-1401.cisco.com (unknown [128.107.239.234]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 8DC4341403; Thu, 11 Jul 2013 14:31:32 -0600 (MDT)
Message-ID: <51DF15DB.1010200@stpeter.im>
Date: Thu, 11 Jul 2013 14:30:19 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Nico Williams <nico@cryptonector.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <51DF0735.8000006@stpeter.im> <51DF0B74.5000808@stpeter.im> <CAK3OfOhrnWEaZ6gkv6AVtdPVvk2c57NhfVOjs8Aiv5mdWp0y+Q@mail.gmail.com>
In-Reply-To: <CAK3OfOhrnWEaZ6gkv6AVtdPVvk2c57NhfVOjs8Aiv5mdWp0y+Q@mail.gmail.com>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Cc: kitten@ietf.org, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 20:30:28 -0000

On 7/11/13 2:12 PM, Nico Williams wrote:
> On Thu, Jul 11, 2013 at 2:45 PM, Peter Saint-Andre <stpeter@stpeter.im> wrote:
>> NEW
>>
>>    SASL mechanisms and application protocols that directly re-use this
>>    profile MUST specify whether case mapping or additional mapping is to
>>    be applied by implementations or deployments thereof.  Note that some
>>    application protocols themselves re-use SASL (examples include IMAP
>>    [RFC4616] and XMPP [RFC6120]); such protocols ought to apply the
>>    mapping rules defined for the relevant SASL mechanisms and not
>>    specify application-specific rules for that protocol's use of SASL or
>>    particular SASL mechanisms.
> 
> I don't really like the second sentence.  In all cases *only* the
> application applies any stringprep to authorization IDs, and *only*
> mechanisms apply any stringprep to authentication IDs.  (If a SASL
> framework implementation allows an app to provide an authentication DB
> for a mechanism then the app is providing a bit of mechanism
> functionality but it should still be understood as properly a part of
> the mechanism.  We don't usually go into that level of detail in the
> core SASL RFC, and we shouldn't here.
> 
> NEW
>    SASL mechanisms that directly re-use this profile MUST specify
>    whether case mapping is to be applied to authentication IDs, and
>    when.  SASL mechanisms SHOULD delay any case mapping to the last
>    possible moment, such as when doing a lookup by username, username
>    comparisons, or generating a cryptographic salt from a username.
> 
>    SASL application protocols that directly re-use this profile MUST
>    specify whether case mapping is to be applied to authorization IDs.
>    SASL application protocols SHOULD delay any case mapping of
>    authorization IDs to the last possible moment, which happens to
>    necessarily be on the server side.
> 
>    Note that, in keeping with RFC4422, SASL applications must not apply
>    this or any other profile to authentication IDs.
> 
>    Note that, in keeping with RFC4422, SASL mechanisms must not apply
>    this or any other profile to authorization IDs.

That is much more precise than what I had sketched out, and it looks
good to me.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From stpeter@stpeter.im  Thu Jul 11 16:32:38 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9D41C11E81CD; Thu, 11 Jul 2013 16:32:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.384
X-Spam-Level: 
X-Spam-Status: No, score=-102.384 tagged_above=-999 required=5 tests=[AWL=0.215, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id e+bsKwVvfC7u; Thu, 11 Jul 2013 16:32:33 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 87D4311E81BB; Thu, 11 Jul 2013 16:32:33 -0700 (PDT)
Received: from ergon.local (unknown [71.237.13.154]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id D4FD54134B; Thu, 11 Jul 2013 17:33:42 -0600 (MDT)
Message-ID: <51DF408E.6010201@stpeter.im>
Date: Thu, 11 Jul 2013 17:32:30 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Jeffrey Hutzelman <jhutz@cmu.edu>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <51DF0735.8000006@stpeter.im> <51DF0B74.5000808@stpeter.im> <CAK3OfOhrnWEaZ6gkv6AVtdPVvk2c57NhfVOjs8Aiv5mdWp0y+Q@mail.gmail.com> <29306_1373574631_r6BKUU21031820_51DF15DB.1010200@stpeter.im> <1373575553.23365.268.camel@minbar.fac.cs.cmu.edu>
In-Reply-To: <1373575553.23365.268.camel@minbar.fac.cs.cmu.edu>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Cc: kitten@ietf.org, Nico Williams <nico@cryptonector.com>, precis@ietf.org
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 23:32:38 -0000

On 7/11/13 2:45 PM, Jeffrey Hutzelman wrote:
> On Thu, 2013-07-11 at 14:30 -0600, Peter Saint-Andre wrote:
> 
>>> NEW
>>>    SASL mechanisms that directly re-use this profile MUST specify
>>>    whether case mapping is to be applied to authentication IDs, and
>>>    when.  SASL mechanisms SHOULD delay any case mapping to the last
>>>    possible moment, such as when doing a lookup by username, username
>>>    comparisons, or generating a cryptographic salt from a username.
>>>
>>>    SASL application protocols that directly re-use this profile MUST
>>>    specify whether case mapping is to be applied to authorization IDs.
>>>    SASL application protocols SHOULD delay any case mapping of
>>>    authorization IDs to the last possible moment, which happens to
>>>    necessarily be on the server side.
>>>
>>>    Note that, in keeping with RFC4422, SASL applications must not apply
>>>    this or any other profile to authentication IDs.
>>>
>>>    Note that, in keeping with RFC4422, SASL mechanisms must not apply
>>>    this or any other profile to authorization IDs.
>>
>> That is much more precise than what I had sketched out, and it looks
>> good to me.
> 
> Me too

Great. If there are no objections from my co-author in the next 24 hours
or so, I'll submit a revised I-D. I'd really like to finish off all this
i18n stuff... :-)

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From jhutz@cmu.edu  Thu Jul 11 07:56:06 2013
Return-Path: <jhutz@cmu.edu>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A343E21F9C22; Thu, 11 Jul 2013 07:56:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.599
X-Spam-Level: 
X-Spam-Status: No, score=-106.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gWlFxUaES4fG; Thu, 11 Jul 2013 07:55:52 -0700 (PDT)
Received: from smtp03.srv.cs.cmu.edu (SMTP03.SRV.CS.CMU.EDU [128.2.217.198]) by ietfa.amsl.com (Postfix) with ESMTP id 7965F21F9BD0; Thu, 11 Jul 2013 07:55:51 -0700 (PDT)
Received: from [192.168.202.142] (pool-74-111-100-191.pitbpa.fios.verizon.net [74.111.100.191]) (authenticated bits=0) by smtp03.srv.cs.cmu.edu (8.13.6/8.13.6) with ESMTP id r6BEteXQ020249 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO); Thu, 11 Jul 2013 10:55:41 -0400 (EDT)
Message-ID: <1373554540.23328.87.camel@destiny.pc.cs.cmu.edu>
From: Jeffrey Hutzelman <jhutz@cmu.edu>
To: Nico Williams <nico@cryptonector.com>
Date: Thu, 11 Jul 2013 10:55:40 -0400
In-Reply-To: <14735_1373496114_r6AMfr0J008900_CAK3OfOijd2AvHgHd_Wi3+S=PZkTyUjRuRAXj5fV26ArsRO8zKg@mail.gmail.com>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <14735_1373496114_r6AMfr0J008900_CAK3OfOijd2AvHgHd_Wi3+S=PZkTyUjRuRAXj5fV26ArsRO8zKg@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.6.2-0ubuntu0.1 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Scanned-By: mimedefang-cmuscs on 128.2.217.198
X-Mailman-Approved-At: Thu, 11 Jul 2013 18:13:21 -0700
Cc: kitten@ietf.org, precis@ietf.org, jhutz@cmu.edu
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 14:56:07 -0000

On Wed, 2013-07-10 at 17:41 -0500, Nico Williams wrote:

> The app protocol could specify whether the client does or does not
> have to, I don't mind that.  But it'd be silly to specify something
> that conflicts with whatever the mechanism will apply, so, that's a
> good point.
> 
> All the more reason to have the app do nothing with usernames.  Just
> pass them to the mechanism.  Let the mechanism work it out.

This is a key point.  SASL doesn't have usernames.  It has
authentication names and authorization names.  SASL application
protocols do not get a say in how authentication names are handled,
period.  It's just not up to them; these names are artifacts of the SASL
mechanism, and their handling is generally dictated by the underlying
authentication technology.

SASLprep is not and never was about setting down general rules for
handling authentication names or what SASL application protocols must
do.  It was about providing a profile for use by specific SASL
mechanisms that are in the position of defining "username" or password
elements that need one.

Applications do get a say about authorization names; in fact, they get
the _only_ say.  They are the application's "usernames", and SASL
doesn't get to say what they look like or what they mean.  That is the
purview of the application, which is entirely responsible for
authorization.  SASL is merely the authentication framework, and not
necessarily even the only one supported by any given application.

Of course, we can give advice to application protocol designers, but we
can't effectively impose requirements, and there's not really even any
reason to do so.  Further, any advice we do give would not be in any way
SASL-specific, so while it might be appropriate for PRECIS to do such a
thing, saslprep might not be the best place to do so.



> The mechanism on the client side should only normalize usernames for
> the purposes of generating salts.

This is almost right.  From what I've seen, in authentication,
filesystems, and other places, the right thing is almost always to apply
normalization or any other canonicalizations at the last possible
moment, and no later.  For example, if you're going to look up a name in
a database, normalize just before the lookup and not before.  Or, better
yet, don't normalize keys that go into the database, and do
normalization-insensitive comparison instead.  This can be a bit tricky
depending on the nature of the database, but not impossible.

The case you mention is an interesting one, though stated slightly too
narrowly.  Any string that is going to be used as a salt, or to derive
keying material, or as input to a cryptographic hash, will need to be
normalized before doing that.  But, _only if the string itself will not
be sent_.  If the string is being sent, then send and use the
un-normalized form, and the far end can use a normalization-insensitive
comparison to decide if it got what it was expecting, or it can
normalize (as late as possible!) and do whatever database lookup is
needed.

Note again that there is nothing about this advice that's specific to
SASL or SASL mechanisms or SASL application protocols.  However, it does
apply to protocol designs, not implementations -- if a protocol says to
normalize at a particular point, an implementation cannot decide to
instead follow the "as late as possible" rule, or interoperability will
suffer.  I think that means we need to be careful about anything we
specify here; we can offer advice to protocol designers, but we cannot
impose requirements directly on implementations about whether or when to
normalize or case-convert.  Otherwise, we risk hindering
interoperability instead of helping it.



Now, back to the original point...


> >>   Application protocols that use this profile MUST specify whether
> case
> >>   mapping or additional mapping is to be applied by implementations
> or
> >>   deployments of that protocol.
> >
> > I have a hard time thinking that, especially for credentials, app
> protocol 1 chooses no mapping and app protocol 2 chooses mapping and
> that both are using the SASL layer below.  Looks like looking for
> trouble here. no?


The key phrase is "Application protocols that use this profile".  Such a
protocol can apply the profile, and rules about whether to do
case-mapping, only to protocol elements that belong to it.  For example,
an application might apply the profile to its SASL authorization names,
or to some other protocol element that is not related to SASL at all.
But it cannot apply the profile to protocol elements that a particular
SASL mechanism depends on, because those belong to the mechanism and
exist below the SASL abstraction, where the application protocol spec
cannot even see them.

That said, I think we need to be clear that the profile is _also_
available for use by SASL _mechanisms_, since after all, that was no
small part of the original purpose of SASLprep.  The same requirement
applies -- a mechanism that uses the profile must specify whether to do
case folding.


FWIW, I think both the "OLD" and "NEW" variants from Peter's message are
wrong.  We should not say that case-folding MUST be done, because that
mandates its use everywhere.  However, we should also not say that it
MAY be done, because that looks like we are granting permission for
implementations of the profile to do case-folding anytime they want,
even if that's not what the protocol says.

Instead, we should keep only the sentence Peter proposes adding at the
end, or some variation thereof, which has the effect of leaving the
case-folding question up to the protocol applying the profile.

-- Jeff


From jhutz@cmu.edu  Thu Jul 11 13:46:11 2013
Return-Path: <jhutz@cmu.edu>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C30E721F9DA8; Thu, 11 Jul 2013 13:46:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.599
X-Spam-Level: 
X-Spam-Status: No, score=-106.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Li9vk5fASbWy; Thu, 11 Jul 2013 13:46:05 -0700 (PDT)
Received: from smtp01.srv.cs.cmu.edu (SMTP01.SRV.CS.CMU.EDU [128.2.217.196]) by ietfa.amsl.com (Postfix) with ESMTP id B8AD921F9D91; Thu, 11 Jul 2013 13:46:05 -0700 (PDT)
Received: from [128.2.193.239] (minbar.fac.cs.cmu.edu [128.2.193.239]) (authenticated bits=0) by smtp01.srv.cs.cmu.edu (8.13.6/8.13.6) with ESMTP id r6BKjrs3026278 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO); Thu, 11 Jul 2013 16:45:53 -0400 (EDT)
Message-ID: <1373575553.23365.268.camel@minbar.fac.cs.cmu.edu>
From: Jeffrey Hutzelman <jhutz@cmu.edu>
To: Peter Saint-Andre <stpeter@stpeter.im>
Date: Thu, 11 Jul 2013 16:45:53 -0400
In-Reply-To: <29306_1373574631_r6BKUU21031820_51DF15DB.1010200@stpeter.im>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <51DF0735.8000006@stpeter.im> <51DF0B74.5000808@stpeter.im> <CAK3OfOhrnWEaZ6gkv6AVtdPVvk2c57NhfVOjs8Aiv5mdWp0y+Q@mail.gmail.com> <29306_1373574631_r6BKUU21031820_51DF15DB.1010200@stpeter.im>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.2.3-0ubuntu6 
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0
X-Scanned-By: mimedefang-cmuscs on 128.2.217.196
X-Mailman-Approved-At: Thu, 11 Jul 2013 18:13:21 -0700
Cc: kitten@ietf.org, Nico Williams <nico@cryptonector.com>, precis@ietf.org, jhutz@cmu.edu
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Jul 2013 20:46:11 -0000

On Thu, 2013-07-11 at 14:30 -0600, Peter Saint-Andre wrote:

> > NEW
> >    SASL mechanisms that directly re-use this profile MUST specify
> >    whether case mapping is to be applied to authentication IDs, and
> >    when.  SASL mechanisms SHOULD delay any case mapping to the last
> >    possible moment, such as when doing a lookup by username, username
> >    comparisons, or generating a cryptographic salt from a username.
> > 
> >    SASL application protocols that directly re-use this profile MUST
> >    specify whether case mapping is to be applied to authorization IDs.
> >    SASL application protocols SHOULD delay any case mapping of
> >    authorization IDs to the last possible moment, which happens to
> >    necessarily be on the server side.
> > 
> >    Note that, in keeping with RFC4422, SASL applications must not apply
> >    this or any other profile to authentication IDs.
> > 
> >    Note that, in keeping with RFC4422, SASL mechanisms must not apply
> >    this or any other profile to authorization IDs.
> 
> That is much more precise than what I had sketched out, and it looks
> good to me.

Me too


From internet-drafts@ietf.org  Fri Jul 12 11:38:11 2013
Return-Path: <internet-drafts@ietf.org>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0DB2211E816D; Fri, 12 Jul 2013 11:38:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.535
X-Spam-Level: 
X-Spam-Status: No, score=-102.535 tagged_above=-999 required=5 tests=[AWL=0.065, BAYES_00=-2.599, NO_RELAYS=-0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eLhOMrra48Vm; Fri, 12 Jul 2013 11:38:10 -0700 (PDT)
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 96CF911E815E; Fri, 12 Jul 2013 11:38:10 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: internet-drafts@ietf.org
To: i-d-announce@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 4.51.p2
Message-ID: <20130712183810.12543.75451.idtracker@ietfa.amsl.com>
Date: Fri, 12 Jul 2013 11:38:10 -0700
Cc: precis@ietf.org
Subject: [precis] I-D Action: draft-ietf-precis-saslprepbis-03.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 12 Jul 2013 18:38:11 -0000

A New Internet-Draft is available from the on-line Internet-Drafts director=
ies.
 This draft is a work item of the Preparation and Comparison of Internation=
alized Strings Working Group of the IETF.

	Title           : Preparation and Comparison of Internationalized Strings =
Representing Simple User Names and Passwords
	Author(s)       : Peter Saint-Andre
                          Alexey Melnikov
	Filename        : draft-ietf-precis-saslprepbis-03.txt
	Pages           : 14
	Date            : 2013-07-12

Abstract:
   This document describes how to handle Unicode strings representing
   simple user names and passwords, primarily for purposes of
   comparison.  This profile is intended to be used by Simple
   Authentication and Security Layer (SASL) mechanisms (such as PLAIN
   and SCRAM-SHA-1), as well as other protocols that exchange simple
   user names or passwords.  This document obsoletes RFC 4013.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-precis-saslprepbis

There's also a htmlized version available at:
http://tools.ietf.org/html/draft-ietf-precis-saslprepbis-03

A diff from the previous version is available at:
http://www.ietf.org/rfcdiff?url2=3Ddraft-ietf-precis-saslprepbis-03


Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/


From marc.blanchet@viagenie.ca  Sun Jul 14 09:31:23 2013
Return-Path: <marc.blanchet@viagenie.ca>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 41E7121F944C; Sun, 14 Jul 2013 09:31:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oLxL7GEdCyJB; Sun, 14 Jul 2013 09:31:22 -0700 (PDT)
Received: from jazz.viagenie.ca (jazz.viagenie.ca [IPv6:2620:0:230:8000::2]) by ietfa.amsl.com (Postfix) with ESMTP id 8ABD821F93C4; Sun, 14 Jul 2013 09:31:22 -0700 (PDT)
Received: from h195.viagenie.ca (h195.viagenie.ca [206.123.31.195]) by jazz.viagenie.ca (Postfix) with ESMTPSA id DD846403FF; Sun, 14 Jul 2013 12:31:21 -0400 (EDT)
Content-Type: text/plain; charset=iso-8859-1
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Marc Blanchet <marc.blanchet@viagenie.ca>
In-Reply-To: <51DF408E.6010201@stpeter.im>
Date: Sun, 14 Jul 2013 12:31:21 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <58D2B0A9-9A5E-47E7-A551-9814E9033FCA@viagenie.ca>
References: <20130328033951.21028.2480.idtracker@ietfa.amsl.com> <515E4D5B.5050102@stpeter.im> <51648B46.2020905@stpeter.im> <CAK3OfOg1cgV1dnN0qw2c22UKUV0X6d9=kPnU28a7=KETrdG-PQ@mail.gmail.com> <CAK3OfOg869BDdMuCyDPY0+6jT_1NYZ5OGUT35mrJCWr8ic0NNw@mail.gmail.com> <51D33084.5060903@stpeter.im> <CAK3OfOjj6yeW4t64OqFR9Fe7bq8deNZO1GJgX4JRTqHzt6Hdjw@mail.gmail.com> <51DDAF59.4040800@stpeter.im> <51DDC8D3.5060808@stpeter.im> <0DFFEBDE-F6FB-4C9E-BFBA-0181234C11A2@viagenie.ca> <51DF0735.8000006@stpeter.im> <51DF0B74.5000808@stpeter.im> <CAK3OfOhrnWEaZ6gkv6AVtdPVvk2c57NhfVOjs8Aiv5mdWp0y+Q@mail.gmail.com> <29306_1373574631_r6BKUU21031820_51DF15DB.1010200@stpeter.im> <1373575553.23365.268.camel@minbar.fac.cs.cmu.edu> <51DF408E.6010201@stpeter.im>
To: Peter Saint-Andre <stpeter@stpeter.im>
X-Mailer: Apple Mail (2.1508)
Cc: kitten@ietf.org, Nico Williams <nico@cryptonector.com>, precis@ietf.org, Jeffrey Hutzelman <jhutz@cmu.edu>
Subject: Re: [precis] [kitten] Fwd: I-D Action: draft-ietf-precis-saslprepbis-01.txt
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 14 Jul 2013 16:31:23 -0000

Le 2013-07-11 =E0 19:32, Peter Saint-Andre <stpeter@stpeter.im> a =E9crit =
:

> On 7/11/13 2:45 PM, Jeffrey Hutzelman wrote:
>> On Thu, 2013-07-11 at 14:30 -0600, Peter Saint-Andre wrote:
>>=20
>>>> NEW
>>>>   SASL mechanisms that directly re-use this profile MUST specify
>>>>   whether case mapping is to be applied to authentication IDs, and
>>>>   when.  SASL mechanisms SHOULD delay any case mapping to the last
>>>>   possible moment, such as when doing a lookup by username, =
username
>>>>   comparisons, or generating a cryptographic salt from a username.
>>>>=20
>>>>   SASL application protocols that directly re-use this profile MUST
>>>>   specify whether case mapping is to be applied to authorization =
IDs.
>>>>   SASL application protocols SHOULD delay any case mapping of
>>>>   authorization IDs to the last possible moment, which happens to
>>>>   necessarily be on the server side.
>>>>=20
>>>>   Note that, in keeping with RFC4422, SASL applications must not =
apply
>>>>   this or any other profile to authentication IDs.
>>>>=20
>>>>   Note that, in keeping with RFC4422, SASL mechanisms must not =
apply
>>>>   this or any other profile to authorization IDs.
>>>=20
>>> That is much more precise than what I had sketched out, and it looks
>>> good to me.
>>=20
>> Me too
>=20
> Great. If there are no objections from my co-author in the next 24 =
hours
> or so,

you're ok ... ;-)

Marc.

> I'll submit a revised I-D. I'd really like to finish off all this
> i18n stuff... :-)
>=20
> Peter
>=20
> --=20
> Peter Saint-Andre
> https://stpeter.im/


From yoshiro.yoneya@jprs.co.jp  Mon Jul 22 00:12:44 2013
Return-Path: <yoshiro.yoneya@jprs.co.jp>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CE51811E80E0 for <precis@ietfa.amsl.com>; Mon, 22 Jul 2013 00:12:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OEpmV4a5F6P9 for <precis@ietfa.amsl.com>; Mon, 22 Jul 2013 00:12:44 -0700 (PDT)
Received: from off-send01.tyo.jprs.co.jp (off-send01.tyo.jprs.co.jp [IPv6:2001:df0:8:17::10]) by ietfa.amsl.com (Postfix) with ESMTP id 0C04B11E80DC for <precis@ietf.org>; Mon, 22 Jul 2013 00:12:43 -0700 (PDT)
Received: from off-sendsmg01.tyo.jprs.co.jp (off-sendsmg01.tyo.jprs.co.jp [172.18.8.32]) by off-send01.tyo.jprs.co.jp (8.13.8/8.13.8) with ESMTP id r6M7CdEq030418 for <precis@ietf.org>; Mon, 22 Jul 2013 16:12:41 +0900
X-AuditID: ac120820-b7f306d00000490a-96-51ecdb68edc7
Received: from NOTE550 (off-cpu04.tyo.jprs.co.jp [172.18.4.14]) by off-sendsmg01.tyo.jprs.co.jp (Symantec Messaging Gateway) with SMTP id 0F.D9.18698.86BDCE15; Mon, 22 Jul 2013 16:12:40 +0900 (JST)
Date: Mon, 22 Jul 2013 16:12:37 +0900
From: Yoshiro YONEYA <yoshiro.yoneya@jprs.co.jp>
To: precis@ietf.org
Message-Id: <20130722161237.b36f0e401e077c8767ac9482@jprs.co.jp>
X-Mailer: Sylpheed 3.3.0 (GTK+ 2.10.14; i686-pc-mingw32)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrKIsWRmVeSWpSXmKPExsWyRoiFTzfj9ptAg3VLjSx2ff/D6sDosWTJ T6YAxigum5TUnMyy1CJ9uwSujH3frrMWTGKvWNhzjr2B8QFrFyMHh4SAicT5e6FdjJxAppjE hXvr2boYuTiEBI4zSqzcv54JJMEioCrxvnUPC4jNJmAg8WvZb7C4iICwxK3bC1lBbGEBZYk9 e+6wgdi8Ag4SF6f2MkEMtZC40NTBDrKLV0BQ4u8OYZAws4CWxMNft1ggbHmJ7W/nME9g5JmF UDULSdUsJFULGJlXMcrkp6XpFqfmpRTnphsY6pVU5utlFRQV6yWD6E2M4FDhUNjBOOOUwSFG AQ5GJR7eZ0FvAoVYE8uKK3MPMUpyMCmJ8nbdAArxJeWnVGYkFmfEF5XmpBYfYpTgYFYS4fVc BZTjTUmsrEotyodJSXOwKInzHv9zJlBIID2xJDU7NbUgtQgmK8PBoSTB+/4mUKNgUWp6akVa Zk4JQpqJgxNkOA/Q8KsgNbzFBYm5xZnpEPlTjJJS4rwfQRICIImM0jy43leM4kAvCPNeBMny AOMerusV0EAmoIGGra9BBpYkIqSkGhhTnP+4bji45EvqWmkZkeSaafLnxDXbEtYn2mVLtcv9 P15e4hWXmW1w7NP1b0KeZfMZDvYUyyxK9WrxW5+ywkU7soXp0u0ojdQ84dtT6l0jpFem+Xp1 7Vbanvxw+08B94v2Uu3G3r+U7k7Zs979ue0DlTfsor0/t9SXXzjId3he47WmdVsWzlBiKc5I NNRiLipOBADbNbSZuAIAAA==
Subject: [precis] IETF87 Berlin draft agenda
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 22 Jul 2013 07:12:45 -0000

Dear all,

Following is draft agenda for IETF 87 Berlin.
Please send comments/additions/changes to the chairs.

1. Administrativia

2. Document updates / Discussion
  2.1 WG I-Ds
    (1) Framework
      https://datatracker.ietf.org/doc/draft-ietf-precis-framework/

    (2) Preparation and Comparison of Nicknames
      https://datatracker.ietf.org/doc/draft-ietf-precis-nickname/

    (3) Mapping characters for precis classes
      http://datatracker.ietf.org/doc/draft-ietf-precis-mappings/

    (4) Preparation and Comparison of Internationalized Strings Representing 
        Simple User Names and Passwords
      http://datatracker.ietf.org/doc/draft-ietf-precis-saslprepbis/

  2.2 Individual Documents
    (1) HTTPAuthPrep: PRECIS profile for HTTP Authentication
      https://datatracker.ietf.org/doc/draft-oiwa-precis-httpauthprep/

3. Next steps

Marc & Yoneya, co-chairs


From stpeter@stpeter.im  Mon Jul 22 19:49:51 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7F07A11E8183 for <precis@ietfa.amsl.com>; Mon, 22 Jul 2013 19:49:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id trCVV+XjbtvZ for <precis@ietfa.amsl.com>; Mon, 22 Jul 2013 19:49:47 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 9D5A811E81D6 for <precis@ietf.org>; Mon, 22 Jul 2013 19:49:46 -0700 (PDT)
Received: from ergon.local (unknown [71.237.13.154]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 8F82041189; Mon, 22 Jul 2013 20:51:33 -0600 (MDT)
Message-ID: <51EDEF48.6040705@stpeter.im>
Date: Mon, 22 Jul 2013 20:49:44 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Yoshiro YONEYA <yoshiro.yoneya@jprs.co.jp>
References: <20130722161237.b36f0e401e077c8767ac9482@jprs.co.jp>
In-Reply-To: <20130722161237.b36f0e401e077c8767ac9482@jprs.co.jp>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: precis@ietf.org
Subject: Re: [precis] IETF87 Berlin draft agenda
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 23 Jul 2013 02:49:51 -0000

Thanks for the draft agenda. A bit of feedback inline...

On 7/22/13 1:12 AM, Yoshiro YONEYA wrote:
> Dear all,
> 
> Following is draft agenda for IETF 87 Berlin.
> Please send comments/additions/changes to the chairs.
> 
> 1. Administrativia
> 
> 2. Document updates / Discussion
>   2.1 WG I-Ds
>     (1) Framework
>       https://datatracker.ietf.org/doc/draft-ietf-precis-framework/

I can give an update on that spec and ask if people disagree with the
(IMHO relatively small) changes between -08 and -09.

>     (2) Preparation and Comparison of Nicknames
>       https://datatracker.ietf.org/doc/draft-ietf-precis-nickname/

As far as I know, this is done -- we completed WGLC last year and it
needs to undergo IETF Last Call.

>     (3) Mapping characters for precis classes
>       http://datatracker.ietf.org/doc/draft-ietf-precis-mappings/
> 
>     (4) Preparation and Comparison of Internationalized Strings Representing 
>         Simple User Names and Passwords
>       http://datatracker.ietf.org/doc/draft-ietf-precis-saslprepbis/
> 
>   2.2 Individual Documents
>     (1) HTTPAuthPrep: PRECIS profile for HTTP Authentication
>       https://datatracker.ietf.org/doc/draft-oiwa-precis-httpauthprep/

As I mentioned on the list, I think that we don't need an httpauthprep
profile, since saslprepbis probably solves the problem for HTTP auth.
But that would be a useful discussion to have in person.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/



From y.oiwa@aist.go.jp  Mon Jul 22 20:58:24 2013
Return-Path: <y.oiwa@aist.go.jp>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C6B3A11E81D7 for <precis@ietfa.amsl.com>; Mon, 22 Jul 2013 20:58:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.977
X-Spam-Level: 
X-Spam-Status: No, score=-5.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TSefXpPn1ipi for <precis@ietfa.amsl.com>; Mon, 22 Jul 2013 20:58:20 -0700 (PDT)
Received: from na3sys010aog114.obsmtp.com (na3sys010aog114.obsmtp.com [74.125.245.96]) by ietfa.amsl.com (Postfix) with ESMTP id 388DF11E8183 for <precis@ietf.org>; Mon, 22 Jul 2013 20:58:19 -0700 (PDT)
Received: from mail-vc0-f171.google.com ([209.85.220.171]) (using TLSv1) by na3sys010aob114.postini.com ([74.125.244.12]) with SMTP ID DSNKUe3/WnxEcHkVhdACE6PbUCAIhxhDH3GK@postini.com; Mon, 22 Jul 2013 20:58:20 PDT
Received: by mail-vc0-f171.google.com with SMTP id ij15so828638vcb.16 for <precis@ietf.org>; Mon, 22 Jul 2013 20:58:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aist.go.jp; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=JRZDC3ZFMdFAwTNMABFIlQZRl/O10GQmQ8rRO0MMQRM=; b=A/xTZmNlekN4lXhYsguL+cgRAR06fZHZEMXLWfg2ufM69cybi2VN0ReE31Pkh403h5 LsxdY4MSEf7ehTNOXSp/h2Hbu7OHgpKK/B9iDRWvD/k2dLEV9b7j85Gg/BFWIhq0dmP3 E3JpJeBa7jFcFDueYZJW7bC9rkXXgnwE5qH6A=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:x-gm-message-state; bh=JRZDC3ZFMdFAwTNMABFIlQZRl/O10GQmQ8rRO0MMQRM=; b=AFZYP4JQ5hmjnYXViu2Df1EATo+lon0xYNHGdTyBI6APgr1xHl3cLRQxxqgWtohfpB x1vIE4pB1E8pNdEci2X7v9lQ0ND7zETpoXUbLETWS5r1kKgdiiPORDOsuGb5aOP3OtG6 k2dexb/YwIMVw+NcLAJ2jMWVcQyDipHB3/+mSZPMKy+mLmV4lEDQ4HheEbY9HSd5Rn6O G1CuWWlSesNO9djFNKBFrvr4EQSoenXMtAMudRPE1QlagQzWutsmPsxBviWthZ1tcZi4 Kq7AvLtjndW3BCY2l7yslpy2e7tupoSP4JP2FPD/89AQN7WSNyxZ5b4PNtiXQK4I09gR 3ksQ==
X-Received: by 10.221.31.130 with SMTP id sg2mr10021242vcb.86.1374551897972; Mon, 22 Jul 2013 20:58:17 -0700 (PDT)
X-Received: by 10.221.31.130 with SMTP id sg2mr10021238vcb.86.1374551897862; Mon, 22 Jul 2013 20:58:17 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.58.230.101 with HTTP; Mon, 22 Jul 2013 20:57:57 -0700 (PDT)
In-Reply-To: <51EDEF48.6040705@stpeter.im>
References: <20130722161237.b36f0e401e077c8767ac9482@jprs.co.jp> <51EDEF48.6040705@stpeter.im>
From: Yutaka OIWA <y.oiwa@aist.go.jp>
Date: Tue, 23 Jul 2013 12:57:57 +0900
Message-ID: <CAMeZVwvy2KUCe4kAmuBfX-XVRPP4Kt7KwYg=sSZ57hrXTGYA3g@mail.gmail.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Content-Type: text/plain; charset=ISO-8859-1
X-Gm-Message-State: ALoCoQmHyOxtqSn0Uy/7oP9JxJMfQFwC41WwisH1ljI1vRwT3GQsjuMwJ1k9BkNWLpbVJdfm3lPHiySIii0e2QXSs1gl6aGqTSVEPjRIYF/dNX3o1zLfX9E54fY9ep14MpK4+1FxOr11cJB2CxvnRcvHqmswMJai2w==
Cc: precis@ietf.org
Subject: Re: [precis] IETF87 Berlin draft agenda
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 23 Jul 2013 03:58:24 -0000

Dear Peter,

2013/7/23 Peter Saint-Andre <stpeter@stpeter.im>:

>>   2.2 Individual Documents
>>     (1) HTTPAuthPrep: PRECIS profile for HTTP Authentication
>>       https://datatracker.ietf.org/doc/draft-oiwa-precis-httpauthprep/
>
> As I mentioned on the list, I think that we don't need an httpauthprep
> profile, since saslprepbis probably solves the problem for HTTP auth.
> But that would be a useful discussion to have in person.

I agreed that there should be a unified profile for simple HTTP/Web related
preparation in hand, however, at the same time, I think that
application of precis framework for HTTP authentication still need some
special mentions/discussions.
That part is apart from the precis-based translation rules itself.

I do not know what type of document (Standard Track/Informational),
which group (precis/httpauth/httpbis/appsopen/whatever) will be
appropriate, so at this time I'm going to describe in precis what we thought
on writing httpauth, and hoping to get a straight discussions and suggestions
how these rest things are to be arranged well.

--
Yutaka OIWA, Ph.D.                 Leader, System Life-cycle Research Group
                               Research Institute for Secure Systems (RISEC)
     National Institute of Advanced Industrial Science and Technology (AIST)
                       Mail addresses: <y.oiwa@aist.go.jp>, <yutaka@oiwa.jp>
OpenPGP: id[440546B5] fp[7C9F 723A 7559 3246 229D  3139 8677 9BD2 4405 46B5]

From stpeter@stpeter.im  Tue Jul 23 09:26:45 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4739511E82EC for <precis@ietfa.amsl.com>; Tue, 23 Jul 2013 09:26:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3ufx5z8b6B9g for <precis@ietfa.amsl.com>; Tue, 23 Jul 2013 09:26:40 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 30EC811E82DF for <precis@ietf.org>; Tue, 23 Jul 2013 09:26:26 -0700 (PDT)
Received: from sjc-vpn6-1242.cisco.com (unknown [128.107.239.233]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 8F62441189; Tue, 23 Jul 2013 10:28:09 -0600 (MDT)
Message-ID: <51EEAEAA.9090408@stpeter.im>
Date: Tue, 23 Jul 2013 10:26:18 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: "precis@ietf.org" <precis@ietf.org>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Subject: [precis] draft slides for framework and username
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 23 Jul 2013 16:26:45 -0000

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Here are draft slides for my two presentations at IEFF 87 in Berlin:

https://stpeter.im/files/ietf87-precis-framework.pdf

https://stpeter.im/files/ietf87-precis-username.pdf

Feedback is welcome.

Peter

- -- 
Peter Saint-Andre
https://stpeter.im/


-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.19 (Darwin)
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJR7q6qAAoJEOoGpJErxa2pMHQP/RsM8FcPQaB3fp7B6UbakFVF
f1HGBHgmw/dq/rKkcyh0k5nxsFx+8jnR9j4W1FafjMK9T1UX3h/PUcSxZ26P1voe
kNvShAYLflCv6CLgjO1UpAcCEPKc8wFPZMDcoEz2MkY+uC2hx+jVNrh+NrBXoZQC
f8alF6RMcnCco+wthu64epb0pn57Z7HneiElKx1Yajqg/2rd8CZoWCOetXvd2b1Q
0yKi+dJsEJSbH+IAW+fLDFgquGnd2M+cdkmeUWGJP1d5jNzQZR9PWWKo81XD0Q7W
F7v4FFcfgTGN/b8+HG3wXyJoFVORNh+TqsgyIQohWjo6zXfr8lpB4bPh9mAaELra
fkzHsGzDtgb28T/r6sssDB01wXBvpO9COM7f9hH7nOzsnZUj0D5lXquyk2dJV0on
udJ43lAsJl/b88Ep5H/pSnAoJY0DRQ9fj9/MmPw01CikxobvD6xHKiXp/lC+zho2
EM6XduBcgoRpMMz+5/Kx0ueiiFlkS9RkZZLA73yuVLL1ztH+XxGCnUCfDSkiBIuV
OWODRFwmA9ywNLvA/1kXFbLlrk1+U1W7iLo9C5PE5TKllJpTdIxo7fNK0KN/EWxp
3lMTYub5oxsWB6Ghz0RkIpXhWBHhEXuSBx55XoJ7EG6Lni0Tb5/b0478MW+F6+cq
98BWfuk5VqgmY/nZstPi
=lNAb
-----END PGP SIGNATURE-----

From t.nemo10@kmd.keio.ac.jp  Wed Jul 24 00:25:40 2013
Return-Path: <t.nemo10@kmd.keio.ac.jp>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A607011E80F0 for <precis@ietfa.amsl.com>; Wed, 24 Jul 2013 00:25:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level: 
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XuINEYPJjPeE for <precis@ietfa.amsl.com>; Wed, 24 Jul 2013 00:25:39 -0700 (PDT)
Received: from mail.kmd.keio.ac.jp (mail.kmd.keio.ac.jp [IPv6:2001:200:167:2e90::164]) by ietfa.amsl.com (Postfix) with ESMTP id 830BB11E80E2 for <precis@ietf.org>; Wed, 24 Jul 2013 00:25:38 -0700 (PDT)
Received: from [IPv6:2001:200:167:2ec1:1af:90d7:2b43:d4cb] (unknown [IPv6:2001:200:167:2ec1:1af:90d7:2b43:d4cb]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by mail.kmd.keio.ac.jp (Postfix) with ESMTPSA id C0FAF80604; Wed, 24 Jul 2013 16:25:33 +0900 (JST)
Content-Type: multipart/alternative; boundary="Apple-Mail=_7452C59E-3459-4509-82D4-6478271249A0"
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Takahiro Nemoto <t.nemo10@kmd.keio.ac.jp>
In-Reply-To: <51DDBE01.6090605@stpeter.im>
Date: Wed, 24 Jul 2013 16:25:41 +0900
Message-Id: <856CF13A-94B7-4389-9468-8AC7999B9460@kmd.keio.ac.jp>
References: <51DDBE01.6090605@stpeter.im>
To: Peter Saint-Andre <stpeter@stpeter.im>
X-Mailer: Apple Mail (2.1508)
Cc: "precis@ietf.org" <precis@ietf.org>
Subject: Re: [precis] updated framework I-D
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 24 Jul 2013 07:25:40 -0000

--Apple-Mail=_7452C59E-3459-4509-82D4-6478271249A0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

On 2013/07/11, at 5:03, Peter Saint-Andre <stpeter@stpeter.im> wrote:

> I have received no feedback about the (IMHO small) ordering issues I
> raised several weeks ago:
>=20
> http://www.ietf.org/mail-archive/web/precis/current/msg00456.html
>=20
> http://www.ietf.org/mail-archive/web/precis/current/msg00459.html
Hi Peter-san,

My apologies for late reply. I compared precis derived property values=20=

that based on framework-09's ordering, and framework-08's values using =
my code.=20

The only difference that I found was the change from 'PVALID' to 'ID_DIS =
or FREE_PVAL' in the character's value.
The characters by these changes are more rigid for IdentifierClass.
I think this new ordering is more preferable.

Thanks.

Nemo

--
Takahiro Nemoto
t.nemo10@kmd.keio.ac.jp
>=20
> Because the I-D submission deadline is fast approaching, I will soon
> submit a revised I-D incorporating my proposed changes (as well as
> numerous fixes to the codepoint table). We can discuss these as open
> issues at IETF 87 in Berlin.
>=20
> Thanks!
>=20
> Peter
>=20
> --=20
> Peter Saint-Andre
> https://stpeter.im/
>=20
>=20
> _______________________________________________
> precis mailing list
> precis@ietf.org
> https://www.ietf.org/mailman/listinfo/precis


--Apple-Mail=_7452C59E-3459-4509-82D4-6478271249A0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dus-ascii"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space; =
"><div>On 2013/07/11, at 5:03, Peter Saint-Andre &lt;<a =
href=3D"mailto:stpeter@stpeter.im">stpeter@stpeter.im</a>&gt; =
wrote:</div><div><br class=3D"Apple-interchange-newline"><blockquote =
type=3D"cite">I have received no feedback about the (IMHO small) =
ordering issues I<br>raised several weeks ago:<br><br><a =
href=3D"http://www.ietf.org/mail-archive/web/precis/current/msg00456.html"=
>http://www.ietf.org/mail-archive/web/precis/current/msg00456.html</a><br>=
<br>http://www.ietf.org/mail-archive/web/precis/current/msg00459.html<br><=
/blockquote><div>Hi Peter-san,<br><br>My apologies for late reply. I =
compared precis derived property values&nbsp;</div><div>that based on =
framework-09's ordering, and&nbsp;framework-08's values using my =
code.&nbsp;</div><div><br></div><div>The only difference that I found =
was the&nbsp;change from&nbsp;'PVALID' to '<span style=3D"font-family: =
'Lucida Grande'; font-size: 12px; ">ID_DIS or FREE_PVAL' in the =
character's value.</span></div><div>The characters by these changes are =
more&nbsp;rigid for&nbsp;IdentifierClass.</div><div>I think this new =
ordering is more =
preferable.</div><div><br></div><div>Thanks.</div><div><br></div>Nemo</div=
><div><br></div><div><div>--</div><div>Takahiro Nemoto</div><div><a =
href=3D"mailto:t.nemo10@kmd.keio.ac.jp">t.nemo10@kmd.keio.ac.jp</a></div><=
blockquote type=3D"cite"><br>Because the I-D submission deadline is fast =
approaching, I will soon<br>submit a revised I-D incorporating my =
proposed changes (as well as<br>numerous fixes to the codepoint table). =
We can discuss these as open<br>issues at IETF 87 in =
Berlin.<br><br>Thanks!<br><br>Peter<br><br>-- <br>Peter =
Saint-Andre<br><a =
href=3D"https://stpeter.im/">https://stpeter.im/</a><br><br><br>__________=
_____________________________________<br>precis mailing =
list<br>precis@ietf.org<br>https://www.ietf.org/mailman/listinfo/precis<br=
></blockquote></div><br></body></html>=

--Apple-Mail=_7452C59E-3459-4509-82D4-6478271249A0--

From stpeter@stpeter.im  Thu Jul 25 06:39:08 2013
Return-Path: <stpeter@stpeter.im>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 63E8821F9AA7 for <precis@ietfa.amsl.com>; Thu, 25 Jul 2013 06:39:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level: 
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mHiEKx9TLw1G for <precis@ietfa.amsl.com>; Thu, 25 Jul 2013 06:39:04 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id EEB1021F9AAE for <precis@ietf.org>; Thu, 25 Jul 2013 06:39:02 -0700 (PDT)
Received: from ergon.local (unknown [63.156.62.121]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 0510D414BF; Thu, 25 Jul 2013 07:40:57 -0600 (MDT)
Message-ID: <51F12A76.6060409@stpeter.im>
Date: Thu, 25 Jul 2013 07:39:02 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Takahiro Nemoto <t.nemo10@kmd.keio.ac.jp>
References: <51DDBE01.6090605@stpeter.im> <856CF13A-94B7-4389-9468-8AC7999B9460@kmd.keio.ac.jp>
In-Reply-To: <856CF13A-94B7-4389-9468-8AC7999B9460@kmd.keio.ac.jp>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: "precis@ietf.org" <precis@ietf.org>
Subject: Re: [precis] updated framework I-D
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 25 Jul 2013 13:39:08 -0000

Thanks, Nemo!

My Python code still doesn't output the XML format that createtables.rb
does, but I will work on that soon (probably after the IETF meeting
unless I can find the time this week).

BTW, is that XML format documented anywhere?

Peter

On 7/24/13 1:25 AM, Takahiro Nemoto wrote:
> On 2013/07/11, at 5:03, Peter Saint-Andre <stpeter@stpeter.im
> <mailto:stpeter@stpeter.im>> wrote:
> 
>> I have received no feedback about the (IMHO small) ordering issues I
>> raised several weeks ago:
>>
>> http://www.ietf.org/mail-archive/web/precis/current/msg00456.html
>>
>> http://www.ietf.org/mail-archive/web/precis/current/msg00459.html
> Hi Peter-san,
> 
> My apologies for late reply. I compared precis derived property values 
> that based on framework-09's ordering, and framework-08's values using
> my code. 
> 
> The only difference that I found was the change from 'PVALID' to 'ID_DIS
> or FREE_PVAL' in the character's value.
> The characters by these changes are more rigid for IdentifierClass.
> I think this new ordering is more preferable.
> 
> Thanks.
> 
> Nemo
> 
> --
> Takahiro Nemoto
> t.nemo10@kmd.keio.ac.jp <mailto:t.nemo10@kmd.keio.ac.jp>
>>
>> Because the I-D submission deadline is fast approaching, I will soon
>> submit a revised I-D incorporating my proposed changes (as well as
>> numerous fixes to the codepoint table). We can discuss these as open
>> issues at IETF 87 in Berlin.
>>
>> Thanks!
>>
>> Peter
>>
>> -- 
>> Peter Saint-Andre
>> https://stpeter.im/
>>

From t.nemo10@kmd.keio.ac.jp  Mon Jul 29 01:48:14 2013
Return-Path: <t.nemo10@kmd.keio.ac.jp>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7C87F11E80C5 for <precis@ietfa.amsl.com>; Mon, 29 Jul 2013 01:48:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0
X-Spam-Level: 
X-Spam-Status: No, score=x tagged_above=-999 required=5 tests=[]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DjKg9svjPnGW for <precis@ietfa.amsl.com>; Mon, 29 Jul 2013 01:48:14 -0700 (PDT)
Received: from mail.kmd.keio.ac.jp (mail.kmd.keio.ac.jp [IPv6:2001:200:167:2e90::164]) by ietfa.amsl.com (Postfix) with ESMTP id DCD2211E80A2 for <precis@ietf.org>; Mon, 29 Jul 2013 01:48:00 -0700 (PDT)
Received: from dhcp-147e.meeting.ietf.org (dhcp-147e.meeting.ietf.org [130.129.20.126]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by mail.kmd.keio.ac.jp (Postfix) with ESMTPSA id CA1178063B; Mon, 29 Jul 2013 17:47:52 +0900 (JST)
Content-Type: multipart/signed; boundary="Apple-Mail=_6F46D468-5080-43E6-B4B2-075CE3809C32"; protocol="application/pgp-signature"; micalg=pgp-sha1
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Takahiro Nemoto <t.nemo10@kmd.keio.ac.jp>
In-Reply-To: <51F12A76.6060409@stpeter.im>
Date: Mon, 29 Jul 2013 10:47:49 +0200
Message-Id: <26CA3D40-5DF7-4814-87F1-DE9F96F65E97@kmd.keio.ac.jp>
References: <51DDBE01.6090605@stpeter.im> <856CF13A-94B7-4389-9468-8AC7999B9460@kmd.keio.ac.jp> <51F12A76.6060409@stpeter.im>
To: Peter Saint-Andre <stpeter@stpeter.im>
X-Mailer: Apple Mail (2.1508)
Cc: "precis@ietf.org" <precis@ietf.org>
Subject: Re: [precis] updated framework I-D
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Jul 2013 08:48:14 -0000

--Apple-Mail=_6F46D468-5080-43E6-B4B2-075CE3809C32
Content-Type: multipart/mixed;
	boundary="Apple-Mail=_77AEEF8F-5339-4E07-9F84-DB760FC54733"


--Apple-Mail=_77AEEF8F-5339-4E07-9F84-DB760FC54733
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=iso-8859-1

Hi, Peter-san

All right and sorry for this late reply.
I've attached the XML file for Unicode 6.2 to this mail.
I kindly ask for your confirmation.

Thanks,
Nemo

On 2013/07/25, at 15:39, Peter Saint-Andre <stpeter@stpeter.im> wrote:

> Thanks, Nemo!
> 
> My Python code still doesn't output the XML format that createtables.rb
> does, but I will work on that soon (probably after the IETF meeting
> unless I can find the time this week).
> 
> BTW, is that XML format documented anywhere?
> 
> Peter
> 
> On 7/24/13 1:25 AM, Takahiro Nemoto wrote:
>> On 2013/07/11, at 5:03, Peter Saint-Andre <stpeter@stpeter.im
>> <mailto:stpeter@stpeter.im>> wrote:
>> 
>>> I have received no feedback about the (IMHO small) ordering issues I
>>> raised several weeks ago:
>>> 
>>> http://www.ietf.org/mail-archive/web/precis/current/msg00456.html
>>> 
>>> http://www.ietf.org/mail-archive/web/precis/current/msg00459.html
>> Hi Peter-san,
>> 
>> My apologies for late reply. I compared precis derived property values 
>> that based on framework-09's ordering, and framework-08's values using
>> my code. 
>> 
>> The only difference that I found was the change from 'PVALID' to 'ID_DIS
>> or FREE_PVAL' in the character's value.
>> The characters by these changes are more rigid for IdentifierClass.
>> I think this new ordering is more preferable.
>> 
>> Thanks.
>> 
>> Nemo
>> 
>> --
>> Takahiro Nemoto
>> t.nemo10@kmd.keio.ac.jp <mailto:t.nemo10@kmd.keio.ac.jp>
>>> 
>>> Because the I-D submission deadline is fast approaching, I will soon
>>> submit a revised I-D incorporating my proposed changes (as well as
>>> numerous fixes to the codepoint table). We can discuss these as open
>>> issues at IETF 87 in Berlin.
>>> 
>>> Thanks!
>>> 
>>> Peter
>>> 
>>> -- 
>>> Peter Saint-Andre
>>> https://stpeter.im/
>>> 

--Apple-Mail=_77AEEF8F-5339-4E07-9F84-DB760FC54733
Content-Disposition: attachment;
	filename=precis-tables.xml
Content-Type: application/xml;
	name="precis-tables.xml"
Content-Transfer-Encoding: 7bit

<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="precis-tables.xsl"?>
<?oxygen RNGSchema="precis-tables.rng" type="xml"?>
<registry xmlns="http://www.iana.org/assignments" id="precis-tables">
  <title>PRECIS Parameters</title>
  <created>2013-07-28</created>
  <updated>2013-07-28</updated>
  <xref type="internet draft" data="draft-ietf-precis-framework-09"/>
  <registry id="precis-tables-context">
    <title>IDNA Contextual Rules</title>
    <created>2013-07-28</created>
    <updated>2013-07-28</updated>
    <registration_rule>IETF Review</registration_rule>
    <xref type="internet draft" data="draft-ietf-precis-framework-09"/>
    <record date="2013-07-28">
      <description>ZERO WIDTH NON-JOINER</description>
      <codepoint>200C</codepoint>
      <overview>This may occur in a formally cursive script (such as Arabic) in a
context where it breaks a cursive connection as required for
orthographic rules, as in the Persian language, for example.  It
also may occur in Indic scripts in a consonant conjunct context
(immediately following a virama), to control required display of
such conjuncts.</overview>
      <lookup>True</lookup>
      <ruleset>False;
If Canonical_Combining_Class(Before(cp)) .eq.  Virama Then True;
If RegExpMatch((Joining_Type:{L,D})(Joining_Type:T)*\u200C
(Joining_Type:T)*(Joining_Type:{R,D})) Then True;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>ZERO WIDTH JOINER</description>
      <codepoint>200D</codepoint>
      <overview>This may occur in Indic scripts in a consonant conjunct context
(immediately following a virama), to control required display of
such conjuncts.</overview>
      <lookup>True</lookup>
      <ruleset>False;
If Canonical_Combining_Class(Before(cp)) .eq.  Virama Then True;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>MIDDLE DOT</description>
      <codepoint>00B7</codepoint>
      <overview>Between 'l' (U+006C) characters only, used to permit the Catalan
character ela geminada to be expressed</overview>
      <lookup>False</lookup>
      <ruleset>False;
If Before(cp) .eq.  U+006C And
   After(cp) .eq.  U+006C Then True;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>GREEK LOWER NUMERAL SIGN (KERAIA)</description>
      <codepoint>0375</codepoint>
      <overview>The script of the following character MUST be Greek.</overview>
      <lookup>False</lookup>
      <ruleset>False;
 If Script(After(cp)) .eq.  Greek Then True;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>HEBREW PUNCTUATION GERESH</description>
      <codepoint>05F3</codepoint>
      <overview>The script of the preceding character MUST be Hebrew.</overview>
      <lookup>False</lookup>
      <ruleset>False;
If Script(Before(cp)) .eq.  Hebrew Then True;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>HEBREW PUNCTUATION GERSHAYIM</description>
      <codepoint>05F4</codepoint>
      <overview>The script of the preceding character MUST be Hebrew.</overview>
      <lookup>False</lookup>
      <ruleset>False;
If Script(Before(cp)) .eq.  Hebrew Then True;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>KATAKANA MIDDLE DOT</description>
      <codepoint>30FB</codepoint>
      <overview>Note that the Script of Katakana Middle Dot is not any of
"Hiragana", "Katakana" or "Han".  The effect of this rule is to
require at least one character in the label to be in one of those
scripts.</overview>
      <lookup>False</lookup>
      <ruleset>False;
For All Characters:
   If Script(cp) .in. {Hiragana, Katakana, Han} Then True;
End For;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>ARABIC-INDIC DIGITS</description>
      <codepoint>0660-0669</codepoint>
      <overview>Can not be mixed with Extended Arabic-Indic Digits.</overview>
      <lookup>False</lookup>
      <ruleset>True;
For All Characters:
   If cp .in. 06F0..06F9 Then False;
End For;</ruleset>
    </record>
    <record date="2013-07-28">
      <description>EXTENDED ARABIC-INDIC DIGITS</description>
      <codepoint>06F0-06F9</codepoint>
      <overview>Can not be mixed with Arabic-Indic Digits.</overview>
      <lookup>False</lookup>
      <ruleset>True;
For All Characters:
   If cp .in. 0660..0669 Then False;
End For;</ruleset>
    </record>
  </registry>
  <registry id="precis-tables-properties">
    <title>IDNA Derived Properties</title>
    <registration_rule>Expert Review</registration_rule>
    <xref type="internet draft" data="draft-ietf-precis-framework-09"/>
    <record>
      <codepoint>0000-001F</codepoint>
      <property>DISALLOWED</property>
      <description>NULL..NULL</description>
    </record>
    <record>
      <codepoint>0020</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SPACE</description>
    </record>
    <record>
      <codepoint>0021-007E</codepoint>
      <property>PVALID</property>
      <description>EXCLAMATION MARK..TILDE</description>
    </record>
    <record>
      <codepoint>007F-009F</codepoint>
      <property>DISALLOWED</property>
      <description>NULL..NULL</description>
    </record>
    <record>
      <codepoint>00A0-00AC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NO-BREAK SPACE..NOT SIGN</description>
    </record>
    <record>
      <codepoint>00AD</codepoint>
      <property>DISALLOWED</property>
      <description>SOFT HYPHEN</description>
    </record>
    <record>
      <codepoint>00AE-00B6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>REGISTERED SIGN..PILCROW SIGN</description>
    </record>
    <record>
      <codepoint>00B7</codepoint>
      <property>CONTEXTO</property>
      <description>MIDDLE DOT</description>
    </record>
    <record>
      <codepoint>00B8-00BF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CEDILLA..INVERTED QUESTION MARK</description>
    </record>
    <record>
      <codepoint>00C0-00D6</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER A WITH GRAVE..LATIN CAPITAL LETTER O WITH DIAERESIS</description>
    </record>
    <record>
      <codepoint>00D7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MULTIPLICATION SIGN</description>
    </record>
    <record>
      <codepoint>00D8-00F6</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER O WITH STROKE..LATIN SMALL LETTER O WITH DIAERESIS</description>
    </record>
    <record>
      <codepoint>00F7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DIVISION SIGN</description>
    </record>
    <record>
      <codepoint>00F8-0131</codepoint>
      <property>PVALID</property>
      <description>LATIN SMALL LETTER O WITH STROKE..LATIN SMALL LETTER DOTLESS I</description>
    </record>
    <record>
      <codepoint>0132-0133</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN CAPITAL LIGATURE IJ..LATIN SMALL LIGATURE IJ</description>
    </record>
    <record>
      <codepoint>0134-013E</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER J WITH CIRCUMFLEX..LATIN SMALL LETTER L WITH CARON</description>
    </record>
    <record>
      <codepoint>013F-0140</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN CAPITAL LETTER L WITH MIDDLE DOT..LATIN SMALL LETTER L WITH MIDDLE DOT</description>
    </record>
    <record>
      <codepoint>0141-0148</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER L WITH STROKE..LATIN SMALL LETTER N WITH CARON</description>
    </record>
    <record>
      <codepoint>0149</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN SMALL LETTER N PRECEDED BY APOSTROPHE</description>
    </record>
    <record>
      <codepoint>014A-017E</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER ENG..LATIN SMALL LETTER Z WITH CARON</description>
    </record>
    <record>
      <codepoint>017F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN SMALL LETTER LONG S</description>
    </record>
    <record>
      <codepoint>0180-01C3</codepoint>
      <property>PVALID</property>
      <description>LATIN SMALL LETTER B WITH STROKE..LATIN LETTER RETROFLEX CLICK</description>
    </record>
    <record>
      <codepoint>01C4-01CC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN CAPITAL LETTER DZ WITH CARON..LATIN SMALL LETTER NJ</description>
    </record>
    <record>
      <codepoint>01CD-01F0</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER A WITH CARON..LATIN SMALL LETTER J WITH CARON</description>
    </record>
    <record>
      <codepoint>01F1-01F3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN CAPITAL LETTER DZ..LATIN SMALL LETTER DZ</description>
    </record>
    <record>
      <codepoint>01F4-02AF</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER G WITH ACUTE..LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL</description>
    </record>
    <record>
      <codepoint>02B0-02B8</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER SMALL H..MODIFIER LETTER SMALL Y</description>
    </record>
    <record>
      <codepoint>02B9-02C1</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER PRIME..MODIFIER LETTER REVERSED GLOTTAL STOP</description>
    </record>
    <record>
      <codepoint>02C2-02C5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER LEFT ARROWHEAD..MODIFIER LETTER DOWN ARROWHEAD</description>
    </record>
    <record>
      <codepoint>02C6-02D1</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER CIRCUMFLEX ACCENT..MODIFIER LETTER HALF TRIANGULAR COLON</description>
    </record>
    <record>
      <codepoint>02D2-02EB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CENTRED RIGHT HALF RING..MODIFIER LETTER YANG DEPARTING TONE MARK</description>
    </record>
    <record>
      <codepoint>02EC</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER VOICING</description>
    </record>
    <record>
      <codepoint>02ED</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER UNASPIRATED</description>
    </record>
    <record>
      <codepoint>02EE</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER DOUBLE APOSTROPHE</description>
    </record>
    <record>
      <codepoint>02EF-02FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER LOW DOWN ARROWHEAD..MODIFIER LETTER LOW LEFT ARROW</description>
    </record>
    <record>
      <codepoint>0300-033F</codepoint>
      <property>PVALID</property>
      <description>COMBINING GRAVE ACCENT..COMBINING DOUBLE OVERLINE</description>
    </record>
    <record>
      <codepoint>0340-0341</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COMBINING GRAVE TONE MARK..COMBINING ACUTE TONE MARK</description>
    </record>
    <record>
      <codepoint>0342</codepoint>
      <property>PVALID</property>
      <description>COMBINING GREEK PERISPOMENI</description>
    </record>
    <record>
      <codepoint>0343-0344</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COMBINING GREEK KORONIS..COMBINING GREEK DIALYTIKA TONOS</description>
    </record>
    <record>
      <codepoint>0345-034E</codepoint>
      <property>PVALID</property>
      <description>COMBINING GREEK YPOGEGRAMMENI..COMBINING UPWARDS ARROW BELOW</description>
    </record>
    <record>
      <codepoint>034F</codepoint>
      <property>DISALLOWED</property>
      <description>COMBINING GRAPHEME JOINER</description>
    </record>
    <record>
      <codepoint>0350-0373</codepoint>
      <property>PVALID</property>
      <description>COMBINING RIGHT ARROWHEAD ABOVE..GREEK SMALL LETTER ARCHAIC SAMPI</description>
    </record>
    <record>
      <codepoint>0374</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK NUMERAL SIGN</description>
    </record>
    <record>
      <codepoint>0375</codepoint>
      <property>CONTEXTO</property>
      <description>GREEK LOWER NUMERAL SIGN</description>
    </record>
    <record>
      <codepoint>0376-0377</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA..GREEK SMALL LETTER PAMPHYLIAN DIGAMMA</description>
    </record>
    <record>
      <codepoint>0378-0379</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>037A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>037B-037D</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL REVERSED LUNATE SIGMA SYMBOL..GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL</description>
    </record>
    <record>
      <codepoint>037E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK QUESTION MARK</description>
    </record>
    <record>
      <codepoint>037F-0383</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0384-0385</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK TONOS..GREEK DIALYTIKA TONOS</description>
    </record>
    <record>
      <codepoint>0386</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER ALPHA WITH TONOS</description>
    </record>
    <record>
      <codepoint>0387</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK ANO TELEIA</description>
    </record>
    <record>
      <codepoint>0388-038A</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER EPSILON WITH TONOS..GREEK CAPITAL LETTER IOTA WITH TONOS</description>
    </record>
    <record>
      <codepoint>038B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>038C</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER OMICRON WITH TONOS</description>
    </record>
    <record>
      <codepoint>038D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>038E-03A1</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER UPSILON WITH TONOS..GREEK CAPITAL LETTER RHO</description>
    </record>
    <record>
      <codepoint>03A2</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>03A3-03CF</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER SIGMA..GREEK CAPITAL KAI SYMBOL</description>
    </record>
    <record>
      <codepoint>03D0-03D6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK BETA SYMBOL..GREEK PI SYMBOL</description>
    </record>
    <record>
      <codepoint>03D7-03EF</codepoint>
      <property>PVALID</property>
      <description>GREEK KAI SYMBOL..COPTIC SMALL LETTER DEI</description>
    </record>
    <record>
      <codepoint>03F0-03F2</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK KAPPA SYMBOL..GREEK LUNATE SIGMA SYMBOL</description>
    </record>
    <record>
      <codepoint>03F3</codepoint>
      <property>PVALID</property>
      <description>GREEK LETTER YOT</description>
    </record>
    <record>
      <codepoint>03F4-03F6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL THETA SYMBOL..GREEK REVERSED LUNATE EPSILON SYMBOL</description>
    </record>
    <record>
      <codepoint>03F7-03F8</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER SHO..GREEK SMALL LETTER SHO</description>
    </record>
    <record>
      <codepoint>03F9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LUNATE SIGMA SYMBOL</description>
    </record>
    <record>
      <codepoint>03FA-0481</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER SAN..CYRILLIC SMALL LETTER KOPPA</description>
    </record>
    <record>
      <codepoint>0482</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CYRILLIC THOUSANDS SIGN</description>
    </record>
    <record>
      <codepoint>0483-0487</codepoint>
      <property>PVALID</property>
      <description>COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE</description>
    </record>
    <record>
      <codepoint>0488-0489</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN</description>
    </record>
    <record>
      <codepoint>048A-0527</codepoint>
      <property>PVALID</property>
      <description>CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER SHHA WITH DESCENDER</description>
    </record>
    <record>
      <codepoint>0528-0530</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0531-0556</codepoint>
      <property>PVALID</property>
      <description>ARMENIAN CAPITAL LETTER AYB..ARMENIAN CAPITAL LETTER FEH</description>
    </record>
    <record>
      <codepoint>0557-0558</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0559</codepoint>
      <property>PVALID</property>
      <description>ARMENIAN MODIFIER LETTER LEFT HALF RING</description>
    </record>
    <record>
      <codepoint>055A-055F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARMENIAN APOSTROPHE..ARMENIAN ABBREVIATION MARK</description>
    </record>
    <record>
      <codepoint>0560</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0561-0586</codepoint>
      <property>PVALID</property>
      <description>ARMENIAN SMALL LETTER AYB..ARMENIAN SMALL LETTER FEH</description>
    </record>
    <record>
      <codepoint>0587</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARMENIAN SMALL LIGATURE ECH YIWN</description>
    </record>
    <record>
      <codepoint>0588</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0589-058A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARMENIAN FULL STOP..ARMENIAN HYPHEN</description>
    </record>
    <record>
      <codepoint>058B-058E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>058F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARMENIAN DRAM SIGN</description>
    </record>
    <record>
      <codepoint>0590</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0591-05BD</codepoint>
      <property>PVALID</property>
      <description>HEBREW ACCENT ETNAHTA..HEBREW POINT METEG</description>
    </record>
    <record>
      <codepoint>05BE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW PUNCTUATION MAQAF</description>
    </record>
    <record>
      <codepoint>05BF</codepoint>
      <property>PVALID</property>
      <description>HEBREW POINT RAFE</description>
    </record>
    <record>
      <codepoint>05C0</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW PUNCTUATION PASEQ</description>
    </record>
    <record>
      <codepoint>05C1-05C2</codepoint>
      <property>PVALID</property>
      <description>HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT</description>
    </record>
    <record>
      <codepoint>05C3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW PUNCTUATION SOF PASUQ</description>
    </record>
    <record>
      <codepoint>05C4-05C5</codepoint>
      <property>PVALID</property>
      <description>HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT</description>
    </record>
    <record>
      <codepoint>05C6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW PUNCTUATION NUN HAFUKHA</description>
    </record>
    <record>
      <codepoint>05C7</codepoint>
      <property>PVALID</property>
      <description>HEBREW POINT QAMATS QATAN</description>
    </record>
    <record>
      <codepoint>05C8-05CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>05D0-05EA</codepoint>
      <property>PVALID</property>
      <description>HEBREW LETTER ALEF..HEBREW LETTER TAV</description>
    </record>
    <record>
      <codepoint>05EB-05EF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>05F0-05F2</codepoint>
      <property>PVALID</property>
      <description>HEBREW LIGATURE YIDDISH DOUBLE VAV..HEBREW LIGATURE YIDDISH DOUBLE YOD</description>
    </record>
    <record>
      <codepoint>05F3-05F4</codepoint>
      <property>CONTEXTO</property>
      <description>HEBREW PUNCTUATION GERESH..HEBREW PUNCTUATION GERSHAYIM</description>
    </record>
    <record>
      <codepoint>05F5-05FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0600-0604</codepoint>
      <property>DISALLOWED</property>
      <description>ARABIC NUMBER SIGN..ARABIC SIGN SAMVAT</description>
    </record>
    <record>
      <codepoint>0605</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0606-060F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC-INDIC CUBE ROOT..ARABIC SIGN MISRA</description>
    </record>
    <record>
      <codepoint>0610-061A</codepoint>
      <property>PVALID</property>
      <description>ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA</description>
    </record>
    <record>
      <codepoint>061B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC SEMICOLON</description>
    </record>
    <record>
      <codepoint>061C-061D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>061E-061F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC TRIPLE DOT PUNCTUATION MARK..ARABIC QUESTION MARK</description>
    </record>
    <record>
      <codepoint>0620-063F</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER KASHMIRI YEH..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE</description>
    </record>
    <record>
      <codepoint>0640</codepoint>
      <property>DISALLOWED</property>
      <description>ARABIC TATWEEL</description>
    </record>
    <record>
      <codepoint>0641-065F</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER FEH..ARABIC WAVY HAMZA BELOW</description>
    </record>
    <record>
      <codepoint>0660-0669</codepoint>
      <property>CONTEXTO</property>
      <description>ARABIC-INDIC DIGIT ZERO..ARABIC-INDIC DIGIT NINE</description>
    </record>
    <record>
      <codepoint>066A-066D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC PERCENT SIGN..ARABIC FIVE POINTED STAR</description>
    </record>
    <record>
      <codepoint>066E-0674</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER DOTLESS BEH..ARABIC LETTER HIGH HAMZA</description>
    </record>
    <record>
      <codepoint>0675-0678</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC LETTER HIGH HAMZA ALEF..ARABIC LETTER HIGH HAMZA YEH</description>
    </record>
    <record>
      <codepoint>0679-06D3</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER TTEH..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE</description>
    </record>
    <record>
      <codepoint>06D4</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC FULL STOP</description>
    </record>
    <record>
      <codepoint>06D5-06DC</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER AE..ARABIC SMALL HIGH SEEN</description>
    </record>
    <record>
      <codepoint>06DD</codepoint>
      <property>DISALLOWED</property>
      <description>ARABIC END OF AYAH</description>
    </record>
    <record>
      <codepoint>06DE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC START OF RUB EL HIZB</description>
    </record>
    <record>
      <codepoint>06DF-06E8</codepoint>
      <property>PVALID</property>
      <description>ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH NOON</description>
    </record>
    <record>
      <codepoint>06E9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC PLACE OF SAJDAH</description>
    </record>
    <record>
      <codepoint>06EA-06EF</codepoint>
      <property>PVALID</property>
      <description>ARABIC EMPTY CENTRE LOW STOP..ARABIC LETTER REH WITH INVERTED V</description>
    </record>
    <record>
      <codepoint>06F0-06F9</codepoint>
      <property>CONTEXTO</property>
      <description>EXTENDED ARABIC-INDIC DIGIT ZERO..EXTENDED ARABIC-INDIC DIGIT NINE</description>
    </record>
    <record>
      <codepoint>06FA-06FF</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER SHEEN WITH DOT BELOW..ARABIC LETTER HEH WITH INVERTED V</description>
    </record>
    <record>
      <codepoint>0700-070D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SYRIAC END OF PARAGRAPH..SYRIAC HARKLEAN ASTERISCUS</description>
    </record>
    <record>
      <codepoint>070E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>070F</codepoint>
      <property>DISALLOWED</property>
      <description>SYRIAC ABBREVIATION MARK</description>
    </record>
    <record>
      <codepoint>0710-074A</codepoint>
      <property>PVALID</property>
      <description>SYRIAC LETTER ALAPH..SYRIAC BARREKH</description>
    </record>
    <record>
      <codepoint>074B-074C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>074D-07B1</codepoint>
      <property>PVALID</property>
      <description>SYRIAC LETTER SOGDIAN ZHAIN..THAANA LETTER NAA</description>
    </record>
    <record>
      <codepoint>07B2-07BF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>07C0-07F5</codepoint>
      <property>PVALID</property>
      <description>NKO DIGIT ZERO..NKO LOW TONE APOSTROPHE</description>
    </record>
    <record>
      <codepoint>07F6-07F9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NKO SYMBOL OO DENNEN..NKO EXCLAMATION MARK</description>
    </record>
    <record>
      <codepoint>07FA</codepoint>
      <property>DISALLOWED</property>
      <description>NKO LAJANYALAN</description>
    </record>
    <record>
      <codepoint>07FB-07FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0800-082D</codepoint>
      <property>PVALID</property>
      <description>SAMARITAN LETTER ALAF..SAMARITAN MARK NEQUDAA</description>
    </record>
    <record>
      <codepoint>082E-082F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0830-083E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SAMARITAN PUNCTUATION NEQUDAA..SAMARITAN PUNCTUATION ANNAAU</description>
    </record>
    <record>
      <codepoint>083F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0840-085B</codepoint>
      <property>PVALID</property>
      <description>MANDAIC LETTER HALQA..MANDAIC GEMINATION MARK</description>
    </record>
    <record>
      <codepoint>085C-085D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>085E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MANDAIC PUNCTUATION</description>
    </record>
    <record>
      <codepoint>085F-089F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>08A0</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER BEH WITH SMALL V BELOW</description>
    </record>
    <record>
      <codepoint>08A1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>08A2-08AC</codepoint>
      <property>PVALID</property>
      <description>ARABIC LETTER JEEM WITH TWO DOTS ABOVE..ARABIC LETTER ROHINGYA YEH</description>
    </record>
    <record>
      <codepoint>08AD-08E3</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>08E4-08FE</codepoint>
      <property>PVALID</property>
      <description>ARABIC CURLY FATHA..ARABIC DAMMA WITH DOT</description>
    </record>
    <record>
      <codepoint>08FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0900-0957</codepoint>
      <property>PVALID</property>
      <description>DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI VOWEL SIGN UUE</description>
    </record>
    <record>
      <codepoint>0958-095F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DEVANAGARI LETTER QA..DEVANAGARI LETTER YYA</description>
    </record>
    <record>
      <codepoint>0960-0963</codepoint>
      <property>PVALID</property>
      <description>DEVANAGARI LETTER VOCALIC RR..DEVANAGARI VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0964-0965</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA</description>
    </record>
    <record>
      <codepoint>0966-096F</codepoint>
      <property>PVALID</property>
      <description>DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0970</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DEVANAGARI ABBREVIATION SIGN</description>
    </record>
    <record>
      <codepoint>0971-0977</codepoint>
      <property>PVALID</property>
      <description>DEVANAGARI SIGN HIGH SPACING DOT..DEVANAGARI LETTER UUE</description>
    </record>
    <record>
      <codepoint>0978</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0979-097F</codepoint>
      <property>PVALID</property>
      <description>DEVANAGARI LETTER ZHA..DEVANAGARI LETTER BBA</description>
    </record>
    <record>
      <codepoint>0980</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0981-0983</codepoint>
      <property>PVALID</property>
      <description>BENGALI SIGN CANDRABINDU..BENGALI SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0984</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0985-098C</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER A..BENGALI LETTER VOCALIC L</description>
    </record>
    <record>
      <codepoint>098D-098E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>098F-0990</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER E..BENGALI LETTER AI</description>
    </record>
    <record>
      <codepoint>0991-0992</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0993-09A8</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER O..BENGALI LETTER NA</description>
    </record>
    <record>
      <codepoint>09A9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09AA-09B0</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER PA..BENGALI LETTER RA</description>
    </record>
    <record>
      <codepoint>09B1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09B2</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER LA</description>
    </record>
    <record>
      <codepoint>09B3-09B5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09B6-09B9</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER SHA..BENGALI LETTER HA</description>
    </record>
    <record>
      <codepoint>09BA-09BB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09BC-09C4</codepoint>
      <property>PVALID</property>
      <description>BENGALI SIGN NUKTA..BENGALI VOWEL SIGN VOCALIC RR</description>
    </record>
    <record>
      <codepoint>09C5-09C6</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09C7-09C8</codepoint>
      <property>PVALID</property>
      <description>BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>09C9-09CA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09CB-09CE</codepoint>
      <property>PVALID</property>
      <description>BENGALI VOWEL SIGN O..BENGALI LETTER KHANDA TA</description>
    </record>
    <record>
      <codepoint>09CF-09D6</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09D7</codepoint>
      <property>PVALID</property>
      <description>BENGALI AU LENGTH MARK</description>
    </record>
    <record>
      <codepoint>09D8-09DB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09DC-09DD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BENGALI LETTER RRA..BENGALI LETTER RHA</description>
    </record>
    <record>
      <codepoint>09DE</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09DF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BENGALI LETTER YYA</description>
    </record>
    <record>
      <codepoint>09E0-09E3</codepoint>
      <property>PVALID</property>
      <description>BENGALI LETTER VOCALIC RR..BENGALI VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>09E4-09E5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>09E6-09F1</codepoint>
      <property>PVALID</property>
      <description>BENGALI DIGIT ZERO..BENGALI LETTER RA WITH LOWER DIAGONAL</description>
    </record>
    <record>
      <codepoint>09F2-09FB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BENGALI RUPEE MARK..BENGALI GANDA MARK</description>
    </record>
    <record>
      <codepoint>09FC-0A00</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A01-0A03</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0A04</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A05-0A0A</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER A..GURMUKHI LETTER UU</description>
    </record>
    <record>
      <codepoint>0A0B-0A0E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A0F-0A10</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER EE..GURMUKHI LETTER AI</description>
    </record>
    <record>
      <codepoint>0A11-0A12</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A13-0A28</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER OO..GURMUKHI LETTER NA</description>
    </record>
    <record>
      <codepoint>0A29</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A2A-0A30</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER PA..GURMUKHI LETTER RA</description>
    </record>
    <record>
      <codepoint>0A31</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A32</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER LA</description>
    </record>
    <record>
      <codepoint>0A33</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GURMUKHI LETTER LLA</description>
    </record>
    <record>
      <codepoint>0A34</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A35</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER VA</description>
    </record>
    <record>
      <codepoint>0A36</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GURMUKHI LETTER SHA</description>
    </record>
    <record>
      <codepoint>0A37</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A38-0A39</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER SA..GURMUKHI LETTER HA</description>
    </record>
    <record>
      <codepoint>0A3A-0A3B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A3C</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI SIGN NUKTA</description>
    </record>
    <record>
      <codepoint>0A3D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A3E-0A42</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN UU</description>
    </record>
    <record>
      <codepoint>0A43-0A46</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A47-0A48</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0A49-0A4A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A4B-0A4D</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>0A4E-0A50</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A51</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI SIGN UDAAT</description>
    </record>
    <record>
      <codepoint>0A52-0A58</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A59-0A5B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GURMUKHI LETTER KHHA..GURMUKHI LETTER ZA</description>
    </record>
    <record>
      <codepoint>0A5C</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI LETTER RRA</description>
    </record>
    <record>
      <codepoint>0A5D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A5E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GURMUKHI LETTER FA</description>
    </record>
    <record>
      <codepoint>0A5F-0A65</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A66-0A75</codepoint>
      <property>PVALID</property>
      <description>GURMUKHI DIGIT ZERO..GURMUKHI SIGN YAKASH</description>
    </record>
    <record>
      <codepoint>0A76-0A80</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A81-0A83</codepoint>
      <property>PVALID</property>
      <description>GUJARATI SIGN CANDRABINDU..GUJARATI SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0A84</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A85-0A8D</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER A..GUJARATI VOWEL CANDRA E</description>
    </record>
    <record>
      <codepoint>0A8E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A8F-0A91</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER E..GUJARATI VOWEL CANDRA O</description>
    </record>
    <record>
      <codepoint>0A92</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0A93-0AA8</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER O..GUJARATI LETTER NA</description>
    </record>
    <record>
      <codepoint>0AA9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AAA-0AB0</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER PA..GUJARATI LETTER RA</description>
    </record>
    <record>
      <codepoint>0AB1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AB2-0AB3</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER LA..GUJARATI LETTER LLA</description>
    </record>
    <record>
      <codepoint>0AB4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AB5-0AB9</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER VA..GUJARATI LETTER HA</description>
    </record>
    <record>
      <codepoint>0ABA-0ABB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0ABC-0AC5</codepoint>
      <property>PVALID</property>
      <description>GUJARATI SIGN NUKTA..GUJARATI VOWEL SIGN CANDRA E</description>
    </record>
    <record>
      <codepoint>0AC6</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AC7-0AC9</codepoint>
      <property>PVALID</property>
      <description>GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN CANDRA O</description>
    </record>
    <record>
      <codepoint>0ACA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0ACB-0ACD</codepoint>
      <property>PVALID</property>
      <description>GUJARATI VOWEL SIGN O..GUJARATI SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>0ACE-0ACF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AD0</codepoint>
      <property>PVALID</property>
      <description>GUJARATI OM</description>
    </record>
    <record>
      <codepoint>0AD1-0ADF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AE0-0AE3</codepoint>
      <property>PVALID</property>
      <description>GUJARATI LETTER VOCALIC RR..GUJARATI VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0AE4-0AE5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0AE6-0AEF</codepoint>
      <property>PVALID</property>
      <description>GUJARATI DIGIT ZERO..GUJARATI DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0AF0-0AF1</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GUJARATI ABBREVIATION SIGN..GUJARATI RUPEE SIGN</description>
    </record>
    <record>
      <codepoint>0AF2-0B00</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B01-0B03</codepoint>
      <property>PVALID</property>
      <description>ORIYA SIGN CANDRABINDU..ORIYA SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0B04</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B05-0B0C</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER A..ORIYA LETTER VOCALIC L</description>
    </record>
    <record>
      <codepoint>0B0D-0B0E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B0F-0B10</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER E..ORIYA LETTER AI</description>
    </record>
    <record>
      <codepoint>0B11-0B12</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B13-0B28</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER O..ORIYA LETTER NA</description>
    </record>
    <record>
      <codepoint>0B29</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B2A-0B30</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER PA..ORIYA LETTER RA</description>
    </record>
    <record>
      <codepoint>0B31</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B32-0B33</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER LA..ORIYA LETTER LLA</description>
    </record>
    <record>
      <codepoint>0B34</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B35-0B39</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER VA..ORIYA LETTER HA</description>
    </record>
    <record>
      <codepoint>0B3A-0B3B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B3C-0B44</codepoint>
      <property>PVALID</property>
      <description>ORIYA SIGN NUKTA..ORIYA VOWEL SIGN VOCALIC RR</description>
    </record>
    <record>
      <codepoint>0B45-0B46</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B47-0B48</codepoint>
      <property>PVALID</property>
      <description>ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0B49-0B4A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B4B-0B4D</codepoint>
      <property>PVALID</property>
      <description>ORIYA VOWEL SIGN O..ORIYA SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>0B4E-0B55</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B56-0B57</codepoint>
      <property>PVALID</property>
      <description>ORIYA AI LENGTH MARK..ORIYA AU LENGTH MARK</description>
    </record>
    <record>
      <codepoint>0B58-0B5B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B5C-0B5D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ORIYA LETTER RRA..ORIYA LETTER RHA</description>
    </record>
    <record>
      <codepoint>0B5E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B5F-0B63</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER YYA..ORIYA VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0B64-0B65</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B66-0B6F</codepoint>
      <property>PVALID</property>
      <description>ORIYA DIGIT ZERO..ORIYA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0B70</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ORIYA ISSHAR</description>
    </record>
    <record>
      <codepoint>0B71</codepoint>
      <property>PVALID</property>
      <description>ORIYA LETTER WA</description>
    </record>
    <record>
      <codepoint>0B72-0B77</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ORIYA FRACTION ONE QUARTER..ORIYA FRACTION THREE SIXTEENTHS</description>
    </record>
    <record>
      <codepoint>0B78-0B81</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B82-0B83</codepoint>
      <property>PVALID</property>
      <description>TAMIL SIGN ANUSVARA..TAMIL SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0B84</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B85-0B8A</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER A..TAMIL LETTER UU</description>
    </record>
    <record>
      <codepoint>0B8B-0B8D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B8E-0B90</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER E..TAMIL LETTER AI</description>
    </record>
    <record>
      <codepoint>0B91</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B92-0B95</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER O..TAMIL LETTER KA</description>
    </record>
    <record>
      <codepoint>0B96-0B98</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B99-0B9A</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER NGA..TAMIL LETTER CA</description>
    </record>
    <record>
      <codepoint>0B9B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B9C</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER JA</description>
    </record>
    <record>
      <codepoint>0B9D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0B9E-0B9F</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER NYA..TAMIL LETTER TTA</description>
    </record>
    <record>
      <codepoint>0BA0-0BA2</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BA3-0BA4</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER NNA..TAMIL LETTER TA</description>
    </record>
    <record>
      <codepoint>0BA5-0BA7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BA8-0BAA</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER NA..TAMIL LETTER PA</description>
    </record>
    <record>
      <codepoint>0BAB-0BAD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BAE-0BB9</codepoint>
      <property>PVALID</property>
      <description>TAMIL LETTER MA..TAMIL LETTER HA</description>
    </record>
    <record>
      <codepoint>0BBA-0BBD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BBE-0BC2</codepoint>
      <property>PVALID</property>
      <description>TAMIL VOWEL SIGN AA..TAMIL VOWEL SIGN UU</description>
    </record>
    <record>
      <codepoint>0BC3-0BC5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BC6-0BC8</codepoint>
      <property>PVALID</property>
      <description>TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0BC9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BCA-0BCD</codepoint>
      <property>PVALID</property>
      <description>TAMIL VOWEL SIGN O..TAMIL SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>0BCE-0BCF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BD0</codepoint>
      <property>PVALID</property>
      <description>TAMIL OM</description>
    </record>
    <record>
      <codepoint>0BD1-0BD6</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BD7</codepoint>
      <property>PVALID</property>
      <description>TAMIL AU LENGTH MARK</description>
    </record>
    <record>
      <codepoint>0BD8-0BE5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0BE6-0BEF</codepoint>
      <property>PVALID</property>
      <description>TAMIL DIGIT ZERO..TAMIL DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0BF0-0BFA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TAMIL NUMBER TEN..TAMIL NUMBER SIGN</description>
    </record>
    <record>
      <codepoint>0BFB-0C00</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C01-0C03</codepoint>
      <property>PVALID</property>
      <description>TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0C04</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C05-0C0C</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER A..TELUGU LETTER VOCALIC L</description>
    </record>
    <record>
      <codepoint>0C0D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C0E-0C10</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER E..TELUGU LETTER AI</description>
    </record>
    <record>
      <codepoint>0C11</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C12-0C28</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER O..TELUGU LETTER NA</description>
    </record>
    <record>
      <codepoint>0C29</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C2A-0C33</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER PA..TELUGU LETTER LLA</description>
    </record>
    <record>
      <codepoint>0C34</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C35-0C39</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER VA..TELUGU LETTER HA</description>
    </record>
    <record>
      <codepoint>0C3A-0C3C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C3D-0C44</codepoint>
      <property>PVALID</property>
      <description>TELUGU SIGN AVAGRAHA..TELUGU VOWEL SIGN VOCALIC RR</description>
    </record>
    <record>
      <codepoint>0C45</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C46-0C48</codepoint>
      <property>PVALID</property>
      <description>TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0C49</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C4A-0C4D</codepoint>
      <property>PVALID</property>
      <description>TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>0C4E-0C54</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C55-0C56</codepoint>
      <property>PVALID</property>
      <description>TELUGU LENGTH MARK..TELUGU AI LENGTH MARK</description>
    </record>
    <record>
      <codepoint>0C57</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C58-0C59</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER TSA..TELUGU LETTER DZA</description>
    </record>
    <record>
      <codepoint>0C5A-0C5F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C60-0C63</codepoint>
      <property>PVALID</property>
      <description>TELUGU LETTER VOCALIC RR..TELUGU VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0C64-0C65</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C66-0C6F</codepoint>
      <property>PVALID</property>
      <description>TELUGU DIGIT ZERO..TELUGU DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0C70-0C77</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C78-0C7F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TELUGU FRACTION DIGIT ZERO FOR ODD POWERS OF FOUR..TELUGU SIGN TUUMU</description>
    </record>
    <record>
      <codepoint>0C80-0C81</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C82-0C83</codepoint>
      <property>PVALID</property>
      <description>KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0C84</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C85-0C8C</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER A..KANNADA LETTER VOCALIC L</description>
    </record>
    <record>
      <codepoint>0C8D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C8E-0C90</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER E..KANNADA LETTER AI</description>
    </record>
    <record>
      <codepoint>0C91</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0C92-0CA8</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER O..KANNADA LETTER NA</description>
    </record>
    <record>
      <codepoint>0CA9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CAA-0CB3</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER PA..KANNADA LETTER LLA</description>
    </record>
    <record>
      <codepoint>0CB4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CB5-0CB9</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER VA..KANNADA LETTER HA</description>
    </record>
    <record>
      <codepoint>0CBA-0CBB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CBC-0CC4</codepoint>
      <property>PVALID</property>
      <description>KANNADA SIGN NUKTA..KANNADA VOWEL SIGN VOCALIC RR</description>
    </record>
    <record>
      <codepoint>0CC5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CC6-0CC8</codepoint>
      <property>PVALID</property>
      <description>KANNADA VOWEL SIGN E..KANNADA VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0CC9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CCA-0CCD</codepoint>
      <property>PVALID</property>
      <description>KANNADA VOWEL SIGN O..KANNADA SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>0CCE-0CD4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CD5-0CD6</codepoint>
      <property>PVALID</property>
      <description>KANNADA LENGTH MARK..KANNADA AI LENGTH MARK</description>
    </record>
    <record>
      <codepoint>0CD7-0CDD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CDE</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER FA</description>
    </record>
    <record>
      <codepoint>0CDF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CE0-0CE3</codepoint>
      <property>PVALID</property>
      <description>KANNADA LETTER VOCALIC RR..KANNADA VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0CE4-0CE5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CE6-0CEF</codepoint>
      <property>PVALID</property>
      <description>KANNADA DIGIT ZERO..KANNADA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0CF0</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0CF1-0CF2</codepoint>
      <property>PVALID</property>
      <description>KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA</description>
    </record>
    <record>
      <codepoint>0CF3-0D01</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D02-0D03</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA</description>
    </record>
    <record>
      <codepoint>0D04</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D05-0D0C</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM LETTER A..MALAYALAM LETTER VOCALIC L</description>
    </record>
    <record>
      <codepoint>0D0D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D0E-0D10</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM LETTER E..MALAYALAM LETTER AI</description>
    </record>
    <record>
      <codepoint>0D11</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D12-0D3A</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM LETTER O..MALAYALAM LETTER TTTA</description>
    </record>
    <record>
      <codepoint>0D3B-0D3C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D3D-0D44</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM SIGN AVAGRAHA..MALAYALAM VOWEL SIGN VOCALIC RR</description>
    </record>
    <record>
      <codepoint>0D45</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D46-0D48</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0D49</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D4A-0D4E</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM VOWEL SIGN O..MALAYALAM LETTER DOT REPH</description>
    </record>
    <record>
      <codepoint>0D4F-0D56</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D57</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM AU LENGTH MARK</description>
    </record>
    <record>
      <codepoint>0D58-0D5F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D60-0D63</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM LETTER VOCALIC RR..MALAYALAM VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0D64-0D65</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D66-0D6F</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM DIGIT ZERO..MALAYALAM DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0D70-0D75</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MALAYALAM NUMBER TEN..MALAYALAM FRACTION THREE QUARTERS</description>
    </record>
    <record>
      <codepoint>0D76-0D78</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D79</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MALAYALAM DATE MARK</description>
    </record>
    <record>
      <codepoint>0D7A-0D7F</codepoint>
      <property>PVALID</property>
      <description>MALAYALAM LETTER CHILLU NN..MALAYALAM LETTER CHILLU K</description>
    </record>
    <record>
      <codepoint>0D80-0D81</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D82-0D83</codepoint>
      <property>PVALID</property>
      <description>SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA</description>
    </record>
    <record>
      <codepoint>0D84</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D85-0D96</codepoint>
      <property>PVALID</property>
      <description>SINHALA LETTER AYANNA..SINHALA LETTER AUYANNA</description>
    </record>
    <record>
      <codepoint>0D97-0D99</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0D9A-0DB1</codepoint>
      <property>PVALID</property>
      <description>SINHALA LETTER ALPAPRAANA KAYANNA..SINHALA LETTER DANTAJA NAYANNA</description>
    </record>
    <record>
      <codepoint>0DB2</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DB3-0DBB</codepoint>
      <property>PVALID</property>
      <description>SINHALA LETTER SANYAKA DAYANNA..SINHALA LETTER RAYANNA</description>
    </record>
    <record>
      <codepoint>0DBC</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DBD</codepoint>
      <property>PVALID</property>
      <description>SINHALA LETTER DANTAJA LAYANNA</description>
    </record>
    <record>
      <codepoint>0DBE-0DBF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DC0-0DC6</codepoint>
      <property>PVALID</property>
      <description>SINHALA LETTER VAYANNA..SINHALA LETTER FAYANNA</description>
    </record>
    <record>
      <codepoint>0DC7-0DC9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DCA</codepoint>
      <property>PVALID</property>
      <description>SINHALA SIGN AL-LAKUNA</description>
    </record>
    <record>
      <codepoint>0DCB-0DCE</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DCF-0DD4</codepoint>
      <property>PVALID</property>
      <description>SINHALA VOWEL SIGN AELA-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA</description>
    </record>
    <record>
      <codepoint>0DD5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DD6</codepoint>
      <property>PVALID</property>
      <description>SINHALA VOWEL SIGN DIGA PAA-PILLA</description>
    </record>
    <record>
      <codepoint>0DD7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DD8-0DDF</codepoint>
      <property>PVALID</property>
      <description>SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN GAYANUKITTA</description>
    </record>
    <record>
      <codepoint>0DE0-0DF1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0DF2-0DF3</codepoint>
      <property>PVALID</property>
      <description>SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA</description>
    </record>
    <record>
      <codepoint>0DF4</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SINHALA PUNCTUATION KUNDDALIYA</description>
    </record>
    <record>
      <codepoint>0DF5-0E00</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E01-0E32</codepoint>
      <property>PVALID</property>
      <description>THAI CHARACTER KO KAI..THAI CHARACTER SARA AA</description>
    </record>
    <record>
      <codepoint>0E33</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>THAI CHARACTER SARA AM</description>
    </record>
    <record>
      <codepoint>0E34-0E3A</codepoint>
      <property>PVALID</property>
      <description>THAI CHARACTER SARA I..THAI CHARACTER PHINTHU</description>
    </record>
    <record>
      <codepoint>0E3B-0E3E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E3F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>THAI CURRENCY SYMBOL BAHT</description>
    </record>
    <record>
      <codepoint>0E40-0E4E</codepoint>
      <property>PVALID</property>
      <description>THAI CHARACTER SARA E..THAI CHARACTER YAMAKKAN</description>
    </record>
    <record>
      <codepoint>0E4F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>THAI CHARACTER FONGMAN</description>
    </record>
    <record>
      <codepoint>0E50-0E59</codepoint>
      <property>PVALID</property>
      <description>THAI DIGIT ZERO..THAI DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0E5A-0E5B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>THAI CHARACTER ANGKHANKHU..THAI CHARACTER KHOMUT</description>
    </record>
    <record>
      <codepoint>0E5C-0E80</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E81-0E82</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER KO..LAO LETTER KHO SUNG</description>
    </record>
    <record>
      <codepoint>0E83</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E84</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER KHO TAM</description>
    </record>
    <record>
      <codepoint>0E85-0E86</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E87-0E88</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER NGO..LAO LETTER CO</description>
    </record>
    <record>
      <codepoint>0E89</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E8A</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER SO TAM</description>
    </record>
    <record>
      <codepoint>0E8B-0E8C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E8D</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER NYO</description>
    </record>
    <record>
      <codepoint>0E8E-0E93</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E94-0E97</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER DO..LAO LETTER THO TAM</description>
    </record>
    <record>
      <codepoint>0E98</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0E99-0E9F</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER NO..LAO LETTER FO SUNG</description>
    </record>
    <record>
      <codepoint>0EA0</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EA1-0EA3</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER MO..LAO LETTER LO LING</description>
    </record>
    <record>
      <codepoint>0EA4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EA5</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER LO LOOT</description>
    </record>
    <record>
      <codepoint>0EA6</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EA7</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER WO</description>
    </record>
    <record>
      <codepoint>0EA8-0EA9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EAA-0EAB</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER SO SUNG..LAO LETTER HO SUNG</description>
    </record>
    <record>
      <codepoint>0EAC</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EAD-0EB2</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER O..LAO VOWEL SIGN AA</description>
    </record>
    <record>
      <codepoint>0EB3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LAO VOWEL SIGN AM</description>
    </record>
    <record>
      <codepoint>0EB4-0EB9</codepoint>
      <property>PVALID</property>
      <description>LAO VOWEL SIGN I..LAO VOWEL SIGN UU</description>
    </record>
    <record>
      <codepoint>0EBA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EBB-0EBD</codepoint>
      <property>PVALID</property>
      <description>LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN NYO</description>
    </record>
    <record>
      <codepoint>0EBE-0EBF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EC0-0EC4</codepoint>
      <property>PVALID</property>
      <description>LAO VOWEL SIGN E..LAO VOWEL SIGN AI</description>
    </record>
    <record>
      <codepoint>0EC5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EC6</codepoint>
      <property>PVALID</property>
      <description>LAO KO LA</description>
    </record>
    <record>
      <codepoint>0EC7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EC8-0ECD</codepoint>
      <property>PVALID</property>
      <description>LAO TONE MAI EK..LAO NIGGAHITA</description>
    </record>
    <record>
      <codepoint>0ECE-0ECF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0ED0-0ED9</codepoint>
      <property>PVALID</property>
      <description>LAO DIGIT ZERO..LAO DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0EDA-0EDB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0EDC-0EDD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LAO HO NO..LAO HO MO</description>
    </record>
    <record>
      <codepoint>0EDE-0EDF</codepoint>
      <property>PVALID</property>
      <description>LAO LETTER KHMU GO..LAO LETTER KHMU NYO</description>
    </record>
    <record>
      <codepoint>0EE0-0EFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0F00</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SYLLABLE OM</description>
    </record>
    <record>
      <codepoint>0F01-0F0A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN MARK GTER YIG MGO TRUNCATED A..TIBETAN MARK BKA- SHOG YIG MGO</description>
    </record>
    <record>
      <codepoint>0F0B</codepoint>
      <property>PVALID</property>
      <description>TIBETAN MARK INTERSYLLABIC TSHEG</description>
    </record>
    <record>
      <codepoint>0F0C-0F17</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN MARK DELIMITER TSHEG BSTAR..TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS</description>
    </record>
    <record>
      <codepoint>0F18-0F19</codepoint>
      <property>PVALID</property>
      <description>TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS</description>
    </record>
    <record>
      <codepoint>0F1A-0F1F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SIGN RDEL DKAR GCIG..TIBETAN SIGN RDEL DKAR RDEL NAG</description>
    </record>
    <record>
      <codepoint>0F20-0F29</codepoint>
      <property>PVALID</property>
      <description>TIBETAN DIGIT ZERO..TIBETAN DIGIT NINE</description>
    </record>
    <record>
      <codepoint>0F2A-0F34</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN DIGIT HALF ONE..TIBETAN MARK BSDUS RTAGS</description>
    </record>
    <record>
      <codepoint>0F35</codepoint>
      <property>PVALID</property>
      <description>TIBETAN MARK NGAS BZUNG NYI ZLA</description>
    </record>
    <record>
      <codepoint>0F36</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN</description>
    </record>
    <record>
      <codepoint>0F37</codepoint>
      <property>PVALID</property>
      <description>TIBETAN MARK NGAS BZUNG SGOR RTAGS</description>
    </record>
    <record>
      <codepoint>0F38</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN MARK CHE MGO</description>
    </record>
    <record>
      <codepoint>0F39</codepoint>
      <property>PVALID</property>
      <description>TIBETAN MARK TSA -PHRU</description>
    </record>
    <record>
      <codepoint>0F3A-0F3D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN MARK GUG RTAGS GYON..TIBETAN MARK ANG KHANG GYAS</description>
    </record>
    <record>
      <codepoint>0F3E-0F42</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SIGN YAR TSHES..TIBETAN LETTER GA</description>
    </record>
    <record>
      <codepoint>0F43</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN LETTER GHA</description>
    </record>
    <record>
      <codepoint>0F44-0F47</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER NGA..TIBETAN LETTER JA</description>
    </record>
    <record>
      <codepoint>0F48</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0F49-0F4C</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER NYA..TIBETAN LETTER DDA</description>
    </record>
    <record>
      <codepoint>0F4D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN LETTER DDHA</description>
    </record>
    <record>
      <codepoint>0F4E-0F51</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER NNA..TIBETAN LETTER DA</description>
    </record>
    <record>
      <codepoint>0F52</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN LETTER DHA</description>
    </record>
    <record>
      <codepoint>0F53-0F56</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER NA..TIBETAN LETTER BA</description>
    </record>
    <record>
      <codepoint>0F57</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN LETTER BHA</description>
    </record>
    <record>
      <codepoint>0F58-0F5B</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER MA..TIBETAN LETTER DZA</description>
    </record>
    <record>
      <codepoint>0F5C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN LETTER DZHA</description>
    </record>
    <record>
      <codepoint>0F5D-0F68</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER WA..TIBETAN LETTER A</description>
    </record>
    <record>
      <codepoint>0F69</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN LETTER KSSA</description>
    </record>
    <record>
      <codepoint>0F6A-0F6C</codepoint>
      <property>PVALID</property>
      <description>TIBETAN LETTER FIXED-FORM RA..TIBETAN LETTER RRA</description>
    </record>
    <record>
      <codepoint>0F6D-0F70</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0F71-0F72</codepoint>
      <property>PVALID</property>
      <description>TIBETAN VOWEL SIGN AA..TIBETAN VOWEL SIGN I</description>
    </record>
    <record>
      <codepoint>0F73</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN VOWEL SIGN II</description>
    </record>
    <record>
      <codepoint>0F74</codepoint>
      <property>PVALID</property>
      <description>TIBETAN VOWEL SIGN U</description>
    </record>
    <record>
      <codepoint>0F75-0F79</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN VOWEL SIGN UU..TIBETAN VOWEL SIGN VOCALIC LL</description>
    </record>
    <record>
      <codepoint>0F7A-0F80</codepoint>
      <property>PVALID</property>
      <description>TIBETAN VOWEL SIGN E..TIBETAN VOWEL SIGN REVERSED I</description>
    </record>
    <record>
      <codepoint>0F81</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN VOWEL SIGN REVERSED II</description>
    </record>
    <record>
      <codepoint>0F82-0F84</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SIGN NYI ZLA NAA DA..TIBETAN MARK HALANTA</description>
    </record>
    <record>
      <codepoint>0F85</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN MARK PALUTA</description>
    </record>
    <record>
      <codepoint>0F86-0F92</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SIGN LCI RTAGS..TIBETAN SUBJOINED LETTER GA</description>
    </record>
    <record>
      <codepoint>0F93</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SUBJOINED LETTER GHA</description>
    </record>
    <record>
      <codepoint>0F94-0F97</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER NGA..TIBETAN SUBJOINED LETTER JA</description>
    </record>
    <record>
      <codepoint>0F98</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0F99-0F9C</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER DDA</description>
    </record>
    <record>
      <codepoint>0F9D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SUBJOINED LETTER DDHA</description>
    </record>
    <record>
      <codepoint>0F9E-0FA1</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER NNA..TIBETAN SUBJOINED LETTER DA</description>
    </record>
    <record>
      <codepoint>0FA2</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SUBJOINED LETTER DHA</description>
    </record>
    <record>
      <codepoint>0FA3-0FA6</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER NA..TIBETAN SUBJOINED LETTER BA</description>
    </record>
    <record>
      <codepoint>0FA7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SUBJOINED LETTER BHA</description>
    </record>
    <record>
      <codepoint>0FA8-0FAB</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER MA..TIBETAN SUBJOINED LETTER DZA</description>
    </record>
    <record>
      <codepoint>0FAC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SUBJOINED LETTER DZHA</description>
    </record>
    <record>
      <codepoint>0FAD-0FB8</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER WA..TIBETAN SUBJOINED LETTER A</description>
    </record>
    <record>
      <codepoint>0FB9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SUBJOINED LETTER KSSA</description>
    </record>
    <record>
      <codepoint>0FBA-0FBC</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SUBJOINED LETTER FIXED-FORM WA..TIBETAN SUBJOINED LETTER FIXED-FORM RA</description>
    </record>
    <record>
      <codepoint>0FBD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0FBE-0FC5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN KU RU KHA..TIBETAN SYMBOL RDO RJE</description>
    </record>
    <record>
      <codepoint>0FC6</codepoint>
      <property>PVALID</property>
      <description>TIBETAN SYMBOL PADMA GDAN</description>
    </record>
    <record>
      <codepoint>0FC7-0FCC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SYMBOL RDO RJE RGYA GRAM..TIBETAN SYMBOL NOR BU BZHI -KHYIL</description>
    </record>
    <record>
      <codepoint>0FCD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>0FCE-0FDA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIBETAN SIGN RDEL NAG RDEL DKAR..TIBETAN MARK TRAILING MCHAN RTAGS</description>
    </record>
    <record>
      <codepoint>0FDB-0FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1000-1049</codepoint>
      <property>PVALID</property>
      <description>MYANMAR LETTER KA..MYANMAR DIGIT NINE</description>
    </record>
    <record>
      <codepoint>104A-104F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MYANMAR SIGN LITTLE SECTION..MYANMAR SYMBOL GENITIVE</description>
    </record>
    <record>
      <codepoint>1050-109D</codepoint>
      <property>PVALID</property>
      <description>MYANMAR LETTER SHA..MYANMAR VOWEL SIGN AITON AI</description>
    </record>
    <record>
      <codepoint>109E-109F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MYANMAR SYMBOL SHAN ONE..MYANMAR SYMBOL SHAN EXCLAMATION</description>
    </record>
    <record>
      <codepoint>10A0-10C5</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN CAPITAL LETTER AN..GEORGIAN CAPITAL LETTER HOE</description>
    </record>
    <record>
      <codepoint>10C6</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10C7</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN CAPITAL LETTER YN</description>
    </record>
    <record>
      <codepoint>10C8-10CC</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10CD</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN CAPITAL LETTER AEN</description>
    </record>
    <record>
      <codepoint>10CE-10CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10D0-10FA</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN LETTER AN..GEORGIAN LETTER AIN</description>
    </record>
    <record>
      <codepoint>10FB-10FC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GEORGIAN PARAGRAPH SEPARATOR..MODIFIER LETTER GEORGIAN NAR</description>
    </record>
    <record>
      <codepoint>10FD-10FF</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN</description>
    </record>
    <record>
      <codepoint>1100-11FF</codepoint>
      <property>DISALLOWED</property>
      <description>HANGUL CHOSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN</description>
    </record>
    <record>
      <codepoint>1200-1248</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE HA..ETHIOPIC SYLLABLE QWA</description>
    </record>
    <record>
      <codepoint>1249</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>124A-124D</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE QWI..ETHIOPIC SYLLABLE QWE</description>
    </record>
    <record>
      <codepoint>124E-124F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1250-1256</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE QHA..ETHIOPIC SYLLABLE QHO</description>
    </record>
    <record>
      <codepoint>1257</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1258</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE QHWA</description>
    </record>
    <record>
      <codepoint>1259</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>125A-125D</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE QHWI..ETHIOPIC SYLLABLE QHWE</description>
    </record>
    <record>
      <codepoint>125E-125F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1260-1288</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE BA..ETHIOPIC SYLLABLE XWA</description>
    </record>
    <record>
      <codepoint>1289</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>128A-128D</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE XWI..ETHIOPIC SYLLABLE XWE</description>
    </record>
    <record>
      <codepoint>128E-128F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1290-12B0</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE NA..ETHIOPIC SYLLABLE KWA</description>
    </record>
    <record>
      <codepoint>12B1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12B2-12B5</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE KWI..ETHIOPIC SYLLABLE KWE</description>
    </record>
    <record>
      <codepoint>12B6-12B7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12B8-12BE</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE KXA..ETHIOPIC SYLLABLE KXO</description>
    </record>
    <record>
      <codepoint>12BF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12C0</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE KXWA</description>
    </record>
    <record>
      <codepoint>12C1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12C2-12C5</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE KXWI..ETHIOPIC SYLLABLE KXWE</description>
    </record>
    <record>
      <codepoint>12C6-12C7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12C8-12D6</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE WA..ETHIOPIC SYLLABLE PHARYNGEAL O</description>
    </record>
    <record>
      <codepoint>12D7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12D8-1310</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE ZA..ETHIOPIC SYLLABLE GWA</description>
    </record>
    <record>
      <codepoint>1311</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1312-1315</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE GWI..ETHIOPIC SYLLABLE GWE</description>
    </record>
    <record>
      <codepoint>1316-1317</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1318-135A</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE GGA..ETHIOPIC SYLLABLE FYA</description>
    </record>
    <record>
      <codepoint>135B-135C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>135D-135F</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK</description>
    </record>
    <record>
      <codepoint>1360-137C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ETHIOPIC SECTION MARK..ETHIOPIC NUMBER TEN THOUSAND</description>
    </record>
    <record>
      <codepoint>137D-137F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1380-138F</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE SEBATBEIT MWA..ETHIOPIC SYLLABLE PWE</description>
    </record>
    <record>
      <codepoint>1390-1399</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ETHIOPIC TONAL MARK YIZET..ETHIOPIC TONAL MARK KURT</description>
    </record>
    <record>
      <codepoint>139A-139F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>13A0-13F4</codepoint>
      <property>PVALID</property>
      <description>CHEROKEE LETTER A..CHEROKEE LETTER YV</description>
    </record>
    <record>
      <codepoint>13F5-13FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1400</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CANADIAN SYLLABICS HYPHEN</description>
    </record>
    <record>
      <codepoint>1401-166C</codepoint>
      <property>PVALID</property>
      <description>CANADIAN SYLLABICS E..CANADIAN SYLLABICS CARRIER TTSA</description>
    </record>
    <record>
      <codepoint>166D-166E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CANADIAN SYLLABICS CHI SIGN..CANADIAN SYLLABICS FULL STOP</description>
    </record>
    <record>
      <codepoint>166F-167F</codepoint>
      <property>PVALID</property>
      <description>CANADIAN SYLLABICS QAI..CANADIAN SYLLABICS BLACKFOOT W</description>
    </record>
    <record>
      <codepoint>1680</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OGHAM SPACE MARK</description>
    </record>
    <record>
      <codepoint>1681-169A</codepoint>
      <property>PVALID</property>
      <description>OGHAM LETTER BEITH..OGHAM LETTER PEITH</description>
    </record>
    <record>
      <codepoint>169B-169C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OGHAM FEATHER MARK..OGHAM REVERSED FEATHER MARK</description>
    </record>
    <record>
      <codepoint>169D-169F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>16A0-16EA</codepoint>
      <property>PVALID</property>
      <description>RUNIC LETTER FEHU FEOH FE F..RUNIC LETTER X</description>
    </record>
    <record>
      <codepoint>16EB-16F0</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>RUNIC SINGLE PUNCTUATION..RUNIC BELGTHOR SYMBOL</description>
    </record>
    <record>
      <codepoint>16F1-16FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1700-170C</codepoint>
      <property>PVALID</property>
      <description>TAGALOG LETTER A..TAGALOG LETTER YA</description>
    </record>
    <record>
      <codepoint>170D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>170E-1714</codepoint>
      <property>PVALID</property>
      <description>TAGALOG LETTER LA..TAGALOG SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>1715-171F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1720-1734</codepoint>
      <property>PVALID</property>
      <description>HANUNOO LETTER A..HANUNOO SIGN PAMUDPOD</description>
    </record>
    <record>
      <codepoint>1735-1736</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION</description>
    </record>
    <record>
      <codepoint>1737-173F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1740-1753</codepoint>
      <property>PVALID</property>
      <description>BUHID LETTER A..BUHID VOWEL SIGN U</description>
    </record>
    <record>
      <codepoint>1754-175F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1760-176C</codepoint>
      <property>PVALID</property>
      <description>TAGBANWA LETTER A..TAGBANWA LETTER YA</description>
    </record>
    <record>
      <codepoint>176D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>176E-1770</codepoint>
      <property>PVALID</property>
      <description>TAGBANWA LETTER LA..TAGBANWA LETTER SA</description>
    </record>
    <record>
      <codepoint>1771</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1772-1773</codepoint>
      <property>PVALID</property>
      <description>TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U</description>
    </record>
    <record>
      <codepoint>1774-177F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1780-17B3</codepoint>
      <property>PVALID</property>
      <description>KHMER LETTER KA..KHMER INDEPENDENT VOWEL QAU</description>
    </record>
    <record>
      <codepoint>17B4-17B5</codepoint>
      <property>DISALLOWED</property>
      <description>KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA</description>
    </record>
    <record>
      <codepoint>17B6-17D3</codepoint>
      <property>PVALID</property>
      <description>KHMER VOWEL SIGN AA..KHMER SIGN BATHAMASAT</description>
    </record>
    <record>
      <codepoint>17D4-17D6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KHMER SIGN KHAN..KHMER SIGN CAMNUC PII KUUH</description>
    </record>
    <record>
      <codepoint>17D7</codepoint>
      <property>PVALID</property>
      <description>KHMER SIGN LEK TOO</description>
    </record>
    <record>
      <codepoint>17D8-17DB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KHMER SIGN BEYYAL..KHMER CURRENCY SYMBOL RIEL</description>
    </record>
    <record>
      <codepoint>17DC-17DD</codepoint>
      <property>PVALID</property>
      <description>KHMER SIGN AVAKRAHASANYA..KHMER SIGN ATTHACAN</description>
    </record>
    <record>
      <codepoint>17DE-17DF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>17E0-17E9</codepoint>
      <property>PVALID</property>
      <description>KHMER DIGIT ZERO..KHMER DIGIT NINE</description>
    </record>
    <record>
      <codepoint>17EA-17EF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>17F0-17F9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KHMER SYMBOL LEK ATTAK SON..KHMER SYMBOL LEK ATTAK PRAM-BUON</description>
    </record>
    <record>
      <codepoint>17FA-17FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1800-180A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MONGOLIAN BIRGA..MONGOLIAN NIRUGU</description>
    </record>
    <record>
      <codepoint>180B-180D</codepoint>
      <property>DISALLOWED</property>
      <description>MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE</description>
    </record>
    <record>
      <codepoint>180E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MONGOLIAN VOWEL SEPARATOR</description>
    </record>
    <record>
      <codepoint>180F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1810-1819</codepoint>
      <property>PVALID</property>
      <description>MONGOLIAN DIGIT ZERO..MONGOLIAN DIGIT NINE</description>
    </record>
    <record>
      <codepoint>181A-181F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1820-1877</codepoint>
      <property>PVALID</property>
      <description>MONGOLIAN LETTER A..MONGOLIAN LETTER MANCHU ZHA</description>
    </record>
    <record>
      <codepoint>1878-187F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1880-18AA</codepoint>
      <property>PVALID</property>
      <description>MONGOLIAN LETTER ALI GALI ANUSVARA ONE..MONGOLIAN LETTER MANCHU ALI GALI LHA</description>
    </record>
    <record>
      <codepoint>18AB-18AF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>18B0-18F5</codepoint>
      <property>PVALID</property>
      <description>CANADIAN SYLLABICS OY..CANADIAN SYLLABICS CARRIER DENTAL S</description>
    </record>
    <record>
      <codepoint>18F6-18FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1900-191C</codepoint>
      <property>PVALID</property>
      <description>LIMBU VOWEL-CARRIER LETTER..LIMBU LETTER HA</description>
    </record>
    <record>
      <codepoint>191D-191F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1920-192B</codepoint>
      <property>PVALID</property>
      <description>LIMBU VOWEL SIGN A..LIMBU SUBJOINED LETTER WA</description>
    </record>
    <record>
      <codepoint>192C-192F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1930-193B</codepoint>
      <property>PVALID</property>
      <description>LIMBU SMALL LETTER KA..LIMBU SIGN SA-I</description>
    </record>
    <record>
      <codepoint>193C-193F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1940</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LIMBU SIGN LOO</description>
    </record>
    <record>
      <codepoint>1941-1943</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1944-1945</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK</description>
    </record>
    <record>
      <codepoint>1946-196D</codepoint>
      <property>PVALID</property>
      <description>LIMBU DIGIT ZERO..TAI LE LETTER AI</description>
    </record>
    <record>
      <codepoint>196E-196F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1970-1974</codepoint>
      <property>PVALID</property>
      <description>TAI LE LETTER TONE-2..TAI LE LETTER TONE-6</description>
    </record>
    <record>
      <codepoint>1975-197F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1980-19AB</codepoint>
      <property>PVALID</property>
      <description>NEW TAI LUE LETTER HIGH QA..NEW TAI LUE LETTER LOW SUA</description>
    </record>
    <record>
      <codepoint>19AC-19AF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>19B0-19C9</codepoint>
      <property>PVALID</property>
      <description>NEW TAI LUE VOWEL SIGN VOWEL SHORTENER..NEW TAI LUE TONE MARK-2</description>
    </record>
    <record>
      <codepoint>19CA-19CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>19D0-19D9</codepoint>
      <property>PVALID</property>
      <description>NEW TAI LUE DIGIT ZERO..NEW TAI LUE DIGIT NINE</description>
    </record>
    <record>
      <codepoint>19DA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NEW TAI LUE THAM DIGIT ONE</description>
    </record>
    <record>
      <codepoint>19DB-19DD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>19DE-19FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NEW TAI LUE SIGN LAE..KHMER SYMBOL DAP-PRAM ROC</description>
    </record>
    <record>
      <codepoint>1A00-1A1B</codepoint>
      <property>PVALID</property>
      <description>BUGINESE LETTER KA..BUGINESE VOWEL SIGN AE</description>
    </record>
    <record>
      <codepoint>1A1C-1A1D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1A1E-1A1F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BUGINESE PALLAWA..BUGINESE END OF SECTION</description>
    </record>
    <record>
      <codepoint>1A20-1A5E</codepoint>
      <property>PVALID</property>
      <description>TAI THAM LETTER HIGH KA..TAI THAM CONSONANT SIGN SA</description>
    </record>
    <record>
      <codepoint>1A5F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1A60-1A7C</codepoint>
      <property>PVALID</property>
      <description>TAI THAM SIGN SAKOT..TAI THAM SIGN KHUEN-LUE KARAN</description>
    </record>
    <record>
      <codepoint>1A7D-1A7E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1A7F-1A89</codepoint>
      <property>PVALID</property>
      <description>TAI THAM COMBINING CRYPTOGRAMMIC DOT..TAI THAM HORA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>1A8A-1A8F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1A90-1A99</codepoint>
      <property>PVALID</property>
      <description>TAI THAM THAM DIGIT ZERO..TAI THAM THAM DIGIT NINE</description>
    </record>
    <record>
      <codepoint>1A9A-1A9F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1AA0-1AA6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TAI THAM SIGN WIANG..TAI THAM SIGN REVERSED ROTATED RANA</description>
    </record>
    <record>
      <codepoint>1AA7</codepoint>
      <property>PVALID</property>
      <description>TAI THAM SIGN MAI YAMOK</description>
    </record>
    <record>
      <codepoint>1AA8-1AAD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TAI THAM SIGN KAAN..TAI THAM SIGN CAANG</description>
    </record>
    <record>
      <codepoint>1AAE-1AFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1B00-1B4B</codepoint>
      <property>PVALID</property>
      <description>BALINESE SIGN ULU RICEM..BALINESE LETTER ASYURA SASAK</description>
    </record>
    <record>
      <codepoint>1B4C-1B4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1B50-1B59</codepoint>
      <property>PVALID</property>
      <description>BALINESE DIGIT ZERO..BALINESE DIGIT NINE</description>
    </record>
    <record>
      <codepoint>1B5A-1B6A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BALINESE PANTI..BALINESE MUSICAL SYMBOL DANG GEDE</description>
    </record>
    <record>
      <codepoint>1B6B-1B73</codepoint>
      <property>PVALID</property>
      <description>BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG</description>
    </record>
    <record>
      <codepoint>1B74-1B7C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING</description>
    </record>
    <record>
      <codepoint>1B7D-1B7F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1B80-1BF3</codepoint>
      <property>PVALID</property>
      <description>SUNDANESE SIGN PANYECEK..BATAK PANONGONAN</description>
    </record>
    <record>
      <codepoint>1BF4-1BFB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1BFC-1BFF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BATAK SYMBOL BINDU NA METEK..BATAK SYMBOL BINDU PANGOLAT</description>
    </record>
    <record>
      <codepoint>1C00-1C37</codepoint>
      <property>PVALID</property>
      <description>LEPCHA LETTER KA..LEPCHA SIGN NUKTA</description>
    </record>
    <record>
      <codepoint>1C38-1C3A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1C3B-1C3F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION TSHOOK</description>
    </record>
    <record>
      <codepoint>1C40-1C49</codepoint>
      <property>PVALID</property>
      <description>LEPCHA DIGIT ZERO..LEPCHA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>1C4A-1C4C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1C4D-1C7D</codepoint>
      <property>PVALID</property>
      <description>LEPCHA LETTER TTA..OL CHIKI AHAD</description>
    </record>
    <record>
      <codepoint>1C7E-1C7F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD</description>
    </record>
    <record>
      <codepoint>1C80-1CBF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1CC0-1CC7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA</description>
    </record>
    <record>
      <codepoint>1CC8-1CCF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1CD0-1CD2</codepoint>
      <property>PVALID</property>
      <description>VEDIC TONE KARSHANA..VEDIC TONE PRENKHA</description>
    </record>
    <record>
      <codepoint>1CD3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>VEDIC SIGN NIHSHVASA</description>
    </record>
    <record>
      <codepoint>1CD4-1CF6</codepoint>
      <property>PVALID</property>
      <description>VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC SIGN UPADHMANIYA</description>
    </record>
    <record>
      <codepoint>1CF7-1CFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D00-1D2B</codepoint>
      <property>PVALID</property>
      <description>LATIN LETTER SMALL CAPITAL A..CYRILLIC LETTER SMALL CAPITAL EL</description>
    </record>
    <record>
      <codepoint>1D2C-1D2E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CAPITAL A..MODIFIER LETTER CAPITAL B</description>
    </record>
    <record>
      <codepoint>1D2F</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER CAPITAL BARRED B</description>
    </record>
    <record>
      <codepoint>1D30-1D3A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CAPITAL D..MODIFIER LETTER CAPITAL N</description>
    </record>
    <record>
      <codepoint>1D3B</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER CAPITAL REVERSED N</description>
    </record>
    <record>
      <codepoint>1D3C-1D4D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CAPITAL O..MODIFIER LETTER SMALL G</description>
    </record>
    <record>
      <codepoint>1D4E</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER SMALL TURNED I</description>
    </record>
    <record>
      <codepoint>1D4F-1D6A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER SMALL K..GREEK SUBSCRIPT SMALL LETTER CHI</description>
    </record>
    <record>
      <codepoint>1D6B-1D77</codepoint>
      <property>PVALID</property>
      <description>LATIN SMALL LETTER UE..LATIN SMALL LETTER TURNED G</description>
    </record>
    <record>
      <codepoint>1D78</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CYRILLIC EN</description>
    </record>
    <record>
      <codepoint>1D79-1D9A</codepoint>
      <property>PVALID</property>
      <description>LATIN SMALL LETTER INSULAR G..LATIN SMALL LETTER EZH WITH RETROFLEX HOOK</description>
    </record>
    <record>
      <codepoint>1D9B-1DBF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL THETA</description>
    </record>
    <record>
      <codepoint>1DC0-1DE6</codepoint>
      <property>PVALID</property>
      <description>COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z</description>
    </record>
    <record>
      <codepoint>1DE7-1DFB</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1DFC-1E99</codepoint>
      <property>PVALID</property>
      <description>COMBINING DOUBLE INVERTED BREVE BELOW..LATIN SMALL LETTER Y WITH RING ABOVE</description>
    </record>
    <record>
      <codepoint>1E9A-1E9B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN SMALL LETTER A WITH RIGHT HALF RING..LATIN SMALL LETTER LONG S WITH DOT ABOVE</description>
    </record>
    <record>
      <codepoint>1E9C-1F15</codepoint>
      <property>PVALID</property>
      <description>LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE..GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA</description>
    </record>
    <record>
      <codepoint>1F16-1F17</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F18-1F1D</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER EPSILON WITH PSILI..GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA</description>
    </record>
    <record>
      <codepoint>1F1E-1F1F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F20-1F45</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ETA WITH PSILI..GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA</description>
    </record>
    <record>
      <codepoint>1F46-1F47</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F48-1F4D</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER OMICRON WITH PSILI..GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA</description>
    </record>
    <record>
      <codepoint>1F4E-1F4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F50-1F57</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER UPSILON WITH PSILI..GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI</description>
    </record>
    <record>
      <codepoint>1F58</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F59</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER UPSILON WITH DASIA</description>
    </record>
    <record>
      <codepoint>1F5A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F5B</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA</description>
    </record>
    <record>
      <codepoint>1F5C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F5D</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA</description>
    </record>
    <record>
      <codepoint>1F5E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F5F-1F70</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI..GREEK SMALL LETTER ALPHA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F71</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER ALPHA WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F72</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER EPSILON WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F73</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER EPSILON WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F74</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ETA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F75</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER ETA WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F76</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER IOTA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F77</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER IOTA WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F78</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER OMICRON WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F79</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER OMICRON WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F7A</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER UPSILON WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F7B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER UPSILON WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F7C</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER OMEGA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1F7D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER OMEGA WITH OXIA</description>
    </record>
    <record>
      <codepoint>1F7E-1F7F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F80-1F87</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI..GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1F88-1F8F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI..GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1F90-1F97</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI..GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1F98-1F9F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI..GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1FA0-1FA7</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI..GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1FA8-1FAF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI..GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1FB0-1FB4</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ALPHA WITH VRACHY..GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1FB5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FB6-1FBA</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ALPHA WITH PERISPOMENI..GREEK CAPITAL LETTER ALPHA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FBB-1FC1</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER ALPHA WITH OXIA..GREEK DIALYTIKA AND PERISPOMENI</description>
    </record>
    <record>
      <codepoint>1FC2-1FC4</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI..GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1FC5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FC6-1FC8</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER ETA WITH PERISPOMENI..GREEK CAPITAL LETTER EPSILON WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FC9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER EPSILON WITH OXIA</description>
    </record>
    <record>
      <codepoint>1FCA</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER ETA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FCB-1FCF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER ETA WITH OXIA..GREEK PSILI AND PERISPOMENI</description>
    </record>
    <record>
      <codepoint>1FD0-1FD2</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER IOTA WITH VRACHY..GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA</description>
    </record>
    <record>
      <codepoint>1FD3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA</description>
    </record>
    <record>
      <codepoint>1FD4-1FD5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FD6-1FDA</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER IOTA WITH PERISPOMENI..GREEK CAPITAL LETTER IOTA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FDB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER IOTA WITH OXIA</description>
    </record>
    <record>
      <codepoint>1FDC</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FDD-1FDF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK DASIA AND VARIA..GREEK DASIA AND PERISPOMENI</description>
    </record>
    <record>
      <codepoint>1FE0-1FE2</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER UPSILON WITH VRACHY..GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA</description>
    </record>
    <record>
      <codepoint>1FE3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA</description>
    </record>
    <record>
      <codepoint>1FE4-1FEA</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER RHO WITH PSILI..GREEK CAPITAL LETTER UPSILON WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FEB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER UPSILON WITH OXIA</description>
    </record>
    <record>
      <codepoint>1FEC</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER RHO WITH DASIA</description>
    </record>
    <record>
      <codepoint>1FED-1FEF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK DIALYTIKA AND VARIA..GREEK VARIA</description>
    </record>
    <record>
      <codepoint>1FF0-1FF1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FF2-1FF4</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI..GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI</description>
    </record>
    <record>
      <codepoint>1FF5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FF6-1FF8</codepoint>
      <property>PVALID</property>
      <description>GREEK SMALL LETTER OMEGA WITH PERISPOMENI..GREEK CAPITAL LETTER OMICRON WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FF9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER OMICRON WITH OXIA</description>
    </record>
    <record>
      <codepoint>1FFA</codepoint>
      <property>PVALID</property>
      <description>GREEK CAPITAL LETTER OMEGA WITH VARIA</description>
    </record>
    <record>
      <codepoint>1FFB-1FFE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK CAPITAL LETTER OMEGA WITH OXIA..GREEK DASIA</description>
    </record>
    <record>
      <codepoint>1FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2000-200A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>EN QUAD..HAIR SPACE</description>
    </record>
    <record>
      <codepoint>200B</codepoint>
      <property>DISALLOWED</property>
      <description>ZERO WIDTH SPACE</description>
    </record>
    <record>
      <codepoint>200C-200D</codepoint>
      <property>CONTEXTJ</property>
      <description>ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER</description>
    </record>
    <record>
      <codepoint>200E-200F</codepoint>
      <property>DISALLOWED</property>
      <description>LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK</description>
    </record>
    <record>
      <codepoint>2010-2027</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HYPHEN..HYPHENATION POINT</description>
    </record>
    <record>
      <codepoint>2028-202E</codepoint>
      <property>DISALLOWED</property>
      <description>LINE SEPARATOR..RIGHT-TO-LEFT OVERRIDE</description>
    </record>
    <record>
      <codepoint>202F-205F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NARROW NO-BREAK SPACE..MEDIUM MATHEMATICAL SPACE</description>
    </record>
    <record>
      <codepoint>2060-2064</codepoint>
      <property>DISALLOWED</property>
      <description>WORD JOINER..INVISIBLE PLUS</description>
    </record>
    <record>
      <codepoint>2065-2069</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>206A-206F</codepoint>
      <property>DISALLOWED</property>
      <description>INHIBIT SYMMETRIC SWAPPING..NOMINAL DIGIT SHAPES</description>
    </record>
    <record>
      <codepoint>2070-2071</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SUPERSCRIPT ZERO..SUPERSCRIPT LATIN SMALL LETTER I</description>
    </record>
    <record>
      <codepoint>2072-2073</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2074-208E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SUPERSCRIPT FOUR..SUBSCRIPT RIGHT PARENTHESIS</description>
    </record>
    <record>
      <codepoint>208F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2090-209C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER T</description>
    </record>
    <record>
      <codepoint>209D-209F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>20A0-20BA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>EURO-CURRENCY SIGN..TURKISH LIRA SIGN</description>
    </record>
    <record>
      <codepoint>20BB-20CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>20D0-20DC</codepoint>
      <property>PVALID</property>
      <description>COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE</description>
    </record>
    <record>
      <codepoint>20DD-20E0</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH</description>
    </record>
    <record>
      <codepoint>20E1</codepoint>
      <property>PVALID</property>
      <description>COMBINING LEFT RIGHT ARROW ABOVE</description>
    </record>
    <record>
      <codepoint>20E2-20E4</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE</description>
    </record>
    <record>
      <codepoint>20E5-20F0</codepoint>
      <property>PVALID</property>
      <description>COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE</description>
    </record>
    <record>
      <codepoint>20F1-20FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2100-2131</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ACCOUNT OF..SCRIPT CAPITAL F</description>
    </record>
    <record>
      <codepoint>2132</codepoint>
      <property>PVALID</property>
      <description>TURNED CAPITAL F</description>
    </record>
    <record>
      <codepoint>2133-214D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SCRIPT CAPITAL M..AKTIESELSKAB</description>
    </record>
    <record>
      <codepoint>214E</codepoint>
      <property>PVALID</property>
      <description>TURNED SMALL F</description>
    </record>
    <record>
      <codepoint>214F-2182</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SYMBOL FOR SAMARITAN SOURCE..ROMAN NUMERAL TEN THOUSAND</description>
    </record>
    <record>
      <codepoint>2183-2184</codepoint>
      <property>PVALID</property>
      <description>ROMAN NUMERAL REVERSED ONE HUNDRED..LATIN SMALL LETTER REVERSED C</description>
    </record>
    <record>
      <codepoint>2185-2189</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ROMAN NUMERAL SIX LATE FORM..VULGAR FRACTION ZERO THIRDS</description>
    </record>
    <record>
      <codepoint>218A-218F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2190-23F3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LEFTWARDS ARROW..HOURGLASS WITH FLOWING SAND</description>
    </record>
    <record>
      <codepoint>23F4-23FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2400-2426</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO</description>
    </record>
    <record>
      <codepoint>2427-243F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2440-244A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OCR HOOK..OCR DOUBLE BACKSLASH</description>
    </record>
    <record>
      <codepoint>244B-245F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2460-26FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CIRCLED DIGIT ONE..WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE</description>
    </record>
    <record>
      <codepoint>2700</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2701-2B4C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>UPPER BLADE SCISSORS..RIGHTWARDS ARROW ABOVE REVERSE TILDE OPERATOR</description>
    </record>
    <record>
      <codepoint>2B4D-2B4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2B50-2B59</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>WHITE MEDIUM STAR..HEAVY CIRCLED SALTIRE</description>
    </record>
    <record>
      <codepoint>2B5A-2BFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2C00-2C2E</codepoint>
      <property>PVALID</property>
      <description>GLAGOLITIC CAPITAL LETTER AZU..GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE</description>
    </record>
    <record>
      <codepoint>2C2F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2C30-2C5E</codepoint>
      <property>PVALID</property>
      <description>GLAGOLITIC SMALL LETTER AZU..GLAGOLITIC SMALL LETTER LATINATE MYSLITE</description>
    </record>
    <record>
      <codepoint>2C5F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2C60-2C7B</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER L WITH DOUBLE BAR..LATIN LETTER SMALL CAPITAL TURNED E</description>
    </record>
    <record>
      <codepoint>2C7C-2C7D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN SUBSCRIPT SMALL LETTER J..MODIFIER LETTER CAPITAL V</description>
    </record>
    <record>
      <codepoint>2C7E-2CE4</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER S WITH SWASH TAIL..COPTIC SYMBOL KAI</description>
    </record>
    <record>
      <codepoint>2CE5-2CEA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COPTIC SYMBOL MI RO..COPTIC SYMBOL SHIMA SIMA</description>
    </record>
    <record>
      <codepoint>2CEB-2CF3</codepoint>
      <property>PVALID</property>
      <description>COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI..COPTIC SMALL LETTER BOHAIRIC KHEI</description>
    </record>
    <record>
      <codepoint>2CF4-2CF8</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2CF9-2CFF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COPTIC OLD NUBIAN FULL STOP..COPTIC MORPHOLOGICAL DIVIDER</description>
    </record>
    <record>
      <codepoint>2D00-2D25</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN SMALL LETTER AN..GEORGIAN SMALL LETTER HOE</description>
    </record>
    <record>
      <codepoint>2D26</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2D27</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN SMALL LETTER YN</description>
    </record>
    <record>
      <codepoint>2D28-2D2C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2D2D</codepoint>
      <property>PVALID</property>
      <description>GEORGIAN SMALL LETTER AEN</description>
    </record>
    <record>
      <codepoint>2D2E-2D2F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2D30-2D67</codepoint>
      <property>PVALID</property>
      <description>TIFINAGH LETTER YA..TIFINAGH LETTER YO</description>
    </record>
    <record>
      <codepoint>2D68-2D6E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2D6F-2D70</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TIFINAGH MODIFIER LETTER LABIALIZATION MARK..TIFINAGH SEPARATOR MARK</description>
    </record>
    <record>
      <codepoint>2D71-2D7E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2D7F-2D96</codepoint>
      <property>PVALID</property>
      <description>TIFINAGH CONSONANT JOINER..ETHIOPIC SYLLABLE GGWE</description>
    </record>
    <record>
      <codepoint>2D97-2D9F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DA0-2DA6</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE SSA..ETHIOPIC SYLLABLE SSO</description>
    </record>
    <record>
      <codepoint>2DA7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DA8-2DAE</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE CCA..ETHIOPIC SYLLABLE CCO</description>
    </record>
    <record>
      <codepoint>2DAF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DB0-2DB6</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE ZZA..ETHIOPIC SYLLABLE ZZO</description>
    </record>
    <record>
      <codepoint>2DB7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DB8-2DBE</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE CCHA..ETHIOPIC SYLLABLE CCHO</description>
    </record>
    <record>
      <codepoint>2DBF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DC0-2DC6</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE QYA..ETHIOPIC SYLLABLE QYO</description>
    </record>
    <record>
      <codepoint>2DC7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DC8-2DCE</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE KYA..ETHIOPIC SYLLABLE KYO</description>
    </record>
    <record>
      <codepoint>2DCF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DD0-2DD6</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE XYA..ETHIOPIC SYLLABLE XYO</description>
    </record>
    <record>
      <codepoint>2DD7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DD8-2DDE</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE GYA..ETHIOPIC SYLLABLE GYO</description>
    </record>
    <record>
      <codepoint>2DDF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2DE0-2DFF</codepoint>
      <property>PVALID</property>
      <description>COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS</description>
    </record>
    <record>
      <codepoint>2E00-2E2E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>RIGHT ANGLE SUBSTITUTION MARKER..REVERSED QUESTION MARK</description>
    </record>
    <record>
      <codepoint>2E2F</codepoint>
      <property>PVALID</property>
      <description>VERTICAL TILDE</description>
    </record>
    <record>
      <codepoint>2E30-2E3B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>RING POINT..THREE-EM DASH</description>
    </record>
    <record>
      <codepoint>2E3C-2E7F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2E80-2E99</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK RADICAL REPEAT..CJK RADICAL RAP</description>
    </record>
    <record>
      <codepoint>2E9A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2E9B-2EF3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK RADICAL CHOKE..CJK RADICAL C-SIMPLIFIED TURTLE</description>
    </record>
    <record>
      <codepoint>2EF4-2EFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2F00-2FD5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KANGXI RADICAL ONE..KANGXI RADICAL FLUTE</description>
    </record>
    <record>
      <codepoint>2FD6-2FEF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2FF0-2FFB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT..IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID</description>
    </record>
    <record>
      <codepoint>2FFC-2FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3000-3004</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>IDEOGRAPHIC SPACE..JAPANESE INDUSTRIAL STANDARD SYMBOL</description>
    </record>
    <record>
      <codepoint>3005-3007</codepoint>
      <property>PVALID</property>
      <description>IDEOGRAPHIC ITERATION MARK..IDEOGRAPHIC NUMBER ZERO</description>
    </record>
    <record>
      <codepoint>3008-3029</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LEFT ANGLE BRACKET..HANGZHOU NUMERAL NINE</description>
    </record>
    <record>
      <codepoint>302A-302D</codepoint>
      <property>PVALID</property>
      <description>IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK</description>
    </record>
    <record>
      <codepoint>302E-302F</codepoint>
      <property>DISALLOWED</property>
      <description>HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK</description>
    </record>
    <record>
      <codepoint>3030</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>WAVY DASH</description>
    </record>
    <record>
      <codepoint>3031-3035</codepoint>
      <property>DISALLOWED</property>
      <description>VERTICAL KANA REPEAT MARK..VERTICAL KANA REPEAT MARK LOWER HALF</description>
    </record>
    <record>
      <codepoint>3036-303A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CIRCLED POSTAL MARK..HANGZHOU NUMERAL THIRTY</description>
    </record>
    <record>
      <codepoint>303B</codepoint>
      <property>DISALLOWED</property>
      <description>VERTICAL IDEOGRAPHIC ITERATION MARK</description>
    </record>
    <record>
      <codepoint>303C</codepoint>
      <property>PVALID</property>
      <description>MASU MARK</description>
    </record>
    <record>
      <codepoint>303D-303F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PART ALTERNATION MARK..IDEOGRAPHIC HALF FILL SPACE</description>
    </record>
    <record>
      <codepoint>3040</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3041-3096</codepoint>
      <property>PVALID</property>
      <description>HIRAGANA LETTER SMALL A..HIRAGANA LETTER SMALL KE</description>
    </record>
    <record>
      <codepoint>3097-3098</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3099-309A</codepoint>
      <property>PVALID</property>
      <description>COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK</description>
    </record>
    <record>
      <codepoint>309B-309C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK</description>
    </record>
    <record>
      <codepoint>309D-309E</codepoint>
      <property>PVALID</property>
      <description>HIRAGANA ITERATION MARK..HIRAGANA VOICED ITERATION MARK</description>
    </record>
    <record>
      <codepoint>309F-30A0</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HIRAGANA DIGRAPH YORI..KATAKANA-HIRAGANA DOUBLE HYPHEN</description>
    </record>
    <record>
      <codepoint>30A1-30FA</codepoint>
      <property>PVALID</property>
      <description>KATAKANA LETTER SMALL A..KATAKANA LETTER VO</description>
    </record>
    <record>
      <codepoint>30FB</codepoint>
      <property>CONTEXTO</property>
      <description>KATAKANA MIDDLE DOT</description>
    </record>
    <record>
      <codepoint>30FC-30FE</codepoint>
      <property>PVALID</property>
      <description>KATAKANA-HIRAGANA PROLONGED SOUND MARK..KATAKANA VOICED ITERATION MARK</description>
    </record>
    <record>
      <codepoint>30FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KATAKANA DIGRAPH KOTO</description>
    </record>
    <record>
      <codepoint>3100-3104</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3105-312D</codepoint>
      <property>PVALID</property>
      <description>BOPOMOFO LETTER B..BOPOMOFO LETTER IH</description>
    </record>
    <record>
      <codepoint>312E-3130</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3131-3163</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HANGUL LETTER KIYEOK..HANGUL LETTER I</description>
    </record>
    <record>
      <codepoint>3164</codepoint>
      <property>DISALLOWED</property>
      <description>HANGUL FILLER</description>
    </record>
    <record>
      <codepoint>3165-318E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HANGUL LETTER SSANGNIEUN..HANGUL LETTER ARAEAE</description>
    </record>
    <record>
      <codepoint>318F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3190-319F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>IDEOGRAPHIC ANNOTATION LINKING MARK..IDEOGRAPHIC ANNOTATION MAN MARK</description>
    </record>
    <record>
      <codepoint>31A0-31BA</codepoint>
      <property>PVALID</property>
      <description>BOPOMOFO LETTER BU..BOPOMOFO LETTER ZY</description>
    </record>
    <record>
      <codepoint>31BB-31BF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>31C0-31E3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK STROKE T..CJK STROKE Q</description>
    </record>
    <record>
      <codepoint>31E4-31EF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>31F0-31FF</codepoint>
      <property>PVALID</property>
      <description>KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO</description>
    </record>
    <record>
      <codepoint>3200-321E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU</description>
    </record>
    <record>
      <codepoint>321F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3220-32FE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PARENTHESIZED IDEOGRAPH ONE..CIRCLED KATAKANA WO</description>
    </record>
    <record>
      <codepoint>32FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3300-33FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SQUARE APAATO..SQUARE GAL</description>
    </record>
    <record>
      <codepoint>3400-4DB5</codepoint>
      <property>PVALID</property>
      <description>&lt;CJK Ideograph Extension A&gt;..&lt;CJK Ideograph Extension A&gt;</description>
    </record>
    <record>
      <codepoint>4DB6-4DBF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>4DC0-4DFF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION</description>
    </record>
    <record>
      <codepoint>4E00-9FCC</codepoint>
      <property>PVALID</property>
      <description>&lt;CJK Ideograph&gt;..&lt;CJK Ideograph&gt;</description>
    </record>
    <record>
      <codepoint>9FCD-9FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A000-A48C</codepoint>
      <property>PVALID</property>
      <description>YI SYLLABLE IT..YI SYLLABLE YYR</description>
    </record>
    <record>
      <codepoint>A48D-A48F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A490-A4C6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>YI RADICAL QOT..YI RADICAL KE</description>
    </record>
    <record>
      <codepoint>A4C7-A4CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A4D0-A4FD</codepoint>
      <property>PVALID</property>
      <description>LISU LETTER BA..LISU LETTER TONE MYA JEU</description>
    </record>
    <record>
      <codepoint>A4FE-A4FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LISU PUNCTUATION COMMA..LISU PUNCTUATION FULL STOP</description>
    </record>
    <record>
      <codepoint>A500-A60C</codepoint>
      <property>PVALID</property>
      <description>VAI SYLLABLE EE..VAI SYLLABLE LENGTHENER</description>
    </record>
    <record>
      <codepoint>A60D-A60F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>VAI COMMA..VAI QUESTION MARK</description>
    </record>
    <record>
      <codepoint>A610-A62B</codepoint>
      <property>PVALID</property>
      <description>VAI SYLLABLE NDOLE FA..VAI SYLLABLE NDOLE DO</description>
    </record>
    <record>
      <codepoint>A62C-A63F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A640-A66F</codepoint>
      <property>PVALID</property>
      <description>CYRILLIC CAPITAL LETTER ZEMLYA..COMBINING CYRILLIC VZMET</description>
    </record>
    <record>
      <codepoint>A670-A673</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COMBINING CYRILLIC TEN MILLIONS SIGN..SLAVONIC ASTERISK</description>
    </record>
    <record>
      <codepoint>A674-A67D</codepoint>
      <property>PVALID</property>
      <description>COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK</description>
    </record>
    <record>
      <codepoint>A67E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CYRILLIC KAVYKA</description>
    </record>
    <record>
      <codepoint>A67F-A697</codepoint>
      <property>PVALID</property>
      <description>CYRILLIC PAYEROK..CYRILLIC SMALL LETTER SHWE</description>
    </record>
    <record>
      <codepoint>A698-A69E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A69F-A6E5</codepoint>
      <property>PVALID</property>
      <description>COMBINING CYRILLIC LETTER IOTIFIED E..BAMUM LETTER KI</description>
    </record>
    <record>
      <codepoint>A6E6-A6EF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BAMUM LETTER MO..BAMUM LETTER KOGHOM</description>
    </record>
    <record>
      <codepoint>A6F0-A6F1</codepoint>
      <property>PVALID</property>
      <description>BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS</description>
    </record>
    <record>
      <codepoint>A6F2-A6F7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BAMUM NJAEMLI..BAMUM QUESTION MARK</description>
    </record>
    <record>
      <codepoint>A6F8-A6FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A700-A716</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CHINESE TONE YIN PING..MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR</description>
    </record>
    <record>
      <codepoint>A717-A71F</codepoint>
      <property>PVALID</property>
      <description>MODIFIER LETTER DOT VERTICAL BAR..MODIFIER LETTER LOW INVERTED EXCLAMATION MARK</description>
    </record>
    <record>
      <codepoint>A720-A721</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER STRESS AND HIGH TONE..MODIFIER LETTER STRESS AND LOW TONE</description>
    </record>
    <record>
      <codepoint>A722-A76F</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF..LATIN SMALL LETTER CON</description>
    </record>
    <record>
      <codepoint>A770</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER US</description>
    </record>
    <record>
      <codepoint>A771-A788</codepoint>
      <property>PVALID</property>
      <description>LATIN SMALL LETTER DUM..MODIFIER LETTER LOW CIRCUMFLEX ACCENT</description>
    </record>
    <record>
      <codepoint>A789-A78A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN</description>
    </record>
    <record>
      <codepoint>A78B-A78E</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT</description>
    </record>
    <record>
      <codepoint>A78F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A790-A793</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER C WITH BAR</description>
    </record>
    <record>
      <codepoint>A794-A79F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A7A0-A7AA</codepoint>
      <property>PVALID</property>
      <description>LATIN CAPITAL LETTER G WITH OBLIQUE STROKE..LATIN CAPITAL LETTER H WITH HOOK</description>
    </record>
    <record>
      <codepoint>A7AB-A7F7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A7F8-A7F9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE</description>
    </record>
    <record>
      <codepoint>A7FA-A827</codepoint>
      <property>PVALID</property>
      <description>LATIN LETTER SMALL CAPITAL TURNED M..SYLOTI NAGRI VOWEL SIGN OO</description>
    </record>
    <record>
      <codepoint>A828-A82B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SYLOTI NAGRI POETRY MARK-1..SYLOTI NAGRI POETRY MARK-4</description>
    </record>
    <record>
      <codepoint>A82C-A82F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A830-A839</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NORTH INDIC FRACTION ONE QUARTER..NORTH INDIC QUANTITY MARK</description>
    </record>
    <record>
      <codepoint>A83A-A83F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A840-A873</codepoint>
      <property>PVALID</property>
      <description>PHAGS-PA LETTER KA..PHAGS-PA LETTER CANDRABINDU</description>
    </record>
    <record>
      <codepoint>A874-A877</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PHAGS-PA SINGLE HEAD MARK..PHAGS-PA MARK DOUBLE SHAD</description>
    </record>
    <record>
      <codepoint>A878-A87F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A880-A8C4</codepoint>
      <property>PVALID</property>
      <description>SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VIRAMA</description>
    </record>
    <record>
      <codepoint>A8C5-A8CD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A8CE-A8CF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SAURASHTRA DANDA..SAURASHTRA DOUBLE DANDA</description>
    </record>
    <record>
      <codepoint>A8D0-A8D9</codepoint>
      <property>PVALID</property>
      <description>SAURASHTRA DIGIT ZERO..SAURASHTRA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>A8DA-A8DF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A8E0-A8F7</codepoint>
      <property>PVALID</property>
      <description>COMBINING DEVANAGARI DIGIT ZERO..DEVANAGARI SIGN CANDRABINDU AVAGRAHA</description>
    </record>
    <record>
      <codepoint>A8F8-A8FA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DEVANAGARI SIGN PUSHPIKA..DEVANAGARI CARET</description>
    </record>
    <record>
      <codepoint>A8FB</codepoint>
      <property>PVALID</property>
      <description>DEVANAGARI HEADSTROKE</description>
    </record>
    <record>
      <codepoint>A8FC-A8FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A900-A92D</codepoint>
      <property>PVALID</property>
      <description>KAYAH LI DIGIT ZERO..KAYAH LI TONE CALYA PLOPHU</description>
    </record>
    <record>
      <codepoint>A92E-A92F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KAYAH LI SIGN CWI..KAYAH LI SIGN SHYA</description>
    </record>
    <record>
      <codepoint>A930-A953</codepoint>
      <property>PVALID</property>
      <description>REJANG LETTER KA..REJANG VIRAMA</description>
    </record>
    <record>
      <codepoint>A954-A95E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A95F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>REJANG SECTION MARK</description>
    </record>
    <record>
      <codepoint>A960-A97C</codepoint>
      <property>DISALLOWED</property>
      <description>HANGUL CHOSEONG TIKEUT-MIEUM..HANGUL CHOSEONG SSANGYEORINHIEUH</description>
    </record>
    <record>
      <codepoint>A97D-A97F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A980-A9C0</codepoint>
      <property>PVALID</property>
      <description>JAVANESE SIGN PANYANGGA..JAVANESE PANGKON</description>
    </record>
    <record>
      <codepoint>A9C1-A9CD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>JAVANESE LEFT RERENGGAN..JAVANESE TURNED PADA PISELEH</description>
    </record>
    <record>
      <codepoint>A9CE</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A9CF-A9D9</codepoint>
      <property>PVALID</property>
      <description>JAVANESE PANGRANGKEP..JAVANESE DIGIT NINE</description>
    </record>
    <record>
      <codepoint>A9DA-A9DD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>A9DE-A9DF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>JAVANESE PADA TIRTA TUMETES..JAVANESE PADA ISEN-ISEN</description>
    </record>
    <record>
      <codepoint>A9E0-A9FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AA00-AA36</codepoint>
      <property>PVALID</property>
      <description>CHAM LETTER A..CHAM CONSONANT SIGN WA</description>
    </record>
    <record>
      <codepoint>AA37-AA3F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AA40-AA4D</codepoint>
      <property>PVALID</property>
      <description>CHAM LETTER FINAL K..CHAM CONSONANT SIGN FINAL H</description>
    </record>
    <record>
      <codepoint>AA4E-AA4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AA50-AA59</codepoint>
      <property>PVALID</property>
      <description>CHAM DIGIT ZERO..CHAM DIGIT NINE</description>
    </record>
    <record>
      <codepoint>AA5A-AA5B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AA5C-AA5F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CHAM PUNCTUATION SPIRAL..CHAM PUNCTUATION TRIPLE DANDA</description>
    </record>
    <record>
      <codepoint>AA60-AA76</codepoint>
      <property>PVALID</property>
      <description>MYANMAR LETTER KHAMTI GA..MYANMAR LOGOGRAM KHAMTI HM</description>
    </record>
    <record>
      <codepoint>AA77-AA79</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MYANMAR SYMBOL AITON EXCLAMATION..MYANMAR SYMBOL AITON TWO</description>
    </record>
    <record>
      <codepoint>AA7A-AA7B</codepoint>
      <property>PVALID</property>
      <description>MYANMAR LETTER AITON RA..MYANMAR SIGN PAO KAREN TONE</description>
    </record>
    <record>
      <codepoint>AA7C-AA7F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AA80-AAC2</codepoint>
      <property>PVALID</property>
      <description>TAI VIET LETTER LOW KO..TAI VIET TONE MAI SONG</description>
    </record>
    <record>
      <codepoint>AAC3-AADA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AADB-AADD</codepoint>
      <property>PVALID</property>
      <description>TAI VIET SYMBOL KON..TAI VIET SYMBOL SAM</description>
    </record>
    <record>
      <codepoint>AADE-AADF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TAI VIET SYMBOL HO HOI..TAI VIET SYMBOL KOI KOI</description>
    </record>
    <record>
      <codepoint>AAE0-AAEF</codepoint>
      <property>PVALID</property>
      <description>MEETEI MAYEK LETTER E..MEETEI MAYEK VOWEL SIGN AAU</description>
    </record>
    <record>
      <codepoint>AAF0-AAF1</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM</description>
    </record>
    <record>
      <codepoint>AAF2-AAF6</codepoint>
      <property>PVALID</property>
      <description>MEETEI MAYEK ANJI..MEETEI MAYEK VIRAMA</description>
    </record>
    <record>
      <codepoint>AAF7-AB00</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AB01-AB06</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE TTHU..ETHIOPIC SYLLABLE TTHO</description>
    </record>
    <record>
      <codepoint>AB07-AB08</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AB09-AB0E</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE DDHU..ETHIOPIC SYLLABLE DDHO</description>
    </record>
    <record>
      <codepoint>AB0F-AB10</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AB11-AB16</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE DZU..ETHIOPIC SYLLABLE DZO</description>
    </record>
    <record>
      <codepoint>AB17-AB1F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AB20-AB26</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE CCHHA..ETHIOPIC SYLLABLE CCHHO</description>
    </record>
    <record>
      <codepoint>AB27</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AB28-AB2E</codepoint>
      <property>PVALID</property>
      <description>ETHIOPIC SYLLABLE BBA..ETHIOPIC SYLLABLE BBO</description>
    </record>
    <record>
      <codepoint>AB2F-ABBF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>ABC0-ABEA</codepoint>
      <property>PVALID</property>
      <description>MEETEI MAYEK LETTER KOK..MEETEI MAYEK VOWEL SIGN NUNG</description>
    </record>
    <record>
      <codepoint>ABEB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MEETEI MAYEK CHEIKHEI</description>
    </record>
    <record>
      <codepoint>ABEC-ABED</codepoint>
      <property>PVALID</property>
      <description>MEETEI MAYEK LUM IYEK..MEETEI MAYEK APUN IYEK</description>
    </record>
    <record>
      <codepoint>ABEE-ABEF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>ABF0-ABF9</codepoint>
      <property>PVALID</property>
      <description>MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DIGIT NINE</description>
    </record>
    <record>
      <codepoint>ABFA-ABFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AC00-D7A3</codepoint>
      <property>PVALID</property>
      <description>&lt;Hangul Syllable&gt;..&lt;Hangul Syllable&gt;</description>
    </record>
    <record>
      <codepoint>D7A4-D7AF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>D7B0-D7C6</codepoint>
      <property>DISALLOWED</property>
      <description>HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E</description>
    </record>
    <record>
      <codepoint>D7C7-D7CA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>D7CB-D7FB</codepoint>
      <property>DISALLOWED</property>
      <description>HANGUL JONGSEONG NIEUN-RIEUL..HANGUL JONGSEONG PHIEUPH-THIEUTH</description>
    </record>
    <record>
      <codepoint>D7FC-D7FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>D800-F8FF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;Non Private Use High Surrogate&gt;..&lt;Private Use&gt;</description>
    </record>
    <record>
      <codepoint>F900-FA0D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-F900..CJK COMPATIBILITY IDEOGRAPH-FA0D</description>
    </record>
    <record>
      <codepoint>FA0E-FA0F</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA0E..CJK COMPATIBILITY IDEOGRAPH-FA0F</description>
    </record>
    <record>
      <codepoint>FA10</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA10</description>
    </record>
    <record>
      <codepoint>FA11</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA11</description>
    </record>
    <record>
      <codepoint>FA12</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA12</description>
    </record>
    <record>
      <codepoint>FA13-FA14</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA13..CJK COMPATIBILITY IDEOGRAPH-FA14</description>
    </record>
    <record>
      <codepoint>FA15-FA1E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA15..CJK COMPATIBILITY IDEOGRAPH-FA1E</description>
    </record>
    <record>
      <codepoint>FA1F</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA1F</description>
    </record>
    <record>
      <codepoint>FA20</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA20</description>
    </record>
    <record>
      <codepoint>FA21</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA21</description>
    </record>
    <record>
      <codepoint>FA22</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA22</description>
    </record>
    <record>
      <codepoint>FA23-FA24</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA23..CJK COMPATIBILITY IDEOGRAPH-FA24</description>
    </record>
    <record>
      <codepoint>FA25-FA26</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA25..CJK COMPATIBILITY IDEOGRAPH-FA26</description>
    </record>
    <record>
      <codepoint>FA27-FA29</codepoint>
      <property>PVALID</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA27..CJK COMPATIBILITY IDEOGRAPH-FA29</description>
    </record>
    <record>
      <codepoint>FA2A-FA6D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA2A..CJK COMPATIBILITY IDEOGRAPH-FA6D</description>
    </record>
    <record>
      <codepoint>FA6E-FA6F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FA70-FAD9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9</description>
    </record>
    <record>
      <codepoint>FADA-FAFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB00-FB06</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST</description>
    </record>
    <record>
      <codepoint>FB07-FB12</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB13-FB17</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARMENIAN SMALL LIGATURE MEN NOW..ARMENIAN SMALL LIGATURE MEN XEH</description>
    </record>
    <record>
      <codepoint>FB18-FB1C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB1D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LETTER YOD WITH HIRIQ</description>
    </record>
    <record>
      <codepoint>FB1E</codepoint>
      <property>PVALID</property>
      <description>HEBREW POINT JUDEO-SPANISH VARIKA</description>
    </record>
    <record>
      <codepoint>FB1F-FB36</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LIGATURE YIDDISH YOD YOD PATAH..HEBREW LETTER ZAYIN WITH DAGESH</description>
    </record>
    <record>
      <codepoint>FB37</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB38-FB3C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LETTER TET WITH DAGESH..HEBREW LETTER LAMED WITH DAGESH</description>
    </record>
    <record>
      <codepoint>FB3D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB3E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LETTER MEM WITH DAGESH</description>
    </record>
    <record>
      <codepoint>FB3F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB40-FB41</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LETTER NUN WITH DAGESH..HEBREW LETTER SAMEKH WITH DAGESH</description>
    </record>
    <record>
      <codepoint>FB42</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB43-FB44</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LETTER FINAL PE WITH DAGESH..HEBREW LETTER PE WITH DAGESH</description>
    </record>
    <record>
      <codepoint>FB45</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FB46-FBC1</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HEBREW LETTER TSADI WITH DAGESH..ARABIC SYMBOL SMALL TAH BELOW</description>
    </record>
    <record>
      <codepoint>FBC2-FBD2</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FBD3-FD3F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC LETTER NG ISOLATED FORM..ORNATE RIGHT PARENTHESIS</description>
    </record>
    <record>
      <codepoint>FD40-FD4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FD50-FD8F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM..ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM</description>
    </record>
    <record>
      <codepoint>FD90-FD91</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FD92-FDC7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM..ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM</description>
    </record>
    <record>
      <codepoint>FDC8-FDCF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FDD0-FDEF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>FDF0-FDFD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM..ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM</description>
    </record>
    <record>
      <codepoint>FDFE-FDFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE00-FE0F</codepoint>
      <property>DISALLOWED</property>
      <description>VARIATION SELECTOR-1..VARIATION SELECTOR-16</description>
    </record>
    <record>
      <codepoint>FE10-FE19</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PRESENTATION FORM FOR VERTICAL COMMA..PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS</description>
    </record>
    <record>
      <codepoint>FE1A-FE1F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE20-FE26</codepoint>
      <property>PVALID</property>
      <description>COMBINING LIGATURE LEFT HALF..COMBINING CONJOINING MACRON</description>
    </record>
    <record>
      <codepoint>FE27-FE2F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE30-FE52</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PRESENTATION FORM FOR VERTICAL TWO DOT LEADER..SMALL FULL STOP</description>
    </record>
    <record>
      <codepoint>FE53</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE54-FE66</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SMALL SEMICOLON..SMALL EQUALS SIGN</description>
    </record>
    <record>
      <codepoint>FE67</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE68-FE6B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SMALL REVERSE SOLIDUS..SMALL COMMERCIAL AT</description>
    </record>
    <record>
      <codepoint>FE6C-FE6F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE70-FE72</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC FATHATAN ISOLATED FORM..ARABIC DAMMATAN ISOLATED FORM</description>
    </record>
    <record>
      <codepoint>FE73</codepoint>
      <property>PVALID</property>
      <description>ARABIC TAIL FRAGMENT</description>
    </record>
    <record>
      <codepoint>FE74</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC KASRATAN ISOLATED FORM</description>
    </record>
    <record>
      <codepoint>FE75</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FE76-FEFC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM</description>
    </record>
    <record>
      <codepoint>FEFD-FEFE</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FEFF</codepoint>
      <property>DISALLOWED</property>
      <description>ZERO WIDTH NO-BREAK SPACE</description>
    </record>
    <record>
      <codepoint>FF00</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FF01-FF9F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>FULLWIDTH EXCLAMATION MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK</description>
    </record>
    <record>
      <codepoint>FFA0</codepoint>
      <property>DISALLOWED</property>
      <description>HALFWIDTH HANGUL FILLER</description>
    </record>
    <record>
      <codepoint>FFA1-FFBE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HALFWIDTH HANGUL LETTER KIYEOK..HALFWIDTH HANGUL LETTER HIEUH</description>
    </record>
    <record>
      <codepoint>FFBF-FFC1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFC2-FFC7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HALFWIDTH HANGUL LETTER A..HALFWIDTH HANGUL LETTER E</description>
    </record>
    <record>
      <codepoint>FFC8-FFC9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFCA-FFCF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HALFWIDTH HANGUL LETTER YEO..HALFWIDTH HANGUL LETTER OE</description>
    </record>
    <record>
      <codepoint>FFD0-FFD1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFD2-FFD7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HALFWIDTH HANGUL LETTER YO..HALFWIDTH HANGUL LETTER YU</description>
    </record>
    <record>
      <codepoint>FFD8-FFD9</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFDA-FFDC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL LETTER I</description>
    </record>
    <record>
      <codepoint>FFDD-FFDF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFE0-FFE6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>FULLWIDTH CENT SIGN..FULLWIDTH WON SIGN</description>
    </record>
    <record>
      <codepoint>FFE7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFE8-FFEE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HALFWIDTH FORMS LIGHT VERTICAL..HALFWIDTH WHITE CIRCLE</description>
    </record>
    <record>
      <codepoint>FFEF-FFF8</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>FFF9-FFFB</codepoint>
      <property>DISALLOWED</property>
      <description>INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR</description>
    </record>
    <record>
      <codepoint>FFFC-FFFD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OBJECT REPLACEMENT CHARACTER..REPLACEMENT CHARACTER</description>
    </record>
    <record>
      <codepoint>FFFE-FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>10000-1000B</codepoint>
      <property>PVALID</property>
      <description>LINEAR B SYLLABLE B008 A..LINEAR B SYLLABLE B046 JE</description>
    </record>
    <record>
      <codepoint>1000C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1000D-10026</codepoint>
      <property>PVALID</property>
      <description>LINEAR B SYLLABLE B036 JO..LINEAR B SYLLABLE B032 QO</description>
    </record>
    <record>
      <codepoint>10027</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10028-1003A</codepoint>
      <property>PVALID</property>
      <description>LINEAR B SYLLABLE B060 RA..LINEAR B SYLLABLE B042 WO</description>
    </record>
    <record>
      <codepoint>1003B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1003C-1003D</codepoint>
      <property>PVALID</property>
      <description>LINEAR B SYLLABLE B017 ZA..LINEAR B SYLLABLE B074 ZE</description>
    </record>
    <record>
      <codepoint>1003E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1003F-1004D</codepoint>
      <property>PVALID</property>
      <description>LINEAR B SYLLABLE B020 ZO..LINEAR B SYLLABLE B091 TWO</description>
    </record>
    <record>
      <codepoint>1004E-1004F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10050-1005D</codepoint>
      <property>PVALID</property>
      <description>LINEAR B SYMBOL B018..LINEAR B SYMBOL B089</description>
    </record>
    <record>
      <codepoint>1005E-1007F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10080-100FA</codepoint>
      <property>PVALID</property>
      <description>LINEAR B IDEOGRAM B100 MAN..LINEAR B IDEOGRAM VESSEL B305</description>
    </record>
    <record>
      <codepoint>100FB-100FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10100-10102</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>AEGEAN WORD SEPARATOR LINE..AEGEAN CHECK MARK</description>
    </record>
    <record>
      <codepoint>10103-10106</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10107-10133</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>AEGEAN NUMBER ONE..AEGEAN NUMBER NINETY THOUSAND</description>
    </record>
    <record>
      <codepoint>10134-10136</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10137-1018A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>AEGEAN WEIGHT BASE UNIT..GREEK ZERO SIGN</description>
    </record>
    <record>
      <codepoint>1018B-1018F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10190-1019B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ROMAN SEXTANS SIGN..ROMAN CENTURIAL SIGN</description>
    </record>
    <record>
      <codepoint>1019C-101CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>101D0-101FC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PHAISTOS DISC SIGN PEDESTRIAN..PHAISTOS DISC SIGN WAVY BAND</description>
    </record>
    <record>
      <codepoint>101FD</codepoint>
      <property>PVALID</property>
      <description>PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE</description>
    </record>
    <record>
      <codepoint>101FE-1027F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10280-1029C</codepoint>
      <property>PVALID</property>
      <description>LYCIAN LETTER A..LYCIAN LETTER X</description>
    </record>
    <record>
      <codepoint>1029D-1029F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>102A0-102D0</codepoint>
      <property>PVALID</property>
      <description>CARIAN LETTER A..CARIAN LETTER UUU3</description>
    </record>
    <record>
      <codepoint>102D1-102FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10300-1031E</codepoint>
      <property>PVALID</property>
      <description>OLD ITALIC LETTER A..OLD ITALIC LETTER UU</description>
    </record>
    <record>
      <codepoint>1031F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10320-10323</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OLD ITALIC NUMERAL ONE..OLD ITALIC NUMERAL FIFTY</description>
    </record>
    <record>
      <codepoint>10324-1032F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10330-10340</codepoint>
      <property>PVALID</property>
      <description>GOTHIC LETTER AHSA..GOTHIC LETTER PAIRTHRA</description>
    </record>
    <record>
      <codepoint>10341</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GOTHIC LETTER NINETY</description>
    </record>
    <record>
      <codepoint>10342-10349</codepoint>
      <property>PVALID</property>
      <description>GOTHIC LETTER RAIDA..GOTHIC LETTER OTHAL</description>
    </record>
    <record>
      <codepoint>1034A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GOTHIC LETTER NINE HUNDRED</description>
    </record>
    <record>
      <codepoint>1034B-1037F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10380-1039D</codepoint>
      <property>PVALID</property>
      <description>UGARITIC LETTER ALPA..UGARITIC LETTER SSU</description>
    </record>
    <record>
      <codepoint>1039E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1039F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>UGARITIC WORD DIVIDER</description>
    </record>
    <record>
      <codepoint>103A0-103C3</codepoint>
      <property>PVALID</property>
      <description>OLD PERSIAN SIGN A..OLD PERSIAN SIGN HA</description>
    </record>
    <record>
      <codepoint>103C4-103C7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>103C8-103CF</codepoint>
      <property>PVALID</property>
      <description>OLD PERSIAN SIGN AURAMAZDAA..OLD PERSIAN SIGN BUUMISH</description>
    </record>
    <record>
      <codepoint>103D0-103D5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OLD PERSIAN WORD DIVIDER..OLD PERSIAN NUMBER HUNDRED</description>
    </record>
    <record>
      <codepoint>103D6-103FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10400-1049D</codepoint>
      <property>PVALID</property>
      <description>DESERET CAPITAL LETTER LONG I..OSMANYA LETTER OO</description>
    </record>
    <record>
      <codepoint>1049E-1049F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>104A0-104A9</codepoint>
      <property>PVALID</property>
      <description>OSMANYA DIGIT ZERO..OSMANYA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>104AA-107FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10800-10805</codepoint>
      <property>PVALID</property>
      <description>CYPRIOT SYLLABLE A..CYPRIOT SYLLABLE JA</description>
    </record>
    <record>
      <codepoint>10806-10807</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10808</codepoint>
      <property>PVALID</property>
      <description>CYPRIOT SYLLABLE JO</description>
    </record>
    <record>
      <codepoint>10809</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1080A-10835</codepoint>
      <property>PVALID</property>
      <description>CYPRIOT SYLLABLE KA..CYPRIOT SYLLABLE WO</description>
    </record>
    <record>
      <codepoint>10836</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10837-10838</codepoint>
      <property>PVALID</property>
      <description>CYPRIOT SYLLABLE XA..CYPRIOT SYLLABLE XE</description>
    </record>
    <record>
      <codepoint>10839-1083B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1083C</codepoint>
      <property>PVALID</property>
      <description>CYPRIOT SYLLABLE ZA</description>
    </record>
    <record>
      <codepoint>1083D-1083E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1083F-10855</codepoint>
      <property>PVALID</property>
      <description>CYPRIOT SYLLABLE ZO..IMPERIAL ARAMAIC LETTER TAW</description>
    </record>
    <record>
      <codepoint>10856</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10857-1085F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>IMPERIAL ARAMAIC SECTION SIGN..IMPERIAL ARAMAIC NUMBER TEN THOUSAND</description>
    </record>
    <record>
      <codepoint>10860-108FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10900-10915</codepoint>
      <property>PVALID</property>
      <description>PHOENICIAN LETTER ALF..PHOENICIAN LETTER TAU</description>
    </record>
    <record>
      <codepoint>10916-1091B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PHOENICIAN NUMBER ONE..PHOENICIAN NUMBER THREE</description>
    </record>
    <record>
      <codepoint>1091C-1091E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1091F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PHOENICIAN WORD SEPARATOR</description>
    </record>
    <record>
      <codepoint>10920-10939</codepoint>
      <property>PVALID</property>
      <description>LYDIAN LETTER A..LYDIAN LETTER C</description>
    </record>
    <record>
      <codepoint>1093A-1093E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1093F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>LYDIAN TRIANGULAR MARK</description>
    </record>
    <record>
      <codepoint>10940-1097F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10980-109B7</codepoint>
      <property>PVALID</property>
      <description>MEROITIC HIEROGLYPHIC LETTER A..MEROITIC CURSIVE LETTER DA</description>
    </record>
    <record>
      <codepoint>109B8-109BD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>109BE-109BF</codepoint>
      <property>PVALID</property>
      <description>MEROITIC CURSIVE LOGOGRAM RMT..MEROITIC CURSIVE LOGOGRAM IMN</description>
    </record>
    <record>
      <codepoint>109C0-109FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A00-10A03</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI LETTER A..KHAROSHTHI VOWEL SIGN VOCALIC R</description>
    </record>
    <record>
      <codepoint>10A04</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A05-10A06</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O</description>
    </record>
    <record>
      <codepoint>10A07-10A0B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A0C-10A13</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI LETTER GHA</description>
    </record>
    <record>
      <codepoint>10A14</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A15-10A17</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI LETTER CA..KHAROSHTHI LETTER JA</description>
    </record>
    <record>
      <codepoint>10A18</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A19-10A33</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI LETTER NYA..KHAROSHTHI LETTER TTTHA</description>
    </record>
    <record>
      <codepoint>10A34-10A37</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A38-10A3A</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW</description>
    </record>
    <record>
      <codepoint>10A3B-10A3E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A3F</codepoint>
      <property>PVALID</property>
      <description>KHAROSHTHI VIRAMA</description>
    </record>
    <record>
      <codepoint>10A40-10A47</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KHAROSHTHI DIGIT ONE..KHAROSHTHI NUMBER ONE THOUSAND</description>
    </record>
    <record>
      <codepoint>10A48-10A4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A50-10A58</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KHAROSHTHI PUNCTUATION DOT..KHAROSHTHI PUNCTUATION LINES</description>
    </record>
    <record>
      <codepoint>10A59-10A5F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10A60-10A7C</codepoint>
      <property>PVALID</property>
      <description>OLD SOUTH ARABIAN LETTER HE..OLD SOUTH ARABIAN LETTER THETH</description>
    </record>
    <record>
      <codepoint>10A7D-10A7F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>OLD SOUTH ARABIAN NUMBER ONE..OLD SOUTH ARABIAN NUMERIC INDICATOR</description>
    </record>
    <record>
      <codepoint>10A80-10AFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10B00-10B35</codepoint>
      <property>PVALID</property>
      <description>AVESTAN LETTER A..AVESTAN LETTER HE</description>
    </record>
    <record>
      <codepoint>10B36-10B38</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10B39-10B3F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>AVESTAN ABBREVIATION MARK..LARGE ONE RING OVER TWO RINGS PUNCTUATION</description>
    </record>
    <record>
      <codepoint>10B40-10B55</codepoint>
      <property>PVALID</property>
      <description>INSCRIPTIONAL PARTHIAN LETTER ALEPH..INSCRIPTIONAL PARTHIAN LETTER TAW</description>
    </record>
    <record>
      <codepoint>10B56-10B57</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10B58-10B5F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>INSCRIPTIONAL PARTHIAN NUMBER ONE..INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND</description>
    </record>
    <record>
      <codepoint>10B60-10B72</codepoint>
      <property>PVALID</property>
      <description>INSCRIPTIONAL PAHLAVI LETTER ALEPH..INSCRIPTIONAL PAHLAVI LETTER TAW</description>
    </record>
    <record>
      <codepoint>10B73-10B77</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10B78-10B7F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>INSCRIPTIONAL PAHLAVI NUMBER ONE..INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND</description>
    </record>
    <record>
      <codepoint>10B80-10BFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10C00-10C48</codepoint>
      <property>PVALID</property>
      <description>OLD TURKIC LETTER ORKHON A..OLD TURKIC LETTER ORKHON BASH</description>
    </record>
    <record>
      <codepoint>10C49-10E5F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>10E60-10E7E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS</description>
    </record>
    <record>
      <codepoint>10E7F-10FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11000-11046</codepoint>
      <property>PVALID</property>
      <description>BRAHMI SIGN CANDRABINDU..BRAHMI VIRAMA</description>
    </record>
    <record>
      <codepoint>11047-1104D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BRAHMI DANDA..BRAHMI PUNCTUATION LOTUS</description>
    </record>
    <record>
      <codepoint>1104E-11051</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11052-11065</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BRAHMI NUMBER ONE..BRAHMI NUMBER ONE THOUSAND</description>
    </record>
    <record>
      <codepoint>11066-1106F</codepoint>
      <property>PVALID</property>
      <description>BRAHMI DIGIT ZERO..BRAHMI DIGIT NINE</description>
    </record>
    <record>
      <codepoint>11070-1107F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11080-110BA</codepoint>
      <property>PVALID</property>
      <description>KAITHI SIGN CANDRABINDU..KAITHI SIGN NUKTA</description>
    </record>
    <record>
      <codepoint>110BB-110BC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KAITHI ABBREVIATION SIGN..KAITHI ENUMERATION SIGN</description>
    </record>
    <record>
      <codepoint>110BD</codepoint>
      <property>DISALLOWED</property>
      <description>KAITHI NUMBER SIGN</description>
    </record>
    <record>
      <codepoint>110BE-110C1</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>KAITHI SECTION MARK..KAITHI DOUBLE DANDA</description>
    </record>
    <record>
      <codepoint>110C2-110CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>110D0-110E8</codepoint>
      <property>PVALID</property>
      <description>SORA SOMPENG LETTER SAH..SORA SOMPENG LETTER MAE</description>
    </record>
    <record>
      <codepoint>110E9-110EF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>110F0-110F9</codepoint>
      <property>PVALID</property>
      <description>SORA SOMPENG DIGIT ZERO..SORA SOMPENG DIGIT NINE</description>
    </record>
    <record>
      <codepoint>110FA-110FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11100-11134</codepoint>
      <property>PVALID</property>
      <description>CHAKMA SIGN CANDRABINDU..CHAKMA MAAYYAA</description>
    </record>
    <record>
      <codepoint>11135</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11136-1113F</codepoint>
      <property>PVALID</property>
      <description>CHAKMA DIGIT ZERO..CHAKMA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>11140-11143</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CHAKMA SECTION MARK..CHAKMA QUESTION MARK</description>
    </record>
    <record>
      <codepoint>11144-1117F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11180-111C4</codepoint>
      <property>PVALID</property>
      <description>SHARADA SIGN CANDRABINDU..SHARADA OM</description>
    </record>
    <record>
      <codepoint>111C5-111C8</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SHARADA DANDA..SHARADA SEPARATOR</description>
    </record>
    <record>
      <codepoint>111C9-111CF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>111D0-111D9</codepoint>
      <property>PVALID</property>
      <description>SHARADA DIGIT ZERO..SHARADA DIGIT NINE</description>
    </record>
    <record>
      <codepoint>111DA-1167F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>11680-116B7</codepoint>
      <property>PVALID</property>
      <description>TAKRI LETTER A..TAKRI SIGN NUKTA</description>
    </record>
    <record>
      <codepoint>116B8-116BF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>116C0-116C9</codepoint>
      <property>PVALID</property>
      <description>TAKRI DIGIT ZERO..TAKRI DIGIT NINE</description>
    </record>
    <record>
      <codepoint>116CA-11FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12000-1236E</codepoint>
      <property>PVALID</property>
      <description>CUNEIFORM SIGN A..CUNEIFORM SIGN ZUM</description>
    </record>
    <record>
      <codepoint>1236F-123FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12400-12462</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CUNEIFORM NUMERIC SIGN TWO ASH..CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER</description>
    </record>
    <record>
      <codepoint>12463-1246F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>12470-12473</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER..CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON</description>
    </record>
    <record>
      <codepoint>12474-12FFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>13000-1342E</codepoint>
      <property>PVALID</property>
      <description>EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH AA032</description>
    </record>
    <record>
      <codepoint>1342F-167FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>16800-16A38</codepoint>
      <property>PVALID</property>
      <description>BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ</description>
    </record>
    <record>
      <codepoint>16A39-16EFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>16F00-16F44</codepoint>
      <property>PVALID</property>
      <description>MIAO LETTER PA..MIAO LETTER HHA</description>
    </record>
    <record>
      <codepoint>16F45-16F4F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>16F50-16F7E</codepoint>
      <property>PVALID</property>
      <description>MIAO LETTER NASALIZATION..MIAO VOWEL SIGN NG</description>
    </record>
    <record>
      <codepoint>16F7F-16F8E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>16F8F-16F9F</codepoint>
      <property>PVALID</property>
      <description>MIAO TONE RIGHT..MIAO LETTER REFORMED TONE-8</description>
    </record>
    <record>
      <codepoint>16FA0-1AFFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1B000-1B001</codepoint>
      <property>PVALID</property>
      <description>KATAKANA LETTER ARCHAIC E..HIRAGANA LETTER ARCHAIC YE</description>
    </record>
    <record>
      <codepoint>1B002-1CFFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D000-1D0F5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>BYZANTINE MUSICAL SYMBOL PSILI..BYZANTINE MUSICAL SYMBOL GORGON NEO KATO</description>
    </record>
    <record>
      <codepoint>1D0F6-1D0FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D100-1D126</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MUSICAL SYMBOL SINGLE BARLINE..MUSICAL SYMBOL DRUM CLEF-2</description>
    </record>
    <record>
      <codepoint>1D127-1D128</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D129-1D164</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MUSICAL SYMBOL MULTIPLE MEASURE REST..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE</description>
    </record>
    <record>
      <codepoint>1D165-1D169</codepoint>
      <property>PVALID</property>
      <description>MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING TREMOLO-3</description>
    </record>
    <record>
      <codepoint>1D16A-1D16C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MUSICAL SYMBOL FINGERED TREMOLO-1..MUSICAL SYMBOL FINGERED TREMOLO-3</description>
    </record>
    <record>
      <codepoint>1D16D-1D172</codepoint>
      <property>PVALID</property>
      <description>MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5</description>
    </record>
    <record>
      <codepoint>1D173-1D17A</codepoint>
      <property>DISALLOWED</property>
      <description>MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE</description>
    </record>
    <record>
      <codepoint>1D17B-1D182</codepoint>
      <property>PVALID</property>
      <description>MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE</description>
    </record>
    <record>
      <codepoint>1D183-1D184</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MUSICAL SYMBOL ARPEGGIATO UP..MUSICAL SYMBOL ARPEGGIATO DOWN</description>
    </record>
    <record>
      <codepoint>1D185-1D18B</codepoint>
      <property>PVALID</property>
      <description>MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE</description>
    </record>
    <record>
      <codepoint>1D18C-1D1A9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MUSICAL SYMBOL RINFORZANDO..MUSICAL SYMBOL DEGREE SLASH</description>
    </record>
    <record>
      <codepoint>1D1AA-1D1AD</codepoint>
      <property>PVALID</property>
      <description>MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO</description>
    </record>
    <record>
      <codepoint>1D1AE-1D1DD</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MUSICAL SYMBOL PEDAL MARK..MUSICAL SYMBOL PES SUBPUNCTIS</description>
    </record>
    <record>
      <codepoint>1D1DE-1D1FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D200-1D241</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK VOCAL NOTATION SYMBOL-1..GREEK INSTRUMENTAL NOTATION SYMBOL-54</description>
    </record>
    <record>
      <codepoint>1D242-1D244</codepoint>
      <property>PVALID</property>
      <description>COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME</description>
    </record>
    <record>
      <codepoint>1D245</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>GREEK MUSICAL LEIMMA</description>
    </record>
    <record>
      <codepoint>1D246-1D2FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D300-1D356</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING</description>
    </record>
    <record>
      <codepoint>1D357-1D35F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D360-1D371</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>COUNTING ROD UNIT DIGIT ONE..COUNTING ROD TENS DIGIT NINE</description>
    </record>
    <record>
      <codepoint>1D372-1D3FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D400-1D454</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G</description>
    </record>
    <record>
      <codepoint>1D455</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D456-1D49C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A</description>
    </record>
    <record>
      <codepoint>1D49D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D49E-1D49F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D</description>
    </record>
    <record>
      <codepoint>1D4A0-1D4A1</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4A2</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT CAPITAL G</description>
    </record>
    <record>
      <codepoint>1D4A3-1D4A4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4A5-1D4A6</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT CAPITAL J..MATHEMATICAL SCRIPT CAPITAL K</description>
    </record>
    <record>
      <codepoint>1D4A7-1D4A8</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4A9-1D4AC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT CAPITAL N..MATHEMATICAL SCRIPT CAPITAL Q</description>
    </record>
    <record>
      <codepoint>1D4AD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4AE-1D4B9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT CAPITAL S..MATHEMATICAL SCRIPT SMALL D</description>
    </record>
    <record>
      <codepoint>1D4BA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4BB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT SMALL F</description>
    </record>
    <record>
      <codepoint>1D4BC</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4BD-1D4C3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT SMALL H..MATHEMATICAL SCRIPT SMALL N</description>
    </record>
    <record>
      <codepoint>1D4C4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D4C5-1D505</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL SCRIPT SMALL P..MATHEMATICAL FRAKTUR CAPITAL B</description>
    </record>
    <record>
      <codepoint>1D506</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D507-1D50A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL FRAKTUR CAPITAL D..MATHEMATICAL FRAKTUR CAPITAL G</description>
    </record>
    <record>
      <codepoint>1D50B-1D50C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D50D-1D514</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL FRAKTUR CAPITAL J..MATHEMATICAL FRAKTUR CAPITAL Q</description>
    </record>
    <record>
      <codepoint>1D515</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D516-1D51C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL FRAKTUR CAPITAL S..MATHEMATICAL FRAKTUR CAPITAL Y</description>
    </record>
    <record>
      <codepoint>1D51D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D51E-1D539</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL FRAKTUR SMALL A..MATHEMATICAL DOUBLE-STRUCK CAPITAL B</description>
    </record>
    <record>
      <codepoint>1D53A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D53B-1D53E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL DOUBLE-STRUCK CAPITAL D..MATHEMATICAL DOUBLE-STRUCK CAPITAL G</description>
    </record>
    <record>
      <codepoint>1D53F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D540-1D544</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL DOUBLE-STRUCK CAPITAL I..MATHEMATICAL DOUBLE-STRUCK CAPITAL M</description>
    </record>
    <record>
      <codepoint>1D545</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D546</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL DOUBLE-STRUCK CAPITAL O</description>
    </record>
    <record>
      <codepoint>1D547-1D549</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D54A-1D550</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL DOUBLE-STRUCK CAPITAL S..MATHEMATICAL DOUBLE-STRUCK CAPITAL Y</description>
    </record>
    <record>
      <codepoint>1D551</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D552-1D6A5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL DOUBLE-STRUCK SMALL A..MATHEMATICAL ITALIC SMALL DOTLESS J</description>
    </record>
    <record>
      <codepoint>1D6A6-1D6A7</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D6A8-1D7CB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL BOLD CAPITAL ALPHA..MATHEMATICAL BOLD SMALL DIGAMMA</description>
    </record>
    <record>
      <codepoint>1D7CC-1D7CD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1D7CE-1D7FF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE</description>
    </record>
    <record>
      <codepoint>1D800-1EDFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE00-1EE03</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL ALEF..ARABIC MATHEMATICAL DAL</description>
    </record>
    <record>
      <codepoint>1EE04</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE05-1EE1F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL WAW..ARABIC MATHEMATICAL DOTLESS QAF</description>
    </record>
    <record>
      <codepoint>1EE20</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE21-1EE22</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL BEH..ARABIC MATHEMATICAL INITIAL JEEM</description>
    </record>
    <record>
      <codepoint>1EE23</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE24</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL HEH</description>
    </record>
    <record>
      <codepoint>1EE25-1EE26</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE27</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL HAH</description>
    </record>
    <record>
      <codepoint>1EE28</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE29-1EE32</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL YEH..ARABIC MATHEMATICAL INITIAL QAF</description>
    </record>
    <record>
      <codepoint>1EE33</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE34-1EE37</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL SHEEN..ARABIC MATHEMATICAL INITIAL KHAH</description>
    </record>
    <record>
      <codepoint>1EE38</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE39</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL DAD</description>
    </record>
    <record>
      <codepoint>1EE3A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE3B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL INITIAL GHAIN</description>
    </record>
    <record>
      <codepoint>1EE3C-1EE41</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE42</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED JEEM</description>
    </record>
    <record>
      <codepoint>1EE43-1EE46</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE47</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED HAH</description>
    </record>
    <record>
      <codepoint>1EE48</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE49</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED YEH</description>
    </record>
    <record>
      <codepoint>1EE4A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE4B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED LAM</description>
    </record>
    <record>
      <codepoint>1EE4C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE4D-1EE4F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED NOON..ARABIC MATHEMATICAL TAILED AIN</description>
    </record>
    <record>
      <codepoint>1EE50</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE51-1EE52</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED SAD..ARABIC MATHEMATICAL TAILED QAF</description>
    </record>
    <record>
      <codepoint>1EE53</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE54</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED SHEEN</description>
    </record>
    <record>
      <codepoint>1EE55-1EE56</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE57</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED KHAH</description>
    </record>
    <record>
      <codepoint>1EE58</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE59</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED DAD</description>
    </record>
    <record>
      <codepoint>1EE5A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE5B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED GHAIN</description>
    </record>
    <record>
      <codepoint>1EE5C</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE5D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED DOTLESS NOON</description>
    </record>
    <record>
      <codepoint>1EE5E</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE5F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL TAILED DOTLESS QAF</description>
    </record>
    <record>
      <codepoint>1EE60</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE61-1EE62</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED BEH..ARABIC MATHEMATICAL STRETCHED JEEM</description>
    </record>
    <record>
      <codepoint>1EE63</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE64</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED HEH</description>
    </record>
    <record>
      <codepoint>1EE65-1EE66</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE67-1EE6A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED HAH..ARABIC MATHEMATICAL STRETCHED KAF</description>
    </record>
    <record>
      <codepoint>1EE6B</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE6C-1EE72</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED MEEM..ARABIC MATHEMATICAL STRETCHED QAF</description>
    </record>
    <record>
      <codepoint>1EE73</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE74-1EE77</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED SHEEN..ARABIC MATHEMATICAL STRETCHED KHAH</description>
    </record>
    <record>
      <codepoint>1EE78</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE79-1EE7C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED DAD..ARABIC MATHEMATICAL STRETCHED DOTLESS BEH</description>
    </record>
    <record>
      <codepoint>1EE7D</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE7E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL STRETCHED DOTLESS FEH</description>
    </record>
    <record>
      <codepoint>1EE7F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE80-1EE89</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL LOOPED ALEF..ARABIC MATHEMATICAL LOOPED YEH</description>
    </record>
    <record>
      <codepoint>1EE8A</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EE8B-1EE9B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL LOOPED LAM..ARABIC MATHEMATICAL LOOPED GHAIN</description>
    </record>
    <record>
      <codepoint>1EE9C-1EEA0</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EEA1-1EEA3</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL DOUBLE-STRUCK BEH..ARABIC MATHEMATICAL DOUBLE-STRUCK DAL</description>
    </record>
    <record>
      <codepoint>1EEA4</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EEA5-1EEA9</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL DOUBLE-STRUCK WAW..ARABIC MATHEMATICAL DOUBLE-STRUCK YEH</description>
    </record>
    <record>
      <codepoint>1EEAA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EEAB-1EEBB</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN</description>
    </record>
    <record>
      <codepoint>1EEBC-1EEEF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1EEF0-1EEF1</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL..ARABIC MATHEMATICAL OPERATOR HAH WITH DAL</description>
    </record>
    <record>
      <codepoint>1EEF2-1EFFF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F000-1F02B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MAHJONG TILE EAST WIND..MAHJONG TILE BACK</description>
    </record>
    <record>
      <codepoint>1F02C-1F02F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F030-1F093</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DOMINO TILE HORIZONTAL BACK..DOMINO TILE VERTICAL-06-06</description>
    </record>
    <record>
      <codepoint>1F094-1F09F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F0A0-1F0AE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PLAYING CARD BACK..PLAYING CARD KING OF SPADES</description>
    </record>
    <record>
      <codepoint>1F0AF-1F0B0</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F0B1-1F0BE</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PLAYING CARD ACE OF HEARTS..PLAYING CARD KING OF HEARTS</description>
    </record>
    <record>
      <codepoint>1F0BF-1F0C0</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F0C1-1F0CF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PLAYING CARD ACE OF DIAMONDS..PLAYING CARD BLACK JOKER</description>
    </record>
    <record>
      <codepoint>1F0D0</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F0D1-1F0DF</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PLAYING CARD ACE OF CLUBS..PLAYING CARD WHITE JOKER</description>
    </record>
    <record>
      <codepoint>1F0E0-1F0FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F100-1F10A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>DIGIT ZERO FULL STOP..DIGIT NINE COMMA</description>
    </record>
    <record>
      <codepoint>1F10B-1F10F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F110-1F12E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED WZ</description>
    </record>
    <record>
      <codepoint>1F12F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F130-1F16B</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SQUARED LATIN CAPITAL LETTER A..RAISED MD SIGN</description>
    </record>
    <record>
      <codepoint>1F16C-1F16F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F170-1F19A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>NEGATIVE SQUARED LATIN CAPITAL LETTER A..SQUARED VS</description>
    </record>
    <record>
      <codepoint>1F19B-1F1E5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F1E6-1F202</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>REGIONAL INDICATOR SYMBOL LETTER A..SQUARED KATAKANA SA</description>
    </record>
    <record>
      <codepoint>1F203-1F20F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F210-1F23A</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>SQUARED CJK UNIFIED IDEOGRAPH-624B..SQUARED CJK UNIFIED IDEOGRAPH-55B6</description>
    </record>
    <record>
      <codepoint>1F23B-1F23F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F240-1F248</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C..TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557</description>
    </record>
    <record>
      <codepoint>1F249-1F24F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F250-1F251</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CIRCLED IDEOGRAPH ADVANTAGE..CIRCLED IDEOGRAPH ACCEPT</description>
    </record>
    <record>
      <codepoint>1F252-1F2FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F300-1F320</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CYCLONE..SHOOTING STAR</description>
    </record>
    <record>
      <codepoint>1F321-1F32F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F330-1F335</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CHESTNUT..CACTUS</description>
    </record>
    <record>
      <codepoint>1F336</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F337-1F37C</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TULIP..BABY BOTTLE</description>
    </record>
    <record>
      <codepoint>1F37D-1F37F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F380-1F393</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>RIBBON..GRADUATION CAP</description>
    </record>
    <record>
      <codepoint>1F394-1F39F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F3A0-1F3C4</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CAROUSEL HORSE..SURFER</description>
    </record>
    <record>
      <codepoint>1F3C5</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F3C6-1F3CA</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TROPHY..SWIMMER</description>
    </record>
    <record>
      <codepoint>1F3CB-1F3DF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F3E0-1F3F0</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>HOUSE BUILDING..EUROPEAN CASTLE</description>
    </record>
    <record>
      <codepoint>1F3F1-1F3FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F400-1F43E</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>RAT..PAW PRINTS</description>
    </record>
    <record>
      <codepoint>1F43F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F440</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>EYES</description>
    </record>
    <record>
      <codepoint>1F441</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F442-1F4F7</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>EAR..CAMERA</description>
    </record>
    <record>
      <codepoint>1F4F8</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F4F9-1F4FC</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>VIDEO CAMERA..VIDEOCASSETTE</description>
    </record>
    <record>
      <codepoint>1F4FD-1F4FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F500-1F53D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>TWISTED RIGHTWARDS ARROWS..DOWN-POINTING SMALL RED TRIANGLE</description>
    </record>
    <record>
      <codepoint>1F53E-1F53F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F540-1F543</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CIRCLED CROSS POMMEE..NOTCHED LEFT SEMICIRCLE WITH THREE DOTS</description>
    </record>
    <record>
      <codepoint>1F544-1F54F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F550-1F567</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CLOCK FACE ONE OCLOCK..CLOCK FACE TWELVE-THIRTY</description>
    </record>
    <record>
      <codepoint>1F568-1F5FA</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F5FB-1F640</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>MOUNT FUJI..WEARY CAT FACE</description>
    </record>
    <record>
      <codepoint>1F641-1F644</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F645-1F64F</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>FACE WITH NO GOOD GESTURE..PERSON WITH FOLDED HANDS</description>
    </record>
    <record>
      <codepoint>1F650-1F67F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F680-1F6C5</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ROCKET..LEFT LUGGAGE</description>
    </record>
    <record>
      <codepoint>1F6C6-1F6FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1F700-1F773</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>ALCHEMICAL SYMBOL FOR QUINTESSENCE..ALCHEMICAL SYMBOL FOR HALF OUNCE</description>
    </record>
    <record>
      <codepoint>1F774-1FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>1FFFE-1FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>20000-2A6D6</codepoint>
      <property>PVALID</property>
      <description>&lt;CJK Ideograph Extension B&gt;..&lt;CJK Ideograph Extension B&gt;</description>
    </record>
    <record>
      <codepoint>2A6D7-2A6FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2A700-2B734</codepoint>
      <property>PVALID</property>
      <description>&lt;CJK Ideograph Extension C&gt;..&lt;CJK Ideograph Extension C&gt;</description>
    </record>
    <record>
      <codepoint>2B735-2B73F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2B740-2B81D</codepoint>
      <property>PVALID</property>
      <description>&lt;CJK Ideograph Extension D&gt;..&lt;CJK Ideograph Extension D&gt;</description>
    </record>
    <record>
      <codepoint>2B81E-2F7FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2F800-2FA1D</codepoint>
      <property>ID_DIS or FREE_PVAL</property>
      <description>CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D</description>
    </record>
    <record>
      <codepoint>2FA1E-2FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>2FFFE-2FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>30000-3FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>3FFFE-3FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>40000-4FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>4FFFE-4FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>50000-5FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>5FFFE-5FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>60000-6FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>6FFFE-6FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>70000-7FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>7FFFE-7FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>80000-8FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>8FFFE-8FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>90000-9FFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>9FFFE-9FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>A0000-AFFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>AFFFE-AFFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>B0000-BFFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>BFFFE-BFFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>C0000-CFFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>CFFFE-CFFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>D0000-DFFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>DFFFE-DFFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
    <record>
      <codepoint>E0000</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>E0001</codepoint>
      <property>DISALLOWED</property>
      <description>LANGUAGE TAG</description>
    </record>
    <record>
      <codepoint>E0002-E001F</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>E0020-E007F</codepoint>
      <property>DISALLOWED</property>
      <description>TAG SPACE..CANCEL TAG</description>
    </record>
    <record>
      <codepoint>E0080-E00FF</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>E0100-E01EF</codepoint>
      <property>DISALLOWED</property>
      <description>VARIATION SELECTOR-17..VARIATION SELECTOR-256</description>
    </record>
    <record>
      <codepoint>E01F0-EFFFD</codepoint>
      <property>UNASSIGNED</property>
      <description>&lt;RESERVED&gt;..&lt;RESERVED&gt;</description>
    </record>
    <record>
      <codepoint>EFFFE-10FFFF</codepoint>
      <property>DISALLOWED</property>
      <description>&lt;NOT A CHARACTER&gt;..&lt;NOT A CHARACTER&gt;</description>
    </record>
  </registry>
  <people/>
</registry>
--Apple-Mail=_77AEEF8F-5339-4E07-9F84-DB760FC54733
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=iso-8859-1



--Apple-Mail=_77AEEF8F-5339-4E07-9F84-DB760FC54733--

--Apple-Mail=_6F46D468-5080-43E6-B4B2-075CE3809C32
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org

iQEcBAEBAgAGBQJR9iw1AAoJEJk7o/xhVanarSwIAL7RJ7g20ExRxL6sWFMJuw6w
hSyIp1vDaP6q21zzKa5TOAc0aX9G6ZzBVLmGtw0sZMTLb16iTfET+icR415URld3
0m3hllOCqDVuFTX08zjyJfEg5OMhP7Qi3KwfZ8zF0W6wczK5wp5EJw5bs1VnqpxB
IdkvHuQHC8440CxjFkenQZ0xBKME4Q6vhF0jlQscP8iodArdah+976+DBj5UwspI
gOASNec70V5/eXL/GbDMlfFPBq69xLzMolpyn/lWUImJ3y0Yoca2tSSdysGjfZXI
U8bIw6Jy7lOfzWoQB4KYOCpdqSlw0vUtXrJVGp5llvRxgBvowI8vlp3uLdQ5j/A=
=2jvO
-----END PGP SIGNATURE-----

--Apple-Mail=_6F46D468-5080-43E6-B4B2-075CE3809C32--
