home *** CD-ROM | disk | FTP | other *** search
/ ActiveX Programming Unleashed CD / AXU.iso / activex / demos / oletrial / samples / vb / mhminp / minp_wiz.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1995-11-30  |  60.3 KB  |  1,738 lines

  1. VERSION 4.00
  2. Begin VB.Form frmMaskWizard 
  3.    Caption         =   "Mask Wizard"
  4.    ClientHeight    =   4440
  5.    ClientLeft      =   2832
  6.    ClientTop       =   2892
  7.    ClientWidth     =   5568
  8.    BeginProperty Font 
  9.       name            =   "MS Sans Serif"
  10.       charset         =   0
  11.       weight          =   700
  12.       size            =   7.8
  13.       underline       =   0   'False
  14.       italic          =   0   'False
  15.       strikethrough   =   0   'False
  16.    EndProperty
  17.    ForeColor       =   &H80000008&
  18.    Height          =   4812
  19.    Icon            =   "minp_wiz.frx":0000
  20.    KeyPreview      =   -1  'True
  21.    Left            =   2784
  22.    LinkTopic       =   "Form1"
  23.    ScaleHeight     =   4440
  24.    ScaleWidth      =   5568
  25.    Top             =   2568
  26.    Width           =   5664
  27.    Begin VB.Frame fraSteps 
  28.       Caption         =   "Step 2 - Define The Valid Characters For Your 1st CMask"
  29.       Height          =   3432
  30.       Index           =   1
  31.       Left            =   6048
  32.       TabIndex        =   11
  33.       Tag             =   "slide frame"
  34.       Top             =   828
  35.       Visible         =   0   'False
  36.       Width           =   5412
  37.       Begin VB.Frame Frame2 
  38.          Height          =   2208
  39.          Left            =   648
  40.          TabIndex        =   22
  41.          Top             =   468
  42.          Width           =   4080
  43.          Begin VB.TextBox txtCMaskCharacters 
  44.             Height          =   288
  45.             Index           =   0
  46.             Left            =   108
  47.             ScrollBars      =   1  'Horizontal
  48.             TabIndex        =   2
  49.             Text            =   "ABCabc"
  50.             Top             =   1620
  51.             Width           =   3792
  52.          End
  53.          Begin VB.Label lblCMaskName 
  54.             Alignment       =   2  'Center
  55.             BorderStyle     =   1  'Fixed Single
  56.             Caption         =   "A"
  57.             Height          =   228
  58.             Index           =   0
  59.             Left            =   1872
  60.             TabIndex        =   33
  61.             Top             =   684
  62.             Width           =   336
  63.          End
  64.          Begin VB.Label Label6 
  65.             Alignment       =   2  'Center
  66.             Caption         =   "are the following characters..."
  67.             Height          =   336
  68.             Left            =   144
  69.             TabIndex        =   24
  70.             Top             =   1116
  71.             Width           =   3792
  72.          End
  73.          Begin VB.Label Label3 
  74.             Alignment       =   2  'Center
  75.             Caption         =   "The valid characters for the CMask called"
  76.             Height          =   336
  77.             Left            =   144
  78.             TabIndex        =   23
  79.             Top             =   252
  80.             Width           =   3792
  81.          End
  82.       End
  83.       Begin Threed.SSPanel SSPanel2 
  84.          Height          =   480
  85.          Left            =   648
  86.          TabIndex        =   25
  87.          Top             =   2772
  88.          Width           =   4080
  89.          _Version        =   65536
  90.          _ExtentX        =   7197
  91.          _ExtentY        =   847
  92.          _StockProps     =   15
  93.          Caption         =   "Fill the bottem text box with the characters that you want in your first CMask"
  94.          BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  95.             name            =   "MS Sans Serif"
  96.             charset         =   0
  97.             weight          =   400
  98.             size            =   7.8
  99.             underline       =   0   'False
  100.             italic          =   -1  'True
  101.             strikethrough   =   0   'False
  102.          EndProperty
  103.          BevelWidth      =   0
  104.       End
  105.    End
  106.    Begin VB.Frame fraSteps 
  107.       Caption         =   "Step 3 - Define The Valid Characters For Your 2nd CMask"
  108.       Height          =   3432
  109.       Index           =   2
  110.       Left            =   5904
  111.       TabIndex        =   16
  112.       Tag             =   "slide frame"
  113.       Top             =   576
  114.       Width           =   5412
  115.       Begin VB.Frame Frame3 
  116.          Height          =   2208
  117.          Left            =   648
  118.          TabIndex        =   30
  119.          Top             =   468
  120.          Width           =   4080
  121.          Begin VB.TextBox txtCMaskCharacters 
  122.             Height          =   288
  123.             Index           =   1
  124.             Left            =   108
  125.             ScrollBars      =   1  'Horizontal
  126.             TabIndex        =   3
  127.             Text            =   "0123456789"
  128.             Top             =   1620
  129.             Width           =   3792
  130.          End
  131.          Begin VB.Label lblCMaskName 
  132.             Alignment       =   2  'Center
  133.             BorderStyle     =   1  'Fixed Single
  134.             Caption         =   "9"
  135.             Height          =   228
  136.             Index           =   1
  137.             Left            =   1872
  138.             TabIndex        =   34
  139.             Top             =   684
  140.             Width           =   336
  141.          End
  142.          Begin VB.Label Label8 
  143.             Alignment       =   2  'Center
  144.             Caption         =   "The valid characters for the CMask called"
  145.             Height          =   336
  146.             Left            =   144
  147.             TabIndex        =   32
  148.             Top             =   252
  149.             Width           =   3792
  150.          End
  151.          Begin VB.Label Label7 
  152.             Alignment       =   2  'Center
  153.             Caption         =   "are the following characters..."
  154.             Height          =   336
  155.             Left            =   144
  156.             TabIndex        =   31
  157.             Top             =   1116
  158.             Width           =   3792
  159.          End
  160.       End
  161.       Begin Threed.SSPanel SSPanel3 
  162.          Height          =   480
  163.          Left            =   648
  164.          TabIndex        =   29
  165.          Top             =   2772
  166.          Width           =   4080
  167.          _Version        =   65536
  168.          _ExtentX        =   7197
  169.          _ExtentY        =   847
  170.          _StockProps     =   15
  171.          Caption         =   "Fill the bottem text box with the characters that you want in your second CMask"
  172.          BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  173.             name            =   "MS Sans Serif"
  174.             charset         =   0
  175.             weight          =   400
  176.             size            =   7.8
  177.             underline       =   0   'False
  178.             italic          =   -1  'True
  179.             strikethrough   =   0   'False
  180.          EndProperty
  181.          BevelWidth      =   0
  182.       End
  183.    End
  184.    Begin VB.Timer tmrLight 
  185.       Interval        =   501
  186.       Left            =   504
  187.       Top             =   4860
  188.    End
  189.    Begin VB.Frame fraSteps 
  190.       Caption         =   "Step 4 - Build Your Input Mask"
  191.       Height          =   3432
  192.       Index           =   3
  193.       Left            =   5760
  194.       TabIndex        =   15
  195.       Tag             =   "slide frame"
  196.       Top             =   324
  197.       Width           =   5412
  198.       Begin VB.TextBox txtCMaskCharactersName 
  199.          Height          =   288
  200.          Index           =   1
  201.          Left            =   2844
  202.          Locked          =   -1  'True
  203.          ScrollBars      =   2  'Vertical
  204.          TabIndex        =   6
  205.          Text            =   "0123456789"
  206.          Top             =   1656
  207.          Width           =   1992
  208.       End
  209.       Begin VB.TextBox txtCMaskCharactersName 
  210.          Height          =   288
  211.          Index           =   0
  212.          Left            =   396
  213.          Locked          =   -1  'True
  214.          ScrollBars      =   2  'Vertical
  215.          TabIndex        =   5
  216.          Text            =   "ABCabc"
  217.          Top             =   1656
  218.          Width           =   1992
  219.       End
  220.       Begin VB.TextBox txtMask 
  221.          Height          =   288
  222.          Left            =   1440
  223.          TabIndex        =   4
  224.          Text            =   "AAA9999"
  225.          Top             =   2952
  226.          Width           =   2532
  227.       End
  228.       Begin VB.Label lblCMaskName 
  229.          Alignment       =   2  'Center
  230.          BorderStyle     =   1  'Fixed Single
  231.          Caption         =   "9"
  232.          Height          =   300
  233.          Index           =   3
  234.          Left            =   3672
  235.          TabIndex        =   36
  236.          Top             =   756
  237.          Width           =   336
  238.       End
  239.       Begin VB.Label lblCMaskName 
  240.          Alignment       =   2  'Center
  241.          BorderStyle     =   1  'Fixed Single
  242.          Caption         =   "A"
  243.          Height          =   300
  244.          Index           =   2
  245.          Left            =   1224
  246.          TabIndex        =   35
  247.          Top             =   756
  248.          Width           =   336
  249.       End
  250.       Begin VB.Label Label11 
  251.          Alignment       =   2  'Center
  252.          Caption         =   "...the following sets of characters, respectively,  can be entered by the user:"
  253.          Height          =   480
  254.          Left            =   108
  255.          TabIndex        =   28
  256.          Top             =   1116
  257.          Width           =   5196
  258.       End
  259.       Begin VB.Label Label10 
  260.          Alignment       =   2  'Center
  261.          Caption         =   "In each position of the control which has either one of these characters..."
  262.          Height          =   408
  263.          Left            =   108
  264.          TabIndex        =   27
  265.          Top             =   324
  266.          Width           =   5196
  267.       End
  268.       Begin VB.Label Label9 
  269.          Alignment       =   2  'Center
  270.          Caption         =   $"minp_wiz.frx":0442
  271.          Height          =   732
  272.          Left            =   108
  273.          TabIndex        =   26
  274.          Top             =   2160
  275.          Width           =   5196
  276.       End
  277.    End
  278.    Begin VB.Frame fraSteps 
  279.       Caption         =   "Step 1 - Give Each Character Mask Set An Arbitrary..."
  280.       Height          =   3432
  281.       Index           =   0
  282.       Left            =   72
  283.       TabIndex        =   10
  284.       Tag             =   "slide frame"
  285.       Top             =   108
  286.       Width           =   5412
  287.       Begin VB.Frame Frame1 
  288.          Height          =   840
  289.          Left            =   684
  290.          TabIndex        =   19
  291.          Top             =   2088
  292.          Width           =   4044
  293.          Begin VB.TextBox txtCMask 
  294.             Height          =   288
  295.             Index           =   0
  296.             Left            =   1440
  297.             TabIndex        =   0
  298.             Text            =   "A"
  299.             Top             =   324
  300.             Width           =   300
  301.          End
  302.          Begin VB.TextBox txtCMask 
  303.             Height          =   288
  304.             Index           =   1
  305.             Left            =   3024
  306.             MaxLength       =   1
  307.             TabIndex        =   1
  308.             Text            =   "9"
  309.             Top             =   324
  310.             Width           =   300
  311.          End
  312.          Begin VB.Label Label5 
  313.             Alignment       =   1  'Right Justify
  314.             Caption         =   "CMask(1)"
  315.             Height          =   264
  316.             Left            =   1764
  317.             TabIndex        =   21
  318.             Top             =   360
  319.             Width           =   1164
  320.          End
  321.          Begin VB.Label Label4 
  322.             Alignment       =   1  'Right Justify
  323.             Caption         =   "CMask(0)"
  324.             Height          =   264
  325.             Left            =   72
  326.             TabIndex        =   20
  327.             Top             =   360
  328.             Width           =   1272
  329.          End
  330.       End
  331.       Begin VB.Label Label2 
  332.          Caption         =   $"minp_wiz.frx":04F3
  333.          Height          =   1020
  334.          Left            =   324
  335.          TabIndex        =   18
  336.          Top             =   936
  337.          Width           =   4764
  338.       End
  339.       Begin VB.Label Label1 
  340.          Caption         =   "...Name Which Be Used Later To Reference It"
  341.          Height          =   444
  342.          Left            =   792
  343.          TabIndex        =   17
  344.          Top             =   216
  345.          Width           =   4332
  346.       End
  347.    End
  348.    Begin VB.CommandButton cmdSlide 
  349.       Appearance      =   0  'Flat
  350.       BackColor       =   &H00D9A8AE&
  351.       Caption         =   "< &Back"
  352.       Enabled         =   0   'False
  353.       BeginProperty Font 
  354.          name            =   "MS Sans Serif"
  355.          charset         =   0
  356.          weight          =   400
  357.          size            =   7.8
  358.          underline       =   0   'False
  359.          italic          =   0   'False
  360.          strikethrough   =   0   'False
  361.       EndProperty
  362.       Height          =   372
  363.       Index           =   0
  364.       Left            =   1752
  365.       TabIndex        =   7
  366.       Top             =   3984
  367.       Width           =   1212
  368.    End
  369.    Begin VB.CommandButton cmdSlide 
  370.       Appearance      =   0  'Flat
  371.       BackColor       =   &H00D9A8AE&
  372.       Caption         =   "&Next >"
  373.       Default         =   -1  'True
  374.       BeginProperty Font 
  375.          name            =   "MS Sans Serif"
  376.          charset         =   0
  377.          weight          =   400
  378.          size            =   7.8
  379.          underline       =   0   'False
  380.          italic          =   0   'False
  381.          strikethrough   =   0   'False
  382.       EndProperty
  383.       Height          =   372
  384.       Index           =   1
  385.       Left            =   2952
  386.       TabIndex        =   8
  387.       Top             =   3984
  388.       Width           =   1212
  389.    End
  390.    Begin VB.Timer tmrStatusLine 
  391.       Enabled         =   0   'False
  392.       Left            =   144
  393.       Top             =   4860
  394.    End
  395.    Begin Threed.SSPanel panStatusLine 
  396.       Height          =   264
  397.       Left            =   72
  398.       TabIndex        =   13
  399.       Top             =   3636
  400.       Width           =   5412
  401.       _Version        =   65536
  402.       _ExtentX        =   9546
  403.       _ExtentY        =   466
  404.       _StockProps     =   15
  405.       Caption         =   "Ready..."
  406.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  407.          name            =   "MS Sans Serif"
  408.          charset         =   0
  409.          weight          =   400
  410.          size            =   7.8
  411.          underline       =   0   'False
  412.          italic          =   0   'False
  413.          strikethrough   =   0   'False
  414.       EndProperty
  415.       BevelWidth      =   0
  416.       Font3D          =   3
  417.    End
  418.    Begin Threed.SSPanel SSPanel1 
  419.       Height          =   24
  420.       Left            =   -1800
  421.       TabIndex        =   14
  422.       Top             =   0
  423.       Width           =   9336
  424.       _Version        =   65536
  425.       _ExtentX        =   16468
  426.       _ExtentY        =   42
  427.       _StockProps     =   15
  428.       Caption         =   "SSPanel1"
  429.       BackColor       =   12038095
  430.       BevelOuter      =   1
  431.    End
  432.    Begin VB.CommandButton cmdClose 
  433.       Appearance      =   0  'Flat
  434.       BackColor       =   &H00D9A8AE&
  435.       Cancel          =   -1  'True
  436.       Caption         =   "&Close"
  437.       BeginProperty Font 
  438.          name            =   "MS Sans Serif"
  439.          charset         =   0
  440.          weight          =   400
  441.          size            =   7.8
  442.          underline       =   0   'False
  443.          italic          =   0   'False
  444.          strikethrough   =   0   'False
  445.       EndProperty
  446.       Height          =   372
  447.       Left            =   4284
  448.       TabIndex        =   9
  449.       Top             =   3996
  450.       Width           =   1212
  451.    End
  452.    Begin VB.Frame fraSteps 
  453.       Caption         =   "Step 5 - All Done!"
  454.       Height          =   3432
  455.       Index           =   4
  456.       Left            =   5616
  457.       TabIndex        =   12
  458.       Tag             =   "slide frame"
  459.       Top             =   72
  460.       Visible         =   0   'False
  461.       Width           =   5412
  462.       Begin VB.TextBox txtCMaskCharactersName 
  463.          Height          =   288
  464.          Index           =   3
  465.          Left            =   3096
  466.          Locked          =   -1  'True
  467.          ScrollBars      =   2  'Vertical
  468.          TabIndex        =   43
  469.          Text            =   "0123456789"
  470.          Top             =   1872
  471.          Width           =   2064
  472.       End
  473.       Begin VB.TextBox txtCMaskCharactersName 
  474.          Height          =   288
  475.          Index           =   2
  476.          Left            =   3096
  477.          Locked          =   -1  'True
  478.          ScrollBars      =   2  'Vertical
  479.          TabIndex        =   42
  480.          Text            =   "ABCabc"
  481.          Top             =   1476
  482.          Width           =   2064
  483.       End
  484.       Begin VB.TextBox txtMaskDefinition 
  485.          Height          =   288
  486.          Left            =   1476
  487.          Locked          =   -1  'True
  488.          TabIndex        =   37
  489.          TabStop         =   0   'False
  490.          Top             =   2556
  491.          Width           =   3684
  492.       End
  493.       Begin Threed.SSPanel SSPanel4 
  494.          Height          =   912
  495.          Left            =   252
  496.          TabIndex        =   41
  497.          Top             =   324
  498.          Width           =   4944
  499.          _Version        =   65536
  500.          _ExtentX        =   8721
  501.          _ExtentY        =   1609
  502.          _StockProps     =   15
  503.          Caption         =   $"minp_wiz.frx":05B6
  504.          BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  505.             name            =   "MS Sans Serif"
  506.             charset         =   0
  507.             weight          =   400
  508.             size            =   9.6
  509.             underline       =   0   'False
  510.             italic          =   0   'False
  511.             strikethrough   =   0   'False
  512.          EndProperty
  513.          BevelWidth      =   0
  514.          Font3D          =   3
  515.       End
  516.       Begin VB.Label Label17 
  517.          Alignment       =   2  'Center
  518.          Caption         =   "="
  519.          Height          =   228
  520.          Left            =   2700
  521.          TabIndex        =   49
  522.          Top             =   1512
  523.          Width           =   372
  524.       End
  525.       Begin VB.Label Label13 
  526.          Alignment       =   2  'Center
  527.          Caption         =   "="
  528.          Height          =   228
  529.          Left            =   2700
  530.          TabIndex        =   47
  531.          Top             =   1908
  532.          Width           =   372
  533.       End
  534.       Begin VB.Label lblCMaskName 
  535.          Alignment       =   2  'Center
  536.          BorderStyle     =   1  'Fixed Single
  537.          Caption         =   "9"
  538.          Height          =   228
  539.          Index           =   5
  540.          Left            =   2304
  541.          TabIndex        =   45
  542.          Top             =   1908
  543.          Width           =   336
  544.       End
  545.       Begin VB.Label lblCMaskName 
  546.          Alignment       =   2  'Center
  547.          BorderStyle     =   1  'Fixed Single
  548.          Caption         =   "A"
  549.          Height          =   228
  550.          Index           =   4
  551.          Left            =   2304
  552.          TabIndex        =   44
  553.          Top             =   1512
  554.          Width           =   336
  555.       End
  556.       Begin VB.Label Label15 
  557.          Alignment       =   1  'Right Justify
  558.          Caption         =   "Mask Definition"
  559.          BeginProperty Font 
  560.             name            =   "MS Sans Serif"
  561.             charset         =   0
  562.             weight          =   400
  563.             size            =   7.8
  564.             underline       =   0   'False
  565.             italic          =   0   'False
  566.             strikethrough   =   0   'False
  567.          EndProperty
  568.          Height          =   264
  569.          Left            =   108
  570.          TabIndex        =   40
  571.          Top             =   2592
  572.          Width           =   1308
  573.       End
  574.       Begin VB.Label Label14 
  575.          Alignment       =   1  'Right Justify
  576.          Caption         =   "MhMaskInput"
  577.          BeginProperty Font 
  578.             name            =   "MS Sans Serif"
  579.             charset         =   0
  580.             weight          =   400
  581.             size            =   7.8
  582.             underline       =   0   'False
  583.             italic          =   0   'False
  584.             strikethrough   =   0   'False
  585.          EndProperty
  586.          Height          =   264
  587.          Left            =   108
  588.          TabIndex        =   39
  589.          Top             =   2952
  590.          Width           =   1308
  591.       End
  592.       Begin MhinmskLib.MhMaskInput MhMaskInputWiz 
  593.          Height          =   300
  594.          Left            =   1476
  595.          TabIndex        =   38
  596.          Top             =   2916
  597.          Width           =   3684
  598.          _Version        =   65536
  599.          _ExtentX        =   6498
  600.          _ExtentY        =   529
  601.          _StockProps     =   77
  602.          TintColor       =   16711935
  603.          BevelSize       =   1
  604.          BorderColor     =   -2147483642
  605.          FillColor       =   -2147483633
  606.          LightColor      =   -2147483628
  607.          ShadowColor     =   -2147483632
  608.          TextColor       =   -2147483630
  609.          Text            =   "MhMaskInputWiz"
  610.          Indent          =   2
  611.          AutoHScroll     =   -1  'True
  612.          CaretColor      =   -2147483642
  613.          CaretVisible    =   -1  'True
  614.          VAlignment      =   0
  615.          INIFile         =   "mhmask.ini"
  616.          TextLength      =   32
  617.          MousePointer    =   3
  618.          CM(0)           =   ""
  619.          CMC(0)          =   ""
  620.          CP(0)           =   ""
  621.          CM(1)           =   ""
  622.          CMC(1)          =   ""
  623.          CP(1)           =   ""
  624.          CM(2)           =   ""
  625.          CMC(2)          =   ""
  626.          CP(2)           =   ""
  627.          CM(3)           =   ""
  628.          CMC(3)          =   ""
  629.          CP(3)           =   ""
  630.          CM(4)           =   ""
  631.          CMC(4)          =   ""
  632.          CP(4)           =   ""
  633.          CM(5)           =   ""
  634.          CMC(5)          =   ""
  635.          CP(5)           =   ""
  636.          CM(6)           =   ""
  637.          CMC(6)          =   ""
  638.          CP(6)           =   ""
  639.          CM(7)           =   ""
  640.          CMC(7)          =   ""
  641.          CP(7)           =   ""
  642.          CM(8)           =   ""
  643.          CMC(8)          =   ""
  644.          CP(8)           =   ""
  645.          CM(9)           =   ""
  646.          CMC(9)          =   ""
  647.          CP(9)           =   ""
  648.          CM(10)          =   ""
  649.          CMC(10)         =   ""
  650.          CP(10)          =   ""
  651.          CM(11)          =   ""
  652.          CMC(11)         =   ""
  653.          CP(11)          =   ""
  654.          CM(12)          =   ""
  655.          CMC(12)         =   ""
  656.          CP(12)          =   ""
  657.          CM(13)          =   ""
  658.          CMC(13)         =   ""
  659.          CP(13)          =   ""
  660.          CM(14)          =   ""
  661.          CMC(14)         =   ""
  662.          CP(14)          =   ""
  663.          CM(15)          =   ""
  664.          CMC(15)         =   ""
  665.          CP(15)          =   ""
  666.          CM(16)          =   ""
  667.          CMC(16)         =   ""
  668.          CP(16)          =   ""
  669.          CM(17)          =   ""
  670.          CMC(17)         =   ""
  671.          CP(17)          =   ""
  672.          CM(18)          =   ""
  673.          CMC(18)         =   ""
  674.          CP(18)          =   ""
  675.          CM(19)          =   ""
  676.          CMC(19)         =   ""
  677.          CP(19)          =   ""
  678.          CM(20)          =   ""
  679.          CMC(20)         =   ""
  680.          CP(20)          =   ""
  681.          CM(21)          =   ""
  682.          CMC(21)         =   ""
  683.          CP(21)          =   ""
  684.          CM(22)          =   ""
  685.          CMC(22)         =   ""
  686.          CP(22)          =   ""
  687.          CM(23)          =   ""
  688.          CMC(23)         =   ""
  689.          CP(23)          =   ""
  690.          CM(24)          =   ""
  691.          CMC(24)         =   ""
  692.          CP(24)          =   ""
  693.          CM(25)          =   ""
  694.          CMC(25)         =   ""
  695.          CP(25)          =   ""
  696.          CM(26)          =   ""
  697.          CMC(26)         =   ""
  698.          CP(26)          =   ""
  699.          CM(27)          =   ""
  700.          CMC(27)         =   ""
  701.          CP(27)          =   ""
  702.          CM(28)          =   ""
  703.          CMC(28)         =   ""
  704.          CP(28)          =   ""
  705.          CM(29)          =   ""
  706.          CMC(29)         =   ""
  707.          CP(29)          =   ""
  708.          CM(30)          =   ""
  709.          CMC(30)         =   ""
  710.          CP(30)          =   ""
  711.          CM(31)          =   ""
  712.          CMC(31)         =   ""
  713.          CP(31)          =   ""
  714.          CM(32)          =   ""
  715.          CMC(32)         =   ""
  716.          CP(32)          =   ""
  717.          CM(33)          =   ""
  718.          CMC(33)         =   ""
  719.          CP(33)          =   ""
  720.          CM(34)          =   ""
  721.          CMC(34)         =   ""
  722.          CP(34)          =   ""
  723.          CM(35)          =   ""
  724.          CMC(35)         =   ""
  725.          CP(35)          =   ""
  726.          CM(36)          =   ""
  727.          CMC(36)         =   ""
  728.          CP(36)          =   ""
  729.          CM(37)          =   ""
  730.          CMC(37)         =   ""
  731.          CP(37)          =   ""
  732.          CM(38)          =   ""
  733.          CMC(38)         =   ""
  734.          CP(38)          =   ""
  735.          CM(39)          =   ""
  736.          CMC(39)         =   ""
  737.          CP(39)          =   ""
  738.          CM(40)          =   ""
  739.          CMC(40)         =   ""
  740.          CP(40)          =   ""
  741.          CM(41)          =   ""
  742.          CMC(41)         =   ""
  743.          CP(41)          =   ""
  744.          CM(42)          =   ""
  745.          CMC(42)         =   ""
  746.          CP(42)          =   ""
  747.          CM(43)          =   ""
  748.          CMC(43)         =   ""
  749.          CP(43)          =   ""
  750.          CM(44)          =   ""
  751.          CMC(44)         =   ""
  752.          CP(44)          =   ""
  753.          CM(45)          =   ""
  754.          CMC(45)         =   ""
  755.          CP(45)          =   ""
  756.          CM(46)          =   ""
  757.          CMC(46)         =   ""
  758.          CP(46)          =   ""
  759.          CM(47)          =   ""
  760.          CMC(47)         =   ""
  761.          CP(47)          =   ""
  762.          CM(48)          =   ""
  763.          CMC(48)         =   ""
  764.          CP(48)          =   ""
  765.          CM(49)          =   ""
  766.          CMC(49)         =   ""
  767.          CP(49)          =   ""
  768.          CM(50)          =   ""
  769.          CMC(50)         =   ""
  770.          CP(50)          =   ""
  771.          CM(51)          =   ""
  772.          CMC(51)         =   ""
  773.          CP(51)          =   ""
  774.          CM(52)          =   ""
  775.          CMC(52)         =   ""
  776.          CP(52)          =   ""
  777.          CM(53)          =   ""
  778.          CMC(53)         =   ""
  779.          CP(53)          =   ""
  780.          CM(54)          =   ""
  781.          CMC(54)         =   ""
  782.          CP(54)          =   ""
  783.          CM(55)          =   ""
  784.          CMC(55)         =   ""
  785.          CP(55)          =   ""
  786.          CM(56)          =   ""
  787.          CMC(56)         =   ""
  788.          CP(56)          =   ""
  789.          CM(57)          =   ""
  790.          CMC(57)         =   ""
  791.          CP(57)          =   ""
  792.          CM(58)          =   ""
  793.          CMC(58)         =   ""
  794.          CP(58)          =   ""
  795.          CM(59)          =   ""
  796.          CMC(59)         =   ""
  797.          CP(59)          =   ""
  798.          CM(60)          =   ""
  799.          CMC(60)         =   ""
  800.          CP(60)          =   ""
  801.          CM(61)          =   ""
  802.          CMC(61)         =   ""
  803.          CP(61)          =   ""
  804.          CM(62)          =   ""
  805.          CMC(62)         =   ""
  806.          CP(62)          =   ""
  807.          CM(63)          =   ""
  808.          CMC(63)         =   ""
  809.          CP(63)          =   ""
  810.          CM(64)          =   ""
  811.          CMC(64)         =   ""
  812.          CP(64)          =   ""
  813.          CM(65)          =   ""
  814.          CMC(65)         =   ""
  815.          CP(65)          =   ""
  816.          CM(66)          =   ""
  817.          CMC(66)         =   ""
  818.          CP(66)          =   ""
  819.          CM(67)          =   ""
  820.          CMC(67)         =   ""
  821.          CP(67)          =   ""
  822.          CM(68)          =   ""
  823.          CMC(68)         =   ""
  824.          CP(68)          =   ""
  825.          CM(69)          =   ""
  826.          CMC(69)         =   ""
  827.          CP(69)          =   ""
  828.          CM(70)          =   ""
  829.          CMC(70)         =   ""
  830.          CP(70)          =   ""
  831.          CM(71)          =   ""
  832.          CMC(71)         =   ""
  833.          CP(71)          =   ""
  834.          CM(72)          =   ""
  835.          CMC(72)         =   ""
  836.          CP(72)          =   ""
  837.          CM(73)          =   ""
  838.          CMC(73)         =   ""
  839.          CP(73)          =   ""
  840.          CM(74)          =   ""
  841.          CMC(74)         =   ""
  842.          CP(74)          =   ""
  843.          CM(75)          =   ""
  844.          CMC(75)         =   ""
  845.          CP(75)          =   ""
  846.          CM(76)          =   ""
  847.          CMC(76)         =   ""
  848.          CP(76)          =   ""
  849.          CM(77)          =   ""
  850.          CMC(77)         =   ""
  851.          CP(77)          =   ""
  852.          CM(78)          =   ""
  853.          CMC(78)         =   ""
  854.          CP(78)          =   ""
  855.          CM(79)          =   ""
  856.          CMC(79)         =   ""
  857.          CP(79)          =   ""
  858.          CM(80)          =   ""
  859.          CMC(80)         =   ""
  860.          CP(80)          =   ""
  861.          CM(81)          =   ""
  862.          CMC(81)         =   ""
  863.          CP(81)          =   ""
  864.          CM(82)          =   ""
  865.          CMC(82)         =   ""
  866.          CP(82)          =   ""
  867.          CM(83)          =   ""
  868.          CMC(83)         =   ""
  869.          CP(83)          =   ""
  870.          CM(84)          =   ""
  871.          CMC(84)         =   ""
  872.          CP(84)          =   ""
  873.          CM(85)          =   ""
  874.          CMC(85)         =   ""
  875.          CP(85)          =   ""
  876.          CM(86)          =   ""
  877.          CMC(86)         =   ""
  878.          CP(86)          =   ""
  879.          CM(87)          =   ""
  880.          CMC(87)         =   ""
  881.          CP(87)          =   ""
  882.          CM(88)          =   ""
  883.          CMC(88)         =   ""
  884.          CP(88)          =   ""
  885.          CM(89)          =   ""
  886.          CMC(89)         =   ""
  887.          CP(89)          =   ""
  888.          CM(90)          =   ""
  889.          CMC(90)         =   ""
  890.          CP(90)          =   ""
  891.          CM(91)          =   ""
  892.          CMC(91)         =   ""
  893.          CP(91)          =   ""
  894.          CM(92)          =   ""
  895.          CMC(92)         =   ""
  896.          CP(92)          =   ""
  897.          CM(93)          =   ""
  898.          CMC(93)         =   ""
  899.          CP(93)          =   ""
  900.          CM(94)          =   ""
  901.          CMC(94)         =   ""
  902.          CP(94)          =   ""
  903.          CM(95)          =   ""
  904.          CMC(95)         =   ""
  905.          CP(95)          =   ""
  906.          CM(96)          =   ""
  907.          CMC(96)         =   ""
  908.          CP(96)          =   ""
  909.          CM(97)          =   ""
  910.          CMC(97)         =   ""
  911.          CP(97)          =   ""
  912.          CM(98)          =   ""
  913.          CMC(98)         =   ""
  914.          CP(98)          =   ""
  915.          CM(99)          =   ""
  916.          CMC(99)         =   ""
  917.          CP(99)          =   ""
  918.          CM(100)         =   ""
  919.          CMC(100)        =   ""
  920.          CP(100)         =   ""
  921.          CM(101)         =   ""
  922.          CMC(101)        =   ""
  923.          CP(101)         =   ""
  924.          CM(102)         =   ""
  925.          CMC(102)        =   ""
  926.          CP(102)         =   ""
  927.          CM(103)         =   ""
  928.          CMC(103)        =   ""
  929.          CP(103)         =   ""
  930.          CM(104)         =   ""
  931.          CMC(104)        =   ""
  932.          CP(104)         =   ""
  933.          CM(105)         =   ""
  934.          CMC(105)        =   ""
  935.          CP(105)         =   ""
  936.          CM(106)         =   ""
  937.          CMC(106)        =   ""
  938.          CP(106)         =   ""
  939.          CM(107)         =   ""
  940.          CMC(107)        =   ""
  941.          CP(107)         =   ""
  942.          CM(108)         =   ""
  943.          CMC(108)        =   ""
  944.          CP(108)         =   ""
  945.          CM(109)         =   ""
  946.          CMC(109)        =   ""
  947.          CP(109)         =   ""
  948.          CM(110)         =   ""
  949.          CMC(110)        =   ""
  950.          CP(110)         =   ""
  951.          CM(111)         =   ""
  952.          CMC(111)        =   ""
  953.          CP(111)         =   ""
  954.          CM(112)         =   ""
  955.          CMC(112)        =   ""
  956.          CP(112)         =   ""
  957.          CM(113)         =   ""
  958.          CMC(113)        =   ""
  959.          CP(113)         =   ""
  960.          CM(114)         =   ""
  961.          CMC(114)        =   ""
  962.          CP(114)         =   ""
  963.          CM(115)         =   ""
  964.          CMC(115)        =   ""
  965.          CP(115)         =   ""
  966.          CM(116)         =   ""
  967.          CMC(116)        =   ""
  968.          CP(116)         =   ""
  969.          CM(117)         =   ""
  970.          CMC(117)        =   ""
  971.          CP(117)         =   ""
  972.          CM(118)         =   ""
  973.          CMC(118)        =   ""
  974.          CP(118)         =   ""
  975.          CM(119)         =   ""
  976.          CMC(119)        =   ""
  977.          CP(119)         =   ""
  978.          CM(120)         =   ""
  979.          CMC(120)        =   ""
  980.          CP(120)         =   ""
  981.          CM(121)         =   ""
  982.          CMC(121)        =   ""
  983.          CP(121)         =   ""
  984.          CM(122)         =   ""
  985.          CMC(122)        =   ""
  986.          CP(122)         =   ""
  987.          CM(123)         =   ""
  988.          CMC(123)        =   ""
  989.          CP(123)         =   ""
  990.          CM(124)         =   ""
  991.          CMC(124)        =   ""
  992.          CP(124)         =   ""
  993.          CM(125)         =   ""
  994.          CMC(125)        =   ""
  995.          CP(125)         =   ""
  996.          CM(126)         =   ""
  997.          CMC(126)        =   ""
  998.          CP(126)         =   ""
  999.          CM(127)         =   ""
  1000.          CMC(127)        =   ""
  1001.          CP(127)         =   ""
  1002.          CM(128)         =   ""
  1003.          CMC(128)        =   ""
  1004.          CP(128)         =   ""
  1005.          CM(129)         =   ""
  1006.          CMC(129)        =   ""
  1007.          CP(129)         =   ""
  1008.          CM(130)         =   ""
  1009.          CMC(130)        =   ""
  1010.          CP(130)         =   ""
  1011.          CM(131)         =   ""
  1012.          CMC(131)        =   ""
  1013.          CP(131)         =   ""
  1014.          CM(132)         =   ""
  1015.          CMC(132)        =   ""
  1016.          CP(132)         =   ""
  1017.          CM(133)         =   ""
  1018.          CMC(133)        =   ""
  1019.          CP(133)         =   ""
  1020.          CM(134)         =   ""
  1021.          CMC(134)        =   ""
  1022.          CP(134)         =   ""
  1023.          CM(135)         =   ""
  1024.          CMC(135)        =   ""
  1025.          CP(135)         =   ""
  1026.          CM(136)         =   ""
  1027.          CMC(136)        =   ""
  1028.          CP(136)         =   ""
  1029.          CM(137)         =   ""
  1030.          CMC(137)        =   ""
  1031.          CP(137)         =   ""
  1032.          CM(138)         =   ""
  1033.          CMC(138)        =   ""
  1034.          CP(138)         =   ""
  1035.          CM(139)         =   ""
  1036.          CMC(139)        =   ""
  1037.          CP(139)         =   ""
  1038.          CM(140)         =   ""
  1039.          CMC(140)        =   ""
  1040.          CP(140)         =   ""
  1041.          CM(141)         =   ""
  1042.          CMC(141)        =   ""
  1043.          CP(141)         =   ""
  1044.          CM(142)         =   ""
  1045.          CMC(142)        =   ""
  1046.          CP(142)         =   ""
  1047.          CM(143)         =   ""
  1048.          CMC(143)        =   ""
  1049.          CP(143)         =   ""
  1050.          CM(144)         =   ""
  1051.          CMC(144)        =   ""
  1052.          CP(144)         =   ""
  1053.          CM(145)         =   ""
  1054.          CMC(145)        =   ""
  1055.          CP(145)         =   ""
  1056.          CM(146)         =   ""
  1057.          CMC(146)        =   ""
  1058.          CP(146)         =   ""
  1059.          CM(147)         =   ""
  1060.          CMC(147)        =   ""
  1061.          CP(147)         =   ""
  1062.          CM(148)         =   ""
  1063.          CMC(148)        =   ""
  1064.          CP(148)         =   ""
  1065.          CM(149)         =   ""
  1066.          CMC(149)        =   ""
  1067.          CP(149)         =   ""
  1068.          CM(150)         =   ""
  1069.          CMC(150)        =   ""
  1070.          CP(150)         =   ""
  1071.          CM(151)         =   ""
  1072.          CMC(151)        =   ""
  1073.          CP(151)         =   ""
  1074.          CM(152)         =   ""
  1075.          CMC(152)        =   ""
  1076.          CP(152)         =   ""
  1077.          CM(153)         =   ""
  1078.          CMC(153)        =   ""
  1079.          CP(153)         =   ""
  1080.          CM(154)         =   ""
  1081.          CMC(154)        =   ""
  1082.          CP(154)         =   ""
  1083.          CM(155)         =   ""
  1084.          CMC(155)        =   ""
  1085.          CP(155)         =   ""
  1086.          CM(156)         =   ""
  1087.          CMC(156)        =   ""
  1088.          CP(156)         =   ""
  1089.          CM(157)         =   ""
  1090.          CMC(157)        =   ""
  1091.          CP(157)         =   ""
  1092.          CM(158)         =   ""
  1093.          CMC(158)        =   ""
  1094.          CP(158)         =   ""
  1095.          CM(159)         =   ""
  1096.          CMC(159)        =   ""
  1097.          CP(159)         =   ""
  1098.          CM(160)         =   ""
  1099.          CMC(160)        =   ""
  1100.          CP(160)         =   ""
  1101.          CM(161)         =   ""
  1102.          CMC(161)        =   ""
  1103.          CP(161)         =   ""
  1104.          CM(162)         =   ""
  1105.          CMC(162)        =   ""
  1106.          CP(162)         =   ""
  1107.          CM(163)         =   ""
  1108.          CMC(163)        =   ""
  1109.          CP(163)         =   ""
  1110.          CM(164)         =   ""
  1111.          CMC(164)        =   ""
  1112.          CP(164)         =   ""
  1113.          CM(165)         =   ""
  1114.          CMC(165)        =   ""
  1115.          CP(165)         =   ""
  1116.          CM(166)         =   ""
  1117.          CMC(166)        =   ""
  1118.          CP(166)         =   ""
  1119.          CM(167)         =   ""
  1120.          CMC(167)        =   ""
  1121.          CP(167)         =   ""
  1122.          CM(168)         =   ""
  1123.          CMC(168)        =   ""
  1124.          CP(168)         =   ""
  1125.          CM(169)         =   ""
  1126.          CMC(169)        =   ""
  1127.          CP(169)         =   ""
  1128.          CM(170)         =   ""
  1129.          CMC(170)        =   ""
  1130.          CP(170)         =   ""
  1131.          CM(171)         =   ""
  1132.          CMC(171)        =   ""
  1133.          CP(171)         =   ""
  1134.          CM(172)         =   ""
  1135.          CMC(172)        =   ""
  1136.          CP(172)         =   ""
  1137.          CM(173)         =   ""
  1138.          CMC(173)        =   ""
  1139.          CP(173)         =   ""
  1140.          CM(174)         =   ""
  1141.          CMC(174)        =   ""
  1142.          CP(174)         =   ""
  1143.          CM(175)         =   ""
  1144.          CMC(175)        =   ""
  1145.          CP(175)         =   ""
  1146.          CM(176)         =   ""
  1147.          CMC(176)        =   ""
  1148.          CP(176)         =   ""
  1149.          CM(177)         =   ""
  1150.          CMC(177)        =   ""
  1151.          CP(177)         =   ""
  1152.          CM(178)         =   ""
  1153.          CMC(178)        =   ""
  1154.          CP(178)         =   ""
  1155.          CM(179)         =   ""
  1156.          CMC(179)        =   ""
  1157.          CP(179)         =   ""
  1158.          CM(180)         =   ""
  1159.          CMC(180)        =   ""
  1160.          CP(180)         =   ""
  1161.          CM(181)         =   ""
  1162.          CMC(181)        =   ""
  1163.          CP(181)         =   ""
  1164.          CM(182)         =   ""
  1165.          CMC(182)        =   ""
  1166.          CP(182)         =   ""
  1167.          CM(183)         =   ""
  1168.          CMC(183)        =   ""
  1169.          CP(183)         =   ""
  1170.          CM(184)         =   ""
  1171.          CMC(184)        =   ""
  1172.          CP(184)         =   ""
  1173.          CM(185)         =   ""
  1174.          CMC(185)        =   ""
  1175.          CP(185)         =   ""
  1176.          CM(186)         =   ""
  1177.          CMC(186)        =   ""
  1178.          CP(186)         =   ""
  1179.          CM(187)         =   ""
  1180.          CMC(187)        =   ""
  1181.          CP(187)         =   ""
  1182.          CM(188)         =   ""
  1183.          CMC(188)        =   ""
  1184.          CP(188)         =   ""
  1185.          CM(189)         =   ""
  1186.          CMC(189)        =   ""
  1187.          CP(189)         =   ""
  1188.          CM(190)         =   ""
  1189.          CMC(190)        =   ""
  1190.          CP(190)         =   ""
  1191.          CM(191)         =   ""
  1192.          CMC(191)        =   ""
  1193.          CP(191)         =   ""
  1194.          CM(192)         =   ""
  1195.          CMC(192)        =   ""
  1196.          CP(192)         =   ""
  1197.          CM(193)         =   ""
  1198.          CMC(193)        =   ""
  1199.          CP(193)         =   ""
  1200.          CM(194)         =   ""
  1201.          CMC(194)        =   ""
  1202.          CP(194)         =   ""
  1203.          CM(195)         =   ""
  1204.          CMC(195)        =   ""
  1205.          CP(195)         =   ""
  1206.          CM(196)         =   ""
  1207.          CMC(196)        =   ""
  1208.          CP(196)         =   ""
  1209.          CM(197)         =   ""
  1210.          CMC(197)        =   ""
  1211.          CP(197)         =   ""
  1212.          CM(198)         =   ""
  1213.          CMC(198)        =   ""
  1214.          CP(198)         =   ""
  1215.          CM(199)         =   ""
  1216.          CMC(199)        =   ""
  1217.          CP(199)         =   ""
  1218.          CM(200)         =   ""
  1219.          CMC(200)        =   ""
  1220.          CP(200)         =   ""
  1221.          CM(201)         =   ""
  1222.          CMC(201)        =   ""
  1223.          CP(201)         =   ""
  1224.          CM(202)         =   ""
  1225.          CMC(202)        =   ""
  1226.          CP(202)         =   ""
  1227.          CM(203)         =   ""
  1228.          CMC(203)        =   ""
  1229.          CP(203)         =   ""
  1230.          CM(204)         =   ""
  1231.          CMC(204)        =   ""
  1232.          CP(204)         =   ""
  1233.          CM(205)         =   ""
  1234.          CMC(205)        =   ""
  1235.          CP(205)         =   ""
  1236.          CM(206)         =   ""
  1237.          CMC(206)        =   ""
  1238.          CP(206)         =   ""
  1239.          CM(207)         =   ""
  1240.          CMC(207)        =   ""
  1241.          CP(207)         =   ""
  1242.          CM(208)         =   ""
  1243.          CMC(208)        =   ""
  1244.          CP(208)         =   ""
  1245.          CM(209)         =   ""
  1246.          CMC(209)        =   ""
  1247.          CP(209)         =   ""
  1248.          CM(210)         =   ""
  1249.          CMC(210)        =   ""
  1250.          CP(210)         =   ""
  1251.          CM(211)         =   ""
  1252.          CMC(211)        =   ""
  1253.          CP(211)         =   ""
  1254.          CM(212)         =   ""
  1255.          CMC(212)        =   ""
  1256.          CP(212)         =   ""
  1257.          CM(213)         =   ""
  1258.          CMC(213)        =   ""
  1259.          CP(213)         =   ""
  1260.          CM(214)         =   ""
  1261.          CMC(214)        =   ""
  1262.          CP(214)         =   ""
  1263.          CM(215)         =   ""
  1264.          CMC(215)        =   ""
  1265.          CP(215)         =   ""
  1266.          CM(216)         =   ""
  1267.          CMC(216)        =   ""
  1268.          CP(216)         =   ""
  1269.          CM(217)         =   ""
  1270.          CMC(217)        =   ""
  1271.          CP(217)         =   ""
  1272.          CM(218)         =   ""
  1273.          CMC(218)        =   ""
  1274.          CP(218)         =   ""
  1275.          CM(219)         =   ""
  1276.          CMC(219)        =   ""
  1277.          CP(219)         =   ""
  1278.          CM(220)         =   ""
  1279.          CMC(220)        =   ""
  1280.          CP(220)         =   ""
  1281.          CM(221)         =   ""
  1282.          CMC(221)        =   ""
  1283.          CP(221)         =   ""
  1284.          CM(222)         =   ""
  1285.          CMC(222)        =   ""
  1286.          CP(222)         =   ""
  1287.          CM(223)         =   ""
  1288.          CMC(223)        =   ""
  1289.          CP(223)         =   ""
  1290.          CM(224)         =   ""
  1291.          CMC(224)        =   ""
  1292.          CP(224)         =   ""
  1293.          CM(225)         =   ""
  1294.          CMC(225)        =   ""
  1295.          CP(225)         =   ""
  1296.          CM(226)         =   ""
  1297.          CMC(226)        =   ""
  1298.          CP(226)         =   ""
  1299.          CM(227)         =   ""
  1300.          CMC(227)        =   ""
  1301.          CP(227)         =   ""
  1302.          CM(228)         =   ""
  1303.          CMC(228)        =   ""
  1304.          CP(228)         =   ""
  1305.          CM(229)         =   ""
  1306.          CMC(229)        =   ""
  1307.          CP(229)         =   ""
  1308.          CM(230)         =   ""
  1309.          CMC(230)        =   ""
  1310.          CP(230)         =   ""
  1311.          CM(231)         =   ""
  1312.          CMC(231)        =   ""
  1313.          CP(231)         =   ""
  1314.          CM(232)         =   ""
  1315.          CMC(232)        =   ""
  1316.          CP(232)         =   ""
  1317.          CM(233)         =   ""
  1318.          CMC(233)        =   ""
  1319.          CP(233)         =   ""
  1320.          CM(234)         =   ""
  1321.          CMC(234)        =   ""
  1322.          CP(234)         =   ""
  1323.          CM(235)         =   ""
  1324.          CMC(235)        =   ""
  1325.          CP(235)         =   ""
  1326.          CM(236)         =   ""
  1327.          CMC(236)        =   ""
  1328.          CP(236)         =   ""
  1329.          CM(237)         =   ""
  1330.          CMC(237)        =   ""
  1331.          CP(237)         =   ""
  1332.          CM(238)         =   ""
  1333.          CMC(238)        =   ""
  1334.          CP(238)         =   ""
  1335.          CM(239)         =   ""
  1336.          CMC(239)        =   ""
  1337.          CP(239)         =   ""
  1338.          CM(240)         =   ""
  1339.          CMC(240)        =   ""
  1340.          CP(240)         =   ""
  1341.          CM(241)         =   ""
  1342.          CMC(241)        =   ""
  1343.          CP(241)         =   ""
  1344.          CM(242)         =   ""
  1345.          CMC(242)        =   ""
  1346.          CP(242)         =   ""
  1347.          CM(243)         =   ""
  1348.          CMC(243)        =   ""
  1349.          CP(243)         =   ""
  1350.          CM(244)         =   ""
  1351.          CMC(244)        =   ""
  1352.          CP(244)         =   ""
  1353.          CM(245)         =   ""
  1354.          CMC(245)        =   ""
  1355.          CP(245)         =   ""
  1356.          CM(246)         =   ""
  1357.          CMC(246)        =   ""
  1358.          CP(246)         =   ""
  1359.          CM(247)         =   ""
  1360.          CMC(247)        =   ""
  1361.          CP(247)         =   ""
  1362.          CM(248)         =   ""
  1363.          CMC(248)        =   ""
  1364.          CP(248)         =   ""
  1365.          CM(249)         =   ""
  1366.          CMC(249)        =   ""
  1367.          CP(249)         =   ""
  1368.          CM(250)         =   ""
  1369.          CMC(250)        =   ""
  1370.          CP(250)         =   ""
  1371.          CM(251)         =   ""
  1372.          CMC(251)        =   ""
  1373.          CP(251)         =   ""
  1374.          CM(252)         =   ""
  1375.          CMC(252)        =   ""
  1376.          CP(252)         =   ""
  1377.          CM(253)         =   ""
  1378.          CMC(253)        =   ""
  1379.          CP(253)         =   ""
  1380.          CM(254)         =   ""
  1381.          CMC(254)        =   ""
  1382.          CP(254)         =   ""
  1383.          CM(255)         =   ""
  1384.          CMC(255)        =   ""
  1385.          CP(255)         =   ""
  1386.       End
  1387.       Begin VB.Label Label16 
  1388.          Caption         =   "Valid chars. for each"
  1389.          Height          =   264
  1390.          Left            =   324
  1391.          TabIndex        =   48
  1392.          Top             =   1512
  1393.          Width           =   1956
  1394.       End
  1395.       Begin VB.Label Label12 
  1396.          Caption         =   "Valid chars. for each"
  1397.          Height          =   264
  1398.          Left            =   324
  1399.          TabIndex        =   46
  1400.          Top             =   1908
  1401.          Width           =   1956
  1402.       End
  1403.    End
  1404.    Begin VB.Image imgLight 
  1405.       Height          =   384
  1406.       Index           =   0
  1407.       Left            =   108
  1408.       Picture         =   "minp_wiz.frx":0655
  1409.       Top             =   4464
  1410.       Visible         =   0   'False
  1411.       Width           =   384
  1412.    End
  1413.    Begin VB.Image imgLight 
  1414.       Height          =   384
  1415.       Index           =   1
  1416.       Left            =   468
  1417.       Picture         =   "minp_wiz.frx":0A97
  1418.       Top             =   4464
  1419.       Visible         =   0   'False
  1420.       Width           =   384
  1421.    End
  1422. Attribute VB_Name = "frmMaskWizard"
  1423. Attribute VB_Creatable = False
  1424. Attribute VB_Exposed = False
  1425. Option Explicit ' always
  1426. Private m_oParentForm As Form ' the form from which this form was launched
  1427. Private bShiftKeyDown  As Boolean ' used to close parent form if <Shift> held during close
  1428. ' used to keep from over-writing the user's mask with a default mask
  1429. Private bMaskChanged As Boolean
  1430. ' used to keep from over-writing the user's mask chars with a default mask chars
  1431. Private bMaskChars1Changed  As Boolean, bMaskChars2Changed As Boolean
  1432. Private iNumberOfSlides  As Byte, iCurrentSlide As Byte
  1433. ' This method moves to the demo's next slide if not already on the last slide
  1434. Private Sub ShowSlideNext()
  1435.     ' if we are not on the last slide then choose the next slide as the current slide
  1436.     If iCurrentSlide < iNumberOfSlides Then iCurrentSlide = iCurrentSlide + 1
  1437.     ' have the user interface move to this new slide (view)
  1438.     SetupFrames (iCurrentSlide)
  1439. End Sub
  1440. ' This method returns to the demo's previous slide if not already on the first slide
  1441. Private Sub ShowSlidePrevious()
  1442.     ' if we are not on the first slide then make the previouse slide the current slide
  1443.     If iCurrentSlide >= 1 Then iCurrentSlide = iCurrentSlide - 1
  1444.     ' have the user interface move to this new slide (view)
  1445.     SetupFrames (iCurrentSlide)
  1446. End Sub
  1447. ' This procedure sets the status line text to the text in sMessageText parameter
  1448. '   and keeps the text there for the time period specified (in milliseconds) by the
  1449. '   vTimePeriod parameter.  This procedure uses the timer on the demo's mDemoFace form to
  1450. '   get a callback when the vTimePeriod has elapsed.
  1451. '   sMessageText - text to be displayed
  1452. '   [vTimePeriod] - time period (in milliseconds) to display the message.  If not specfied a value
  1453. '       of 3000 is used.
  1454. '   [vOverRide] - when set to True the sMessageText is displayed immediately even if there is a
  1455. '       message currently being displayed.  If set to False (or not specified) and there is a message
  1456. '       being displayed the new message is placed in a single item queue and displayed when the time
  1457. '       period of the previous message has expired.
  1458. Private Sub SetStatusLineText(sMessageText As String, Optional vTimePeriod As Variant, Optional vOverRide As Variant)
  1459.     Static sQueueText As String, iQueueTimePeriod As Integer, bQueueIsEmpty As Boolean
  1460.     ' if the calling procedure did not specify a display time (or set it to <.5 seconds) then default the time to 3 seconds
  1461.     Select Case True
  1462.     Case IsMissing(vTimePeriod), vTimePeriod <= 500
  1463.         vTimePeriod = 3000
  1464.     End Select
  1465.     ' if the calling procedure did not specify an vOverRide value then set vOverRide to False
  1466.     If IsMissing(vOverRide) Then vOverRide = False
  1467.         With tmrStatusLine
  1468.         ' if this procedure was called by the timer then turn the timer off and check queue.  If it was not called by the timer
  1469.         '   then there is a new message to display.
  1470.         If sMessageText = "_timer_calling_" Then
  1471.             ' If there is nothing in the queue then reset the status line text to "Ready".
  1472.             '   Otherwise, display the message which is in the queue
  1473.             .Enabled = False ' turn timer off
  1474.             If bQueueIsEmpty Then
  1475.                 ' reset status line text
  1476.                 panStatusLine.Caption = "Ready..."
  1477.             Else
  1478.                  ' display message which is in the queue
  1479.                  panStatusLine.Caption = sQueueText
  1480.                 ' setup timer to call this procedure when the iQueueTimePeriod has expired
  1481.                 .Interval = iQueueTimePeriod
  1482.                 sQueueText = "" ' clear queue text
  1483.                 iQueueTimePeriod = 0 ' clear queue time period
  1484.                 bQueueIsEmpty = True ' the queue is now empty so let's indicate this fact
  1485.                 .Enabled = True
  1486.            End If
  1487.         Else
  1488.             ' if the timer is enabled then there is already a message being displayed so place
  1489.             '   this new message in the single item queue.  But, if this is an over-ride then
  1490.             '   show the message now
  1491.             If .Enabled And Not vOverRide Then
  1492.                 sQueueText = sMessageText
  1493.                 iQueueTimePeriod = vTimePeriod
  1494.                 bQueueIsEmpty = False
  1495.             Else
  1496.                 ' over-ride the currently displayed message
  1497.                 .Enabled = False
  1498.                 sQueueText = "" ' clear queue text
  1499.                 iQueueTimePeriod = 0 ' clear queue time period
  1500.                 bQueueIsEmpty = True ' the queue is now empty so let's indicate this fact
  1501.                 panStatusLine.Caption = sMessageText
  1502.                 ' setup timer to call this procedure when the vTimePeriod has expired
  1503.                 .Interval = vTimePeriod
  1504.                 .Enabled = True
  1505.             End If
  1506.         End If
  1507.         End With ' tmrStatusLine
  1508. End Sub
  1509. Private Sub cmdClose_Click()
  1510.     ' unload this form
  1511.     Unload Me
  1512. End Sub
  1513. Private Sub cmdSlide_Click(Index As Integer)
  1514.     ' determine the button that the user pressed
  1515.     Select Case Index
  1516.     Case 0 ' Go Back
  1517.        ShowSlidePrevious
  1518.     Case 1 ' Go to Next slide
  1519.        ShowSlideNext
  1520.     End Select
  1521. End Sub
  1522. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  1523.     If KeyCode = vbKeyShift Then bShiftKeyDown = True
  1524. End Sub
  1525. Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
  1526.     bShiftKeyDown = False
  1527. End Sub
  1528. Private Sub Form_Load()
  1529.     Dim iDisplaySlideLeft As Integer, iDisplaySlideTop As Integer, iCount As Integer
  1530.     ' we use 6 slide (views) for this demo
  1531.     iNumberOfSlides = 5
  1532.     ' place all display frames in the same location as the first frame
  1533.     iDisplaySlideTop = fraSteps(0).Top
  1534.     iDisplaySlideLeft = fraSteps(0).Left
  1535.     For iCount = 0 To iNumberOfSlides - 1
  1536.         If iCount <> 0 Then
  1537.             With fraSteps(iCount)
  1538.                     .Left = iDisplaySlideLeft
  1539.                     .Top = iDisplaySlideTop
  1540.             End With ' fraSteps(iCount)
  1541.         End If
  1542.     Next iCount
  1543.     ' center the form to top left of screen
  1544.     Move 0, 0
  1545.     ' set default masks
  1546.     With MhMaskInputWiz
  1547.         .CMask(0) = "A"
  1548.         .CMask(1) = "9"
  1549.     End With ' MhMaskInputWiz
  1550.     ' setup first slide
  1551.     SetupFrames (1)
  1552.     iCurrentSlide = 0
  1553.     Call ShowSlideNext
  1554.     ' greet the user warmly!
  1555.     Dim sGreeting As String
  1556.     Randomize (Timer)
  1557.     Select Case Int(Rnd * 2)
  1558.     Case 0
  1559.         sGreeting = "A 'Masking' we will go..."
  1560.     Case 1
  1561.         sGreeting = "May I walk you through the mask-building process?"
  1562.     Case Else
  1563.         sGreeting = "Let's build a mask..."
  1564.     End Select
  1565.     Call SetStatusLineText(sGreeting, 4001, True)
  1566. End Sub
  1567. ' This procedure sets up the different views according to the SlideNumber parameter
  1568. Private Sub SetupFrames(SlideNumber As Integer)
  1569.     On Error GoTo SetupFrames_Error
  1570.     Dim iCount As Integer
  1571.     Dim sMessageText  As String
  1572.     ' enabled/disable the appropriate buttons according to our slide number
  1573.     Select Case True
  1574.     Case SlideNumber <= 1 ' we are at first slide
  1575.         ' disable the 'back' button
  1576.         cmdSlide(0).Enabled = False
  1577.         ' enable the 'next' button
  1578.         cmdSlide(1).Enabled = True
  1579.         cmdSlide(1).SetFocus
  1580.     Case SlideNumber >= iNumberOfSlides ' we are at last slide
  1581.         ' disable the 'next' button
  1582.         cmdSlide(1).Enabled = False
  1583.         cmdSlide(0).SetFocus
  1584.     Case Else ' we are in the middle so make sure that both buttons are enabled
  1585.         ' enable the 'back' button
  1586.         cmdSlide(0).Enabled = True
  1587.         ' enable the 'next' button
  1588.         cmdSlide(1).Enabled = True
  1589.     End Select
  1590.     ' make desired slide visible
  1591.     fraSteps(SlideNumber - 1).Visible = True
  1592.     ' make all frames invisible (except for the current frame)
  1593.     For iCount = 0 To iNumberOfSlides - 1
  1594.         If iCount <> SlideNumber - 1 Then fraSteps(iCount).Visible = False
  1595.     Next iCount
  1596.     Select Case SlideNumber
  1597.     Case 1
  1598.         ' tell user what this slide is about
  1599.         sMessageText = "The CMask."
  1600.         txtCMask(0).SetFocus
  1601.     Case 2
  1602.         ' if the user has not changed the mask chars then make a default one
  1603.         If Not bMaskChars1Changed Then txtCMaskCharacters(0) = "ABCabc"
  1604.         ' tell user what this slide is about
  1605.         sMessageText = "What characters should this character represent?"
  1606.         txtCMaskCharacters(0).SetFocus
  1607.     Case 3
  1608.         ' if the user has not changed the mask chars then make a default one
  1609.         If Not bMaskChars2Changed Then txtCMaskCharacters(1) = "0123"
  1610.         ' tell user what this slide is about
  1611.         sMessageText = "What characters should this character represent?"
  1612.         cmdSlide(1).Caption = "&Next >"
  1613.         txtCMaskCharacters(1).SetFocus
  1614.     Case 4
  1615.         ' if the user has not changed the mask then build a default one
  1616.         If Not bMaskChanged Then txtMask = String$(5, Asc(txtCMask(0))) & String$(5, Asc(txtCMask(1)))
  1617.         ' tell user what 2 do
  1618.         sMessageText = "What sets of characters should be allowed in what positions?"
  1619.         cmdSlide(1).Caption = "&Finish >"
  1620.         txtMask.SetFocus
  1621.     Case 5
  1622.         ' give user a tip
  1623.         sMessageText = "That was not so hard.  Now, was it?"
  1624.         ' build mask which the user defined
  1625.         With MhMaskInputWiz
  1626.             .CMask(0) = txtCMask(0)
  1627.             .CMaskChars(0) = txtCMaskCharacters(0)
  1628.             .CMask(1) = txtCMask(1)
  1629.             .CMaskChars(1) = txtCMaskCharacters(1)
  1630.             .Mask = txtMask
  1631.             .TextLength = Len(txtMask)
  1632.             .Text = ""
  1633.             .SetFocus
  1634.         End With ' MhMaskInputWiz
  1635.         ' show mask definition
  1636.         txtMaskDefinition = txtMask
  1637.     End Select
  1638.     ' show user message which goes with the selected slide
  1639.     Call SetStatusLineText(sMessageText, vOverRide:=True)
  1640. Exit Sub
  1641. SetupFrames_Error:
  1642. Select Case Err
  1643. Case 5  ' setfocus while form still not loaded is ok to do
  1644. End Select
  1645. Resume Next
  1646. End Sub
  1647. Private Sub Form_Unload(Cancel As Integer)
  1648.     ' if the user held <Shift> down while closing window then close parent window too
  1649.     If bShiftKeyDown Then Unload m_oParentForm
  1650.     Set m_oParentForm = Nothing
  1651.         
  1652. End Sub
  1653. Private Sub tmrLight_Timer()
  1654.     Static bLightOn As Boolean
  1655.     If bLightOn Then
  1656.         Icon = imgLight(0)
  1657.         bLightOn = False
  1658.     Else
  1659.         Icon = imgLight(1)
  1660.         bLightOn = True
  1661.     End If
  1662. End Sub
  1663. Private Sub tmrStatusLine_Timer()
  1664.     ' tell status line that it is time to reset itself
  1665.     Call SetStatusLineText("_timer_calling_")
  1666. End Sub
  1667. Private Sub txtCMask_Change(Index As Integer)
  1668.     ' if the user changes the mask characters then allow a new
  1669.     '   default mask to be built
  1670.     bMaskChanged = False
  1671. End Sub
  1672. Private Sub txtCMask_GotFocus(Index As Integer)
  1673.     ' highlight text
  1674.     txtCMask(Index).SelStart = 0
  1675.     txtCMask(Index).SelLength = 1
  1676. End Sub
  1677. Private Sub txtCMask_KeyPress(Index As Integer, KeyAscii As Integer)
  1678.     Dim bBothHaveIdenticalText As Boolean
  1679.     ' this check only necessary if at least one text box already has text
  1680.     If Len(txtCMask(0)) = 0 And Len(txtCMask(1)) = 0 Then Exit Sub
  1681.     ' do not allow the user to have identical CMasks because there is simply no use!
  1682.     Select Case Index
  1683.     Case 0
  1684.         If txtCMask(1) = Chr$(KeyAscii) Then bBothHaveIdenticalText = True
  1685.     Case 1
  1686.         If txtCMask(0) = Chr$(KeyAscii) Then bBothHaveIdenticalText = True
  1687.     End Select
  1688.     If bBothHaveIdenticalText Then
  1689.         MsgBox "Defining two seperate CMasks with the same name is futile.  And I just can't let you do it!  :-)"
  1690.         KeyAscii = 0
  1691.     End If
  1692. End Sub
  1693. Private Sub txtCMask_LostFocus(Index As Integer)
  1694.     Dim sTempText As String
  1695.     ' update the corresponding read-only text boxes used in next steps
  1696.     sTempText = txtCMask(Index)
  1697.     lblCMaskName(Index) = sTempText
  1698.     lblCMaskName(Index + 2) = sTempText
  1699.     lblCMaskName(Index + 4) = sTempText
  1700. End Sub
  1701. Private Sub txtCMaskCharacters_Change(Index As Integer)
  1702.     ' update the corresponding read-only text boxes used in next steps
  1703.     txtCMaskCharactersName(Index) = txtCMaskCharacters(Index)
  1704.     txtCMaskCharactersName(Index + 2) = txtCMaskCharacters(Index)
  1705.     Select Case Index
  1706.     Case 0
  1707.         bMaskChars1Changed = True
  1708.     Case 1
  1709.         bMaskChars2Changed = True
  1710.     End Select
  1711. End Sub
  1712. Private Sub txtCMaskCharacters_GotFocus(Index As Integer)
  1713.     ' highlight text
  1714.     txtCMaskCharacters(Index).SelStart = 0
  1715.     txtCMaskCharacters(Index).SelLength = Len(txtCMaskCharacters(Index))
  1716. End Sub
  1717. Private Sub txtMask_Change()
  1718.     bMaskChanged = True
  1719. End Sub
  1720. Private Sub txtMask_GotFocus()
  1721.     ' highlight text
  1722.     txtMask.SelStart = 0
  1723.     txtMask.SelLength = Len(txtMask)
  1724. End Sub
  1725. Private Sub txtMask_KeyPress(KeyAscii As Integer)
  1726.     ' only allow the user to build the mask from the chars that they defined in the CMask text boxes
  1727.     Select Case Chr$(KeyAscii)
  1728.     Case Left$(txtCMask(0), 1), Left$(txtCMask(1), 1)
  1729.         ' ok
  1730.     Case Else
  1731.         ' kill key!
  1732.         KeyAscii = 0
  1733.     End Select
  1734. End Sub
  1735. Public Property Set ParentForm(oNewForm As Form)
  1736.     Set m_oParentForm = oNewForm
  1737. End Property
  1738.