<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 2.0
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used for serialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <data name="WaitHandleCannotBeOpenedException_InvalidHandle" xml:space="preserve">
    <value>A WaitHandle with system-wide name '{0}' cannot be created. A WaitHandle of a different type might have the same name.</value>
  </data>
  <data name="CountdownEvent_Increment_AlreadyZero" xml:space="preserve">
    <value>The event is already signaled and cannot be incremented.</value>
  </data>
  <data name="SynchronizationLockException_IncorrectDispose" xml:space="preserve">
    <value>The lock is being disposed while still being used. It either is being held by a thread and/or has active waiters waiting to acquire the lock.</value>
  </data>
  <data name="LockRecursionException_ReadAfterWriteNotAllowed" xml:space="preserve">
    <value>A read lock may not be acquired with the write lock held in this mode.</value>
  </data>
  <data name="Barrier_RemoveParticipants_ArgumentOutOfRange" xml:space="preserve">
    <value>The participantCount argument must be less than or equal the number of participants.</value>
  </data>
  <data name="LockRecursionException_UpgradeAfterWriteNotAllowed" xml:space="preserve">
    <value>Upgradeable lock may not be acquired with write lock held in this mode. Acquiring Upgradeable lock gives the ability to read along with an option to upgrade to a writer.</value>
  </data>
  <data name="LockRecursionException_WriteAfterReadNotAllowed" xml:space="preserve">
    <value>Write lock may not be acquired with read lock held. This pattern is prone to deadlocks. Please ensure that read locks are released before taking a write lock. If an upgrade is necessary, use an upgrade lock in place of the read lock.</value>
  </data>
  <data name="LockRecursionException_RecursiveWriteNotAllowed" xml:space="preserve">
    <value>Recursive write lock acquisitions not allowed in this mode.</value>
  </data>
  <data name="Barrier_SignalAndWait_ArgumentOutOfRange" xml:space="preserve">
    <value>The specified timeout must represent a value between -1 and Int32.MaxValue, inclusive.</value>
  </data>
  <data name="BarrierPostPhaseException" xml:space="preserve">
    <value>The postPhaseAction failed with an exception.</value>
  </data>
  <data name="Argument_SemaphoreInitialMaximum" xml:space="preserve">
    <value>The initial count for the semaphore must be greater than or equal to zero and less than the maximum count.</value>
  </data>
  <data name="Barrier_RemoveParticipants_NonPositive_ArgumentOutOfRange" xml:space="preserve">
    <value>The participantCount argument must be a positive value.</value>
  </data>
  <data name="Barrier_Dispose" xml:space="preserve">
    <value>The barrier has been disposed.</value>
  </data>
  <data name="LockRecursionException_UpgradeAfterReadNotAllowed" xml:space="preserve">
    <value>Upgradeable lock may not be acquired with read lock held.</value>
  </data>
  <data name="Barrier_AddParticipants_NonPositive_ArgumentOutOfRange" xml:space="preserve">
    <value>The participantCount argument must be a positive value.</value>
  </data>
  <data name="LockRecursionException_RecursiveReadNotAllowed" xml:space="preserve">
    <value>Recursive read lock acquisitions not allowed in this mode.</value>
  </data>
  <data name="Common_OperationCanceled" xml:space="preserve">
    <value>The operation was canceled.</value>
  </data>
  <data name="InvalidNullEmptyArgument" xml:space="preserve">
    <value>Argument {0} cannot be null or zero-length.</value>
  </data>
  <data name="LockRecursionException_RecursiveUpgradeNotAllowed" xml:space="preserve">
    <value>Recursive upgradeable lock acquisitions not allowed in this mode.</value>
  </data>
  <data name="Barrier_ctor_ArgumentOutOfRange" xml:space="preserve">
    <value>The participantCount argument must be non-negative and less than or equal to 32767.</value>
  </data>
  <data name="Barrier_SignalAndWait_InvalidOperation_ZeroTotal" xml:space="preserve">
    <value>The barrier has no registered participants.</value>
  </data>
  <data name="CountdownEvent_Increment_AlreadyMax" xml:space="preserve">
    <value>The increment operation would cause the CurrentCount to overflow.</value>
  </data>
  <data name="Argument_WaitHandleNameTooLong" xml:space="preserve">
    <value>The name can be no more than 260 characters in length.</value>
  </data>
  <data name="Barrier_InvalidOperation_CalledFromPHA" xml:space="preserve">
    <value>This method may not be called from within the postPhaseAction.</value>
  </data>
  <data name="SynchronizationLockException_MisMatchedUpgrade" xml:space="preserve">
    <value>The upgradeable lock is being released without being held.</value>
  </data>
  <data name="Barrier_AddParticipants_Overflow_ArgumentOutOfRange" xml:space="preserve">
    <value>Adding participantCount participants would result in the number of participants exceeding the maximum number allowed.</value>
  </data>
  <data name="SynchronizationLockException_MisMatchedWrite" xml:space="preserve">
    <value>The write lock is being released without being held.</value>
  </data>
  <data name="Barrier_SignalAndWait_InvalidOperation_ThreadsExceeded" xml:space="preserve">
    <value>The number of threads using the barrier exceeded the total number of registered participants.</value>
  </data>
  <data name="CountdownEvent_Decrement_BelowZero" xml:space="preserve">
    <value>Invalid attempt made to decrement the event's count below zero.</value>
  </data>
  <data name="Barrier_RemoveParticipants_InvalidOperation" xml:space="preserve">
    <value>The participantCount argument is greater than the number of participants that haven't yet arrived at the barrier in this phase.</value>
  </data>
  <data name="SynchronizationLockException_MisMatchedRead" xml:space="preserve">
    <value>The read lock is being released without being held.</value>
  </data>
  <data name="UnknownError_Num" xml:space="preserve">
    <value>Unknown error '{0}'.</value>
  </data>
  <data name="ArgumentOutOfRange_NeedPosNum" xml:space="preserve">
    <value>Positive number required.</value>
  </data>
  <data name="ArgumentOutOfRange_NeedNonNegNumRequired" xml:space="preserve">
    <value>Non-negative number required.</value>
  </data>
</root>