Regarding anti-virus and malware protection? I white-list all of the folders for my screen readers. They're not exactly common entry points. Here are the folders I tell them to ignore.
C:\Program Files (X86)\GW Micro
* I think it will lack the (X86) if you're running a 32 bit version of Windows.
C:\ProgramData\GW Micro
C:\Users\Tom Kingston\AppData\Roaming\GW Micro

Hth,
Tom


On 11/30/2019 3:54 AM, David via Talk wrote:
Peter,

Just a thought.


Since you tell there is a few other things wrong with your computer,
what immediately popped into my mind, would be to roll back your
computer a few weeks. That is, unless you would happen to remember if
you installed, uninstalled or modified any piece of software - prior to
the issues on your computer starting to show up.


If you now happen to remember approximately when all of these things
started to occur, you could try to restore your computer to a date prior
to that time. That would mean you rolling back any updates and so forth,
and before doing any attempt, I would suggest you make sure to back up
all your personal data. Then restore the system a month or two back, and
let it run all updates anew. Sometimes an update - even from trusted
sources like Microsoft, could fail slightly. By rolling back your
system, and letting it reinstall all the latest updates, you might
smoothen out such issues.


A wild guess, but without knowing what you are facing kind of issues, it
really might not be possible to fully assist you. Did you get your CMos
battery changed?


By the way, have you checked your anti-malware, to see if it has
quaranteened anything on your computer? Mine happend to complain one of
the apps in WinEyes, for weeks. No matter if I reinstalled the app
several times, it still kept complaining. Running some thorough scans,
and actually uninstalling some of the anti-ware, seems to have fixed
that issue. Will be interesting to see what happens when I reinstall the
actual anti-ware. If you are running something like for instance
MalwareBytes, it would be worth having it checked up, since it has had
some tendency to quarantine some of the stuff from the screen reader.
Even some anti-virus software might every now and then cause false
positives, meaning that it seemingly detects a virus where no virus is
to be found. Avast, AVG and McAFee, they all have had issues toward
screen readers, down through history. Well, not that they are the only
ones, just to give you some examples. Checking the quarantine vault of
your anti-ware, might sometimes be a challenge with the screen reader.
So if you have two eyes dropping by, it might be worth to let them
assist you. Is there any of the other apps under WinEyes, that causes
you trouble? Knowing that, might give us some further clue what could
possibly be going on.


Lastly, have you tried to turn off all apps under WinEyes, and then
turning them back on - one by one? Make sure always to start out with
the GWToolkit app, since most other apps depend on routines taken from
there. Being a bit tidious, turning on one app at a time, might help you
trace which app nests the real bird-egg. And believe me, computers most
definately have their cuckoobirds, that throw their eggs here, there and
everywhere. Detecting them might sometimes be that hard, people end up
kicking out all the chicks, and reinstalling their whole computer system
afresh.


Sorry if all of this ends up being blahblah in your case, but wanted to
just drop the idea on the board, that you at least might keep every door
open. Hope for you to sort out your issues soon.


deff

David

On 11/30/2019 4:58 AM, peter Chin via Talk wrote:
Hello Tom,

I have tried your revised version of the app with no better results. I
don't believe there is nything wrong with your app. I think there is
something else wrom with my computer as yours is not the only app that
is not working. So, just relax and forget about it. Thanks very much
for tryin to help.

-----Original Message----- From: Tom Kingston via Talk
Sent: Tuesday, November 26, 2019 8:52 PM
To: peter Chin via Talk
Cc: Tom Kingston
Subject: Re: email

Hi Peter,
Ah yes, the age old fix one problem and cause another routine. It is the
eternal battle for programmers.
This one is very strange though. So I've built another package wherein
all I did was comment out the line that calls the braille display print
function, which is where the error was. I can't remember, but I thought
you weren't using a braille display anyway. But regardless, I would
install this one to see if it fixes the new problems. If not, something
else is wrong because, as I said, I just eliminated the calling of the
braille string function which is only called from within the speak
string function. I changed nothing else.
I hope it works. Just let me know if you are using a braille display and
I'll dig into it some more.
https://www.dropbox.com/s/xe7xm7ma2604ovb/windowslivemail.wepm?dl=1
Regards,
Tom


On 11/25/2019 10:36 PM, peter Chin via Talk wrote:
Hello Tom,

Just to inform you  that I have now installed your version of the
WLM app and the error has not occurred since. I thank you very much
for your help. Unfortunately, certain features of the app do not
appear  to be working any more, such as the "Goto Folder" facility
and the "Move File to Folder" facility. Never mind. I can live with
that.

Thanks again.

-----Original Message----- From: Tom Kingston via Talk
Sent: Thursday, November 14, 2019 10:16 AM
To: Rod Hutton via Talk
Cc: Tom Kingston
Subject: Re: email

Hi Peter,
Unfortunately Rod's suggestion to disable your braille display won't
work. The function containing the conditional block that's throwing the
error is run regardless because it's where it checks to see if you're
using a braille display.
Fortunately all the conditional block is doing is seeing if you have a
newer version of the GW toolkit, which you do. The change was made
several versions back.
I believe the problem is due to a Windows security update that made type
checking in VBScript more strict.
So I removed every instance of that conditional block along with the
alternative code for the old version of the toolkit. I've built a new
installer package: windowslivemail.wepm.
* First, close Windows Live Mail and uninstall the Windows Live Mail
app!
Then activate the link below to download my new installer from my
Dropbox. It should open a "Save as" dialog in your browser.
After downloading the file, focus it in explorer.
Press the Applications key to open the context menu.
Press R for properties.
Tab down to Unblock and press space to uncheck it.
Tab to the Apply button and press space.
Tab to the OK button and press space.
Now just press Enter on the wepm file to install it.
During the installation you should be prompted to accept the license
agreement. I did this to let you and anyone else who uses it know that
it's the new installer. I also changed the version from 1.3.2 to 1.3.3.

https://www.dropbox.com/s/32q204ix9ixmv2r/windowslivemail.wepm?dl=1

Let me know if you get any new errors. Now that I say this I should have
changed the app so it would send error reports to me. Oh well. Too late
now, which is to say, I'm lazy. Hahaahaaha!
Hth,
Tom


On 11/13/2019 5:30 AM, Rod Hutton via Talk wrote:
Hi Peter,

In the version of the Windows Live Mail app I have, which is 1.3.2,
line 700 is working with braille.
Are you using a braille display?
If so, you can try disabling your braille display within Window-Eyes
just for a bit in order to test if this could be causing the problem.

Hth,

Rod

Sent from Outlook for Windows

-----Original Message-----
From: Talk
<[email protected]> On
Behalf Of peter Chin via Talk
Sent: November 12, 2019 11:23 PM
To: peter Chin via Talk <[email protected]>
Cc: peter Chin <[email protected]>
Subject: Re: email

Hello David,

I hope the text given below the row of dashes what you were were
asking for:
------------------------------
Windows Live Mail.VBS-Microsoft VB Script  runtime error
Line 700 column 2
Type mismatch 'sharedobject(...)'
<
0x800a000d



-----Original Message-----
From: David via Talk
Sent: Monday, November 11, 2019 10:38 AM
To: peter Chin via Talk
Cc: David
Subject: Re: email

What exactly is the error message saying? It usually will tell us what
does not work, and which line in the scripting code that failed. That
is, which step in the processing of the script that caused the error.
Unless we know that, it all will be a matter of more or less wild
guessing.


Now, if you happen to have the WEPM file for the script, you might want
to reinstall the app. If you have not made any user settings in the
app,
if it offers such capability, I generally suggest first uninstalling
the
app altogether, prior to attempting any reinstallation. Should you not
have the WEPM file, let us see if we might be able to help you out.


Again, wild guessing. Since it worked for you up till recently, it
might
be due to some stuff going on with your computer. Try any Anti-ware you
have, like AntiSpyware or AntiVirus. Run a full scan of the system. See
if anything gets better. Sometimes I have seen certain Antiware block
files from one of the WinEyes apps, so if that is the case,
reinstallation will not help, since it only will reinstall the file
that
is being blocked. In such cases, checking the blocking list in your
anti-ware might be a good idea.


Don't use the software in question, so sorry for not being able to give
you any further assistance here. Next time the error pops on you, would
you mind try copy it and let the list know what it says?



David

On 11/11/2019 3:18 AM, peter Chin via Talk wrote:
Hello all,

I made some mistakes in my last message so I am sending it again.
--------------------------------------------------
Hello all,

I use WLM as my e-mail client on a Windows 8.1 machine and WE 9.5.4. I
had

no trouble with this client until just over a month ago. Since then, I
get a

script error message after sending out an e-mail message.I get four
choices:

ignore error, stop App, edit App or restart App. I have to choose the
last

option if I want to continue using WLM. However, WLM doesn't function

properly unless I either reload WE or get out of WLM and then go
back in.


I hope someone can suggest a remedy for this problem. For those who

understand script writing (which I don't), I include a copy of the
script

which is supposed to be re-edited.

------------------------------------------------------------

' For license information, see WindowsLiveMail License.txt which ships
with

this package.

Option Explicit


Dim myXMLFile : myXMLFile = ClientInformation.ScriptPath &

"\WindowsLiveMail.xml"

Dim myINIFile : myINIFile = ClientInformation.ScriptPath &

"\WindowsLiveMail.ini"

Dim myStrings : Set myStrings = Strings(myXMLFile)

Dim myScriptUpdateURL : myScriptUpdateURL =

"
http://www.gwmicro.com/scripts/windows_live_mail/xml
"

Dim checkedForUpdates : checkedForUpdates = False

Dim errorReportingEnabled : errorReportingEnabled = False

Dim SO_StandardHelpDialog : Set SO_StandardHelpDialog = Nothing

Dim SO_CheckForUpdate : Set SO_CheckForUpdate = Nothing

Dim SO_ErrorReporting : Set SO_ErrorReporting = Nothing

Dim fsObj : Set fsObj = CreateObject("Scripting.FileSystemObject")


Dim messageWindow : Set messageWindow = Nothing

Dim setFileActiveEvent : setFileActiveEvent = 0

Dim lastSpoken : lastSpoken = ""

Dim blockedFocusEvent : Set blockedFocusEvent = Nothing

Dim msaaFocusEvent : msaaFocusEvent = 0

Dim myMSAAEventSource : Set myMSAAEventSource = Nothing

Dim contactHwnd : contactHwnd = 0

Dim fieldDataEvent : fieldDataEvent = 0


Dim myMoveMessageHotkey : Set myMoveMessageHotkey = Nothing

Dim myKeyDownEvent : myKeyDownEvent = 0

Dim keyProcessedDownEventForBraille :
keyProcessedDownEventForBraille = 0

Dim myBrailleObj : Set myBrailleObj = Nothing

Dim firstLetterNavStr : firstLetterNavStr = ""

Dim keyPressTimer : keyPressTimer = 0


Const TIMER_AUTOCOMPLETE = 1000

Const GRAPHIC_PREFIX = "GRAPHIC_"


Class MessageWindowClass

     Private toField

     Private autoCompleteSelected

     Private myMSAAEventSource

     Private autoCompleteEntries

     Private myHotkeys

     Private messageWindow

     Private msaaEvents

     Private timers

     Private startTimerProxy

     Private hotkeyProxy

     Private msaaEventProxy


     Public Sub Class_Initialize()


         ' Begin

         Set toField = Nothing

         Set autoCompleteSelected = Nothing

         Set myMSAAEventSource = MSAAEventSource

         Set autoCompleteEntries = CreateObject("Scripting.Dictionary")

         Set myHotkeys = CreateObject("Scripting.Dictionary")

         Set msaaEvents = CreateObject("Scripting.Dictionary")

         Set timers = CreateObject("Scripting.Dictionary")

         Set startTimerProxy = (New SingleParameterProxyClass).Init(Me,

"TimerProc")

         Set hotkeyProxy = (New DualParameterProxyClass).Init(Me,

"HotkeyProc")

         Set msaaEventProxy = (New DualParameterProxyClass).Init(Me,

"MSAAProc")

     End Sub


     Public Function Init(wObj, newMessage)

         ' Begin

         Set messageWindow = wObj

         RegisterHotkeys wObj

         ' We only need to hook events for new messages

         myMSAAEventSource.Window = messageWindow

         If newMessage Then

             msaaEvents(msaaEvents.Count + 1) =

ConnectEventWithParameter(myMSAAEventSource, "OnObjectFocus",

msaaEventProxy, event_OBJECT_FOCUS)

             msaaEvents(msaaEvents.Count + 1) =

ConnectEventWithParameter(myMSAAEventSource, "OnObjectStateChange",

msaaEventProxy, event_OBJECT_STATECHANGE)

         Else

             msaaEvents(msaaEvents.Count + 1) =

ConnectEventWithParameter(myMSAAEventSource, "OnObjectReorder",

msaaEventProxy, event_OBJECT_REORDER)

         End If

         Set Init = Me

     End Function


     Private Sub RegisterHotkeys(wObj)

         Dim i


         ' Begin

         For i = 1 to 7

             Set myHotkeys("myAlt" & i & "HotKey") =

Keyboard.RegisterHotkey("Alt-" & i, hotkeyProxy, wObj, i, True)

         Next

     End Sub


     Public Sub HotkeyProc(hotkeyID, firstPress)

         Dim accObj, noteWindow, searchStr, result, location, speakStr,
match


         ' Begin

         Set accObj = ActiveWindow.Accessible

         Set noteWindow = Nothing

         Set location = Nothing

         Set result = Nothing

         searchStr = ""

         speakStr = ""

         match = fmExact


         If Not accObj Is Nothing Then

             Set noteWindow = GetAccessibleByName(accObj.Children,

"NoteWindow", fmExact)

             If Not noteWindow Is Nothing Then

                 Select Case hotkeyID

                     Case 1 ' Alt-1: From

                         searchStr = myStrings("MSG_FIELDS_FROM")

                     Case 2 ' Alt-2: Date

                         searchStr = myStrings("MSG_FIELDS_DATE")

                     Case 3 ' Alt-3: To

                         searchStr = myStrings("MSG_FIELDS_TO")

                     Case 4 ' Alt-4: CC

                         searchStr = myStrings("MSG_FIELDS_CC")

                     Case 5 ' Alt-5: BCC

                         searchStr = myStrings("MSG_FIELDS_BCC")

                     Case 6 ' Alt-6: Subject

                         searchStr = myStrings("MSG_FIELDS_SUBJECT")

                     Case 7 ' Alt-7: Attachment'

                         searchStr = "("

'myStrings("MSG_FIELDS_ATTACHMENT_STRING")

                         match = fmContains

                 End Select


                 If Len(searchStr) > 0 Then

                     Set result =
GetAccessibleByName(noteWindow.Children,

searchStr, match)

                     If Not result Is Nothing Then

                         If hotkeyID = 7 Then

                             speakStr = result.Name

                         ElseIf hotkeyID = 1 Then

                             speakStr = result.Value & " " &

result.Description

                         Else

                             speakStr = result.Value

                         End If

                         Set location = result.Location

                     Else

                         speakStr = myStrings("NO") & " "

                         If hotkeyID = 7 Then

                             speakStr = speakStr &

myStrings("MSG_FIELDS_ATTACHMENT_STRING")

                         Else

                             speakStr = speakStr & searchStr

                         End If

                     End If

                 End If

             End If

         End If


         If firstPress Then

             Silence

             MySpeak speakStr

         Else

             If Not location Is Nothing Then

                 Mouse.Position = ScreenPoint(location.Left,
location.Top)

                 Mouse.Click mbLeft, 1

             End If

         End If


     End Sub


     Public Default Sub MSAAProc(accObj, eventID)

         Dim accRole : Set accRole = Nothing

         Dim accState : Set accState = Nothing


         ' Begin

         If Not accObj Is Nothing Then

             On Error Resume Next

             Set accRole = accObj.Role

             Set accState = accObj.State

             On Error Goto 0


             Select Case eventID

                 Case event_OBJECT_REORDER

                     If Left(accObj.Value, Len("wlmailhtml:{")) =

"wlmailhtml:{" Then

                         If Not accRole Is Nothing Then

                             If accRole.Value = role_SYSTEM_PANE Then

                                 If Not accState Is Nothing Then

                                     If accState.Focused And

accState.ReadOnly Then

                                         If BrowseMode.State =
bmsActive
Then

'bmsEnabled

                                             Sleep 100

                                             ExecuteHotkey hkRedraw

                                         End If

                                     End If

                                 End If

                             End If

                         End If

                     End If

                 Case event_OBJECT_FOCUS

                     If Not accRole Is Nothing Then

                         If accRole.Value = role_SYSTEM_TEXT Then

                             If accObj.Name =
myStrings("MSG_FIELDS_TO")
Then

                                 Set toField = accObj

                             End If

                         End If

                     End If

                 Case event_OBJECT_STATECHANGE

                     If Not accRole Is Nothing Then

                         If accRole.Value = role_SYSTEM_LISTITEM Then

                             If Not accState Is Nothing Then

                                 If accState.Selected Then

                                     Set autoCompleteSelected = accObj

                                     If
timers.Exists(TIMER_AUTOCOMPLETE)

Then

                                         If
timers(TIMER_AUTOCOMPLETE) <> 0

Then

                                             StopTimer

timers(TIMER_AUTOCOMPLETE)

                                         End If

                                     End If

timers(TIMER_AUTOCOMPLETE) =

StartTimer(100, startTimerProxy, TIMER_AUTOCOMPLETE)

                                 End If

                             End If

                         End If

                     End If

             End Select

         End If

     End Sub


     Public Sub TimerProc(timerID)

         Dim i, keys, accState, strToSpeak, index


         ' Begin

         Select Case timerID

             Case TIMER_AUTOCOMPLETE

                 If Not autoCompleteSelected Is Nothing Then

                     On Error Resume Next

                     strToSpeak = autoCompleteSelected.Value & ". " &

autoCompleteSelected.Description

                     index = GetSelectedItemIndex(autoCompleteSelected)

                     strToSpeak = strToSpeak &

Replace(myStrings("SUGGESTIONS"), "%1",
Replace(Replace(myStrings("INDEX"),

"%1", index(0)), "%2", index(1)))

                     Silence

                     MySpeak strToSpeak

                     On Error Goto 0

                 End If

         End Select

     End Sub


     Private Function GetSelectedItemIndex(accObj)

         Dim accParent, i, children, total, selected, childState


         ' Begin

         total = 0

         selected = 0

         Set accParent = Nothing

         If Not accObj Is Nothing Then

             On Error Resume Next

             Set accParent = accObj.Parent

             On Error Goto 0

             If Not accParent Is Nothing Then

                 total = accParent.Children.Count

                 For i = 1 To accParent.Children.Count

                     On Error Resume Next

                     Set childState = accParent.Children(i).State

                     On Error Goto 0

                     If Not childState Is Nothing Then

                         If childState.Selected Then

                             selected = i

                             Exit For

                         End If

                     End If

                 Next

             End If

         End If


         GetSelectedItemIndex = Array(selected, total)

     End Function


     Public Sub Dispose()

         Dim i, keys


         ' Stop any existing timers

         keys = timers.Keys

         For i = 0 to UBound(keys)

             If timers(keys(i)) <> 0 Then

                 StopTimer timers(keys(i))

             End If

         Next


         ' Unhook all the MSAA events

         keys = msaaEvents.Keys

         For i = 0 to UBound(keys)

             If msaaEvents(keys(i)) <> 0 Then

                 Disconnect msaaEvents(keys(i))

             End If

         Next

     End Sub


     Private Function GetAccessibleByName(accChildren, strName, match)

         Dim accChild, result


         ' Begin

         Set result = Nothing

         For Each accChild In accChildren

             Select Case match

                 Case fmExact

                     If accChild.Name = strName Then

                         Set result = accChild

                         Exit For

                     End If

                 Case fmContains

                     If InStr(accChild.Name, strName) > 0 Then

                         Set result = accChild

                         Exit For

                     End If

                 Case fmStartsWith

                     If Left(accChild.Name, Len(strName)) = strName
Then

                         Set result = accChild

                         Exit For

                     End If

                 Case fmEndsWith

                     If Right(accChild.Name, Len(strName)) = strName
Then

                         Set result = accChild

                         Exit For

                     End If

             End Select

             If accChild.Children.Count > 0 Then

                 Set result = GetAccessibleByName(accChild.Children,
strName,

match)

                 If Not result Is Nothing Then

                     Exit For

                 End If

             End If

         Next

         Set GetAccessibleByName = result

     End Function


     Public Sub Class_Terminate()

         Set messageWindow = Nothing

         Set hotkeyProxy = Nothing

         Set startTimerProxy = Nothing

         Set autoCompleteEntries = Nothing

         Set msaaEventProxy = Nothing

         Set timers = Nothing

         Set myHotkeys = Nothing

         Set myMSAAEventSource = Nothing

         Set autoCompleteSelected = Nothing

         Set toField = Nothing

     End Sub


End Class


' DualParameterProxyClass - marshals calls to the specified function
inside

the caller. This

' particular class deals events or procedures that take a single
argument.

Class DualParameterProxyClass

     Private caller

     Private functionName


     ' VBScript doesn't appear to report the default method correct,

     ' so we need to make sure that it's defined first.

     Public Default Sub Main(parm1, parm2)

         Eval "caller." & functionName & "(parm1, parm2)"

     End Sub


     Public Function Init(c, fn)

         Set caller = c

         functionName = fn

         Set Init = Me

     End Function

End Class


' SingleParameterProxyClass - marshals calls to the specified function

inside the caller. This

' particular class deals events or procedures that take a single
argument.

Class SingleParameterProxyClass

     Private caller

     Private functionName


     ' VBScript doesn't appear to report the default method correct,

     ' so we need to make sure that it's defined first.

     Public Default Sub Main(parm1)

         Eval "caller." & functionName & "(parm1)"

     End Sub


     Public Function Init(c, fn)

         Set caller = c

         functionName = fn

         Set Init = Me

     End Function

End Class


'------------------------------------------------------------------------------




' OnStateChange is the routine that gets called with the OnStateChange
event

' fires from the SharedObjects object.

'------------------------------------------------------------------------------




Sub OnStateChange(objName, objState)

     If objName = "com.GWMicro.GWToolkit.CheckForUpdate" Then

         If objState Then

'---------------------------------------------------------------------

             ' The CheckForUpdate object was just loaded, so call the

             ' CheckForUpdates routine if we have't already.

'---------------------------------------------------------------------

             Set SO_CheckForUpdate = SharedObjects(objName, 0).NewCheck


             If Not checkedForUpdates Then

                 Queue "CheckForUpdates"

                 checkedForUpdates = True

             End If

         Else

             Set SO_CheckForUpdate = Nothing

         End If

     ElseIf objName = "com.GWMicro.GWToolkit.StandardHelpDialog" Then

'---------------------------------------------------------------------

         ' The StandardHelpDialog object was just loaded, so now we can

         ' set the ClientInformation.ScriptHelp property to our real

         ' script help routine. Otherwise, we'll set it back to our

         ' default message.

'---------------------------------------------------------------------

         If objState Then

             Set SO_StandardHelpDialog = SharedObjects(objName,
0).NewDialog


'----------------------------------------------------------------

             ' Set up the help dialog with the appropriate information

'----------------------------------------------------------------

             SO_StandardHelpDialog.INIFileName = myINIFile

             SO_StandardHelpDialog.HelpTitle =
ClientInformation.ScriptName &

" " & ClientInformation.ScriptVersion

             SO_StandardHelpDialog.HelpText = myStrings("Script_Help")

             SO_StandardHelpDialog.ScriptName =
ClientInformation.ScriptName

             SO_StandardHelpDialog.ScriptVersion =

ClientInformation.ScriptVersion

             SO_StandardHelpDialog.FocusCloseButton = True

             SO_StandardHelpDialog.UpdateUrl = myScriptUpdateURL

             SO_StandardHelpDialog.UseAboutBox = True

             SO_StandardHelpDialog.AboutAuthor = "GW Micro, Inc."

             SO_StandardHelpDialog.AboutReleaseDate =

fsObj.GetFile(ClientInformation.ScriptPath & "\" &

ClientInformation.ScriptFileName).DateLastModified

             SO_StandardHelpDialog.AboutCopyright = "GW Micro, Inc."

             SO_StandardHelpDialog.AboutWebsite = "
www.gwmicro.com
"

             If SharedObjects("com.GWMicro.GWToolkit.Version")() >=
"8.4.1"

Then

                 SO_StandardHelpDialog.AboutEmail = "
[email protected]
"

             End If

'----------------------------------------------------------------

             ' Change ClientInformation.ScriptHelp to our real routine

'----------------------------------------------------------------

             ClientInformation.ScriptHelp = "ScriptHelp"

         Else

'----------------------------------------------------------------

             ' Change ClientInformation.ScriptHelp to our default
message

'----------------------------------------------------------------

             Set SO_StandardHelpDialog = Nothing

             ClientInformation.ScriptHelp =
myStrings("GWToolkit_Required")

         End If

     ElseIf objName = "com.GWMicro.GWToolkit.ErrorReporting" And
objState

Then

'---------------------------------------------------------------------

         ' The ErrorReporting object was just loaded, so now we can
execute

         ' the code it provides for enhanced error reporting,
assuming we

haven't

         ' already done so (with the errorReportingEnabled variable
will
tell

us).

         ' ErrorReporting is not stored as a global variable,
because we
only

care

         ' about executing it once, and never again.

'---------------------------------------------------------------------

         If Not errorReportingEnabled Then

             ExecuteGlobal SharedObjects(objName,

0)(ClientInformation.ScriptVersion, "
[email protected]
", True)

             errorReportingEnabled = True

         End If

     End If

End Sub


'-----------------------------------------------------------------------


' Check for automatic updates

'-----------------------------------------------------------------------


Sub CheckForUpdates()

'-----------------------------------------------------------------------


     ' We first need to see if the check for update object is
available. If

     ' it's not, there's no point in continuing.

'-----------------------------------------------------------------------


     If Not SO_CheckForUpdate Is Nothing Then

'--------------------------------------------------------------------

         ' If Automatic_Update exists in our INI, and the value is
1, then

         ' we'll attempt to check for a new version.

'--------------------------------------------------------------------

         If IniFile(myINIFile).Number("Automatic_Updates",
"OnScriptStart",

1) = 1 Then

'----------------------------------------------------------------

             ' To check for an update, we need to provide the required

             ' information: our script version (which we stored in the

             ' ClientInformation object in the global variables
section,
and

             ' the web address to our XML file, which we also stored in

             ' the global variables section.

'----------------------------------------------------------------

             SO_CheckForUpdate.ScriptVersion =

ClientInformation.ScriptVersion

             SO_CheckForUpdate.UpdateUrl = myScriptUpdateURL

'----------------------------------------------------------------

             ' Now that we've provided all the required inforamtion, we

             ' have the GW Toolkit check for an update.

'----------------------------------------------------------------

             SO_CheckForUpdate.Check

'----------------------------------------------------------------

             ' Finally, we'll set the global flag that indicates
whether or

             ' not we've already checked for updates to True

'----------------------------------------------------------------

             checkedForUpdates = True

         Else

'----------------------------------------------------------------

             ' Since we weren't able to get the toolkit object at this
point,

             ' we need to make sure our global flag that indicates
whether

             ' or not we've already checked for updates is set to
False.

'----------------------------------------------------------------

             checkedForUpdates = False

         End If

     End If

End Sub


Sub ScriptHelp()

     SO_StandardHelpDialog.Show

End Sub


Main()


Sub Main()

     ClientInformation.ScriptName = myStrings("Script_Name")

     ClientInformation.ScriptVersion = myStrings("Script_Version")

     ClientInformation.ScriptDescription = ClientInformation.ScriptName
& " "

& ClientInformation.ScriptVersion

     ClientInformation.ScriptHelp = myStrings("GWToolkit_Required")


     ConnectEvent SharedObjects, "OnStateChange", "OnStateChange"

     ConnectEvent DesktopWindow, "OnChildActivate", "OnChildActivate"

     ConnectEvent DesktopWindow, "OnChildCreate", "OnChildCreate"

     ConnectEvent DesktopWindow, "OnChildClose", "OnChildClose"

     setFileActiveEvent = ConnectEvent(Application,
"OnSetFileActivate",

"OnSetFileActivate")

End Sub


Sub OnSetFileActivate(setFile)

     If setFile.FileName = "WindowsLiveMail.set" Then

         LoadGraphicDictionaryEntries()

         ' We're done with this event, so no need to keep it hanging
around

         If setFileActiveEvent <> 0 Then

             Disconnect setFileActiveEvent

             setFileActiveEvent = 0

         End If

     End If

End Sub


Sub LoadGraphicDictionaryEntries()

     Dim activeSet, activeGraphicDictionary, keys, i, crc, labels


     ' Begin

     Set activeSet = ActiveSettings

     If Not activeSet Is Nothing Then

         Set activeGraphicDictionary = activeSet.GraphicDictionary

         If Not activeGraphicDictionary Is Nothing Then

             keys = myStrings.Keys

             For i = 1 to UBound(keys)

                 If Left(keys(i), Len(GRAPHIC_PREFIX)) = GRAPHIC_PREFIX
Then

                     crc = Mid(keys(i), Len(GRAPHIC_PREFIX) + 1,

Len(keys(i)))

                     labels = Split(myStrings(keys(i)), "|")

                     On Error Resume Next

                     ' This is in an on error because, prior to
Window-Eyes

7.5.4, sending a CRC

                     ' value greater than 2147483647 would cause an
overflow

script error.

                     activeGraphicDictionary.Add crc, labels(0),
labels(1),

False, False, False

                     On Error Goto 0

                 End If

             Next

         End If

     End If

End Sub


Sub OnChildCreate(wObj)

     If wObj.ModuleName = "MSMAIL" Then

         If wObj.ClassName = "Address Book Native Window Class" Then '

Address Book Native Window Class

             contactHwnd = wObj.Handle

             Set myMSAAEventSource = MSAAEventSource

             myMSAAEventSource.Process =
ClientInformation.ApplicationProcess

             Set blockedFocusEvent =

myMSAAEventSource.BlockEvent(event_OBJECT_FOCUS,

ClientInformation.ApplicationProcess)

             msaaFocusEvent = ConnectEvent(myMSAAEventSource,

"OnObjectFocus", "OnObjectFocus")

         End If

     End If

End Sub


Sub OnChildClose(hwnd)

     If hwnd = contactHwnd Then

         If msaaFocusEvent <> 0 Then

             Disconnect msaaFocusEvent

             msaaFocusEvent = 0

         End If

         If Not blockedFocusEvent Is Nothing Then

             blockedFocusEvent.Unblock

             Set blockedFocusEvent = Nothing

         End If

         If Not myMSAAEventSource Is Nothing Then

             Set myMSAAEventSource = Nothing

         End If

     End If

End Sub


Sub OnChildActivate(wObj)

     ' Begin

     If Not messageWindow Is Nothing Then

         messageWindow.Dispose()

     End If

     Set messageWindow = Nothing


     If fieldDataEvent <> 0 Then

         Disconnect fieldDataEvent

         fieldDataEvent = 0

     End If


     If myKeyDownEvent <> 0 Then

         Disconnect myKeyDownEvent

         myKeyDownEvent = 0

     End If


     Set myMoveMessageHotkey = Nothing


     If wObj.ModuleName = "MSMAIL" Then

         Select Case wObj.ClassName

             Case "Outlook Express Browser Class"

                 ' Maximize the main window

                 wObj.Status = wsMaximized

                 Set myMoveMessageHotkey =

Keyboard.RegisterHotkey(myStrings("MOVE_TO_HOTKEY"),
"TriggerMoveToDialog",

wObj, wObj)

             Case "ATH_Note"

                 If Left(wObj.Name,
Len(myStrings("MESSAGE_WINDOW_NAME"))) =

myStrings("MESSAGE_WINDOW_NAME") Then

                     Set messageWindow = (New
MessageWindowClass).Init(wObj,

False)

                 ElseIf Left(wObj.Name,

Len(myStrings("NEW_MESSAGE_WINDOW_NAME"))) =

myStrings("NEW_MESSAGE_WINDOW_NAME") Then

                     Set messageWindow = (New
MessageWindowClass).Init(wObj,

True)

                 End If

         End Select

     ElseIf wObj.ModuleName = "WLMAIL" Then

         Select Case wObj.Name

             Case myStrings("RULE_EDITOR_WINDOW_NAME")

                 fieldDataEvent = ConnectEvent(wObj,
"OnChildFieldData",

"OnChildFieldData")

         End Select


         Select Case wObj.Title

             Case myStrings("GOTO_FOLDER_WINDOW_TITLE"),

myStrings("MOVE_WINDOW_TITLE")

                 myKeyDownEvent = ConnectEventWithParameter(Keyboard,

"OnKeyDown", "OnKeyDown", wObj)

         End Select

     End If

End Sub


Function OnChildFieldData(wObj)

     Dim lvObj, lvSelected, checkedState


     ' Begin

     OnChildFieldData = vbNull

     If wObj.ClassName = "SysListView32" And wObj.ModuleName = "WLMAIL"
Then

         Set lvObj = wObj.Control

         If TypeName(lvObj) = "ListView" Then

             On Error Resume Next

             Set lvSelected = lvObj.Items.Selected(1)

             On Error Goto 0

             If Not lvSelected Is Nothing Then

                 If lvSelected.StateImage = 7 Then

                     checkedState = myStrings("UNCHECKED")

                 Else

                     checkedState = myStrings("CHECKED")

                 End If

                 OnChildFieldData = checkedState & ". " &
lvSelected.Text

             End If

         End If

     End If

End Function


Sub OnObjectFocus(accObj)

     Dim eventWin : Set eventWin = Nothing

     Dim accRole : Set accRole = Nothing

     Dim accParent : Set accParent = Nothing

     Dim accParentRole : Set accParentRole = Nothing

     Dim handledEvent : handledEvent = False


     ' Begin

     On Error Resume Next

     accObj.Prefetch apAll

     On Error Goto 0


     If Not accObj Is Nothing Then

         Set eventWin = accObj.Window

         If Not eventWin Is Nothing Then

             Set accRole = accObj.Role

             If Not accRole Is Nothing Then

                 Set accParent = accObj.Parent

                 If Not accParent Is Nothing Then

                     Set accParentRole = accParent.Role

                     If Not accParentRole Is Nothing Then

                         If eventWin.ClassName = "WLXDUI" And

eventWin.ModuleName = "WLMAIL" Then

                             If accRole.Value = role_SYSTEM_LISTITEM
Then

                                 If accParentRole.Value =
role_SYSTEM_WINDOW

And accParent.Name = "ABFrame" Then

                                     Dim parts : parts =

Split(accObj.Description, vbCr)

                                     Dim contact

                                     If Trim(accObj.Name) <>
Trim(parts(0))

Then

                                         contact = accObj.Name & ". " &

parts(0)

                                     Else

                                         contact = parts(0)

                                     End If

                                     Queue "MySpeak", contact

                                     handledEvent = True

                                 End If

                             End If

                         End If

                     End If

                 End If

             End If

         End If

     End If


     If Not accObj Is Nothing Then

         If Not handledEvent Then

             accObj.SimulateEvent event_OBJECT_FOCUS, apAll

         End If

     End If

End Sub


Sub MySpeak(str)

     ' Begin

     If str <> lastSpoken Then

         Silence

         Queue "MyBraille", str

         Speak str

     End If

     lastSpoken = str

End Sub


Sub MyBraille(str)

     Dim bDisplay, padding


     ' Begin

     Set bDisplay = Nothing

     If SharedObjects("com.GWMicro.GWToolkit.Version")() >= "8.5.1"
Then

         If myBrailleObj is Nothing Then

             Set myBrailleObj =

SharedObjects("com.GWMicro.GWToolkit.CustomBraille").NewBraille()

         End If

         If Not myBrailleObj is Nothing Then

             myBrailleObj.Display str

             ConnectKeyDown

         End If

     Else

         On Error Resume Next

         Set bDisplay = BrailleDisplays.Active

         On Error Goto 0

         If Not bDisplay Is Nothing Then

             If bDisplay.Type <> bdtNone Then

                 padding = Braille.ActiveCellCount

                 If Len(str) < padding Then

                     padding = padding - Len(str)

                 End If

                 If padding > Len(str) Then

                     str = str & String(padding, " ")

                 End If

                 Braille.Display str

             End If

         End If

     End If

End Sub


Sub TriggerMoveToDialog(wObj)

     Dim ribbon, item


     ' Begin

     On Error Resume Next ' Because MSAA

     Set ribbon = GetRibbon()

     If Not ribbon Is Nothing Then

         ' NOTE: This won't work if the Home tab is NOT the active tab!

         Set item = GetRibbonItem(ribbon,
myStrings("HOME_RIBBON_TAB_NAME"),

myStrings("HOME_ACTIONS_RIBBON_GROUP_NAME"),

myStrings("HOME_ACTIONS_MOVETO_ITEM_NAME"))

         If Not item Is Nothing Then

             item.DoDefaultAction()

             If Err.Number <> 0 Then

                 Silence

                 Speak myStrings("MOVE_UNAVAILABLE")

             End If

         End If

     End If

     On Error Goto 0

End Sub


Function GetRibbon()

     ' Begin

     Set GetRibbon = DrillDown(ActiveWindow.Accessible,
role_SYSTEM_PANE,

myStrings("LOWER_RIBBON"))

End Function


Function GetRibbonItem(ribbon, tabName, groupName, itemName)

     Dim child, tabObj, groupObj, itemObj


     ' Begin

     Set itemObj = Nothing

     Set tabObj = Nothing

     Set groupObj = Nothing


     If Not ribbon Is Nothing Then

         For Each child In ribbon.Children(1).Children

             If tabObj Is Nothing Then

                 If child.Name = tabName Then

                     Set tabObj = child

                     Exit For

                 End If

             End If

         Next

         If Not tabObj Is Nothing Then

             For Each child In tabObj.Children

                 If groupObj Is Nothing Then

                     If child.Name = groupName Then

                         Set groupObj = child

                         Exit For

                     End If

                 End If

             Next

         End If


         If Not groupObj Is Nothing Then

             For Each child In groupObj.Children

                 If itemObj Is Nothing Then

                     If child.Name = itemName Then

                         Set itemObj = child

                         Exit For

                     End If

                 End If

             Next

         End If

     End If

     Set GetRibbonItem = itemObj

End Function


Function DrillDown(accObj, role, name)

     Dim child, result


     ' Begin

     On Error Resume Next

     If accObj.Role.Value = role Then

         If accObj.Name = name Then

             Set DrillDown = accObj

             Exit Function

         End If

     End If


     For Each child In accObj.Children

         If child.Role.Value = role Then

             If child.Name = name Then

                 Set DrillDown = child

                 Exit Function

             End If

         End If

         If child.Children.Count > 0 Then

             Set result = DrillDown(child, role, name)

             If Not result Is Nothing Then

                 Set DrillDown = result

                 Exit Function

             End If

         End If

     Next

     On Error Goto 0

     Set DrillDown = Nothing

End Function


Function OnKeyDown(vk, km, wObj)

     Dim kDisp


     ' Begin

     kDisp = kdProcess

     If keyPressTimer <> 0 Then

         StopTimer keyPressTimer

         keyPressTimer = 0

     End If

     If FocusedWindow.ModuleName = "WLMAIL" And
FocusedWindow.ClassName =

"WLXDUI" Then

         ' Start keeping track of key presses. When the timer fires,
then

look

         ' for the string entered.

         km = km And Not kmShift And Not kmNumpad And Not kmNumlock

         If (vk = 32 Or (vk >= 48 And vk <= 126)) And km = 0 Then

             firstLetterNavStr = firstLetterNavStr & ChrW(vk)

             keyPressTimer = StartTimer(250, "FirstLetterNav",

firstLetterNavStr)

             kDisp = kdDiscard

         Else

             firstLetterNavStr = ""

             keyPressTimer = 0

         End If

     Else

         firstLetterNavStr = ""

         keyPressTimer = 0

     End If

     OnKeyDown = kDisp

End Function


Sub ConnectKeyDown

     If keyProcessedDownEventForBraille = 0 Then

         keyProcessedDownEventForBraille = ConnectEvent(Keyboard,

"OnKeyProcessedDown", "OnKeyProcessedDown")

     End If

End Sub


Sub DisconnectKeyDown

     If keyProcessedDownEventForBraille <> 0 Then

         Disconnect keyProcessedDownEventForBraille

         keyProcessedDownEventForBraille = 0

     End If

End Sub


Sub OnKeyProcessedDown(vk, km)

     If Not myBrailleObj Is Nothing Then

         myBrailleObj.ReleaseDisplay

         DisconnectKeyDown

     End If

End Sub



Sub FirstLetterNav(navStr)

     Dim focusAccObj, folderlist, folderInfo, nextFolderListID,
nextIndex,

currIndex, currFolderListID, selectedFolder, found


     ' Begin

     found = False


     If myKeyDownEvent <> 0 Then

         Disconnect myKeyDownEvent

         myKeyDownEvent = 0

     End If


     If keyPressTimer <> 0 Then

         StopTimer keyPressTimer

         keyPressTimer = 0

     End If


     Set focusAccObj = FocusedWindow.Accessible

     Do

         ' Get the current hash of visible folder names and index of
the

selected item

         Set folderList = DrillDown(focusAccObj, role_SYSTEM_OUTLINE,

myStrings("FOLDER_TREE_LIST_PANE"))

         If Not folderList Is Nothing Then

             folderInfo =

GetSelectedFolderInfo(folderList.Children.FilterByRoleAndState(role_SYSTEM_OUTLINEITEM))



             If IsArray(folderInfo) And UBound(folderInfo) > 0 Then

                 currfolderListID = folderInfo(0)

                 currIndex = folderInfo(1)

             End If

         End If


         ' Then send a down arrow. use Down and Up because InsertKey is

synchronous, and too slow

         Keyboard.InsertKeyDown vk_DOWN

         Keyboard.InsertKeyUp vk_DOWN


         ' Get the new hash of visible folder names and index of the
selected

item

         Set folderList = DrillDown(focusAccObj, role_SYSTEM_OUTLINE,

myStrings("FOLDER_TREE_LIST_PANE"))

         If Not folderList Is Nothing Then

             folderInfo =

GetSelectedFolderInfo(folderList.Children.FilterByRoleAndState(role_SYSTEM_OUTLINEITEM))



             If IsArray(folderInfo) And UBound(folderInfo) Then

                 nextFolderListID = folderInfo(0)

                 nextIndex = folderInfo(1)

             End If

         End If

         ' See if we have a match

         If IsArray(folderInfo) And UBound(folderInfo) > 1 Then

             If Left(LCase(folderInfo(2)), Len(navStr)) = LCase(navStr)
Then

                 ' Found a match!

                 found = True

                 Exit Do

             End If

         End If

     Loop While currFolderListID & currIndex <> nextFolderListID &
nextIndex


     If Not found Then

         Keyboard.InsertKey vk_HOME, kmControl

         Silence

         Speak myStrings("NO_MATCH")

     End If


     myKeyDownEvent = ConnectEventWithParameter(Keyboard, "OnKeyDown",

"OnKeyDown", ActiveWindow)


     firstLetterNavStr = ""

End Sub


Function GetSelectedFolderInfo(folderList)

     Dim result, index, folder, folderName, folderState


     ' Begin

     index = 1

     result = Array("", index, "")

     Set folderState = Nothing

     If Not folderList is Nothing Then

         For Each folder In folderList

             If Not folder is Nothing Then

                 folderName = folder.Name

                 result(0) = result(0) & Replace(folderName, " ", "")

                 On Error Resume Next

                 Set folderState = folder.State

                 On Error Goto 0

                 If Not folderState Is Nothing Then

                     If folderState.Selected Then

                         result(1) = index

                         result(2) = folderName

                     End If

                 End If

             End If

             index = index + 1

         Next

     End If

     GetSelectedFolderInfo = result

End Function

'' SIG '' Begin signature block

'' SIG '' MIIZwAYJKoZIhvcNAQcCoIIZsTCCGa0CAQExCzAJBgUr

'' SIG '' DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB

'' SIG '' gjcCAR4wJAIBAQQQTvApFpkntU2P5azhDxfrqwIBAAIB

'' SIG '' AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFMOtHpDd0pTH

'' SIG '' tywr8b101OTiYaeioIIUIzCCBBQwggL8oAMCAQICCwQA

'' SIG '' AAAAAS9O4VLXMA0GCSqGSIb3DQEBBQUAMFcxCzAJBgNV

'' SIG '' BAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNh

'' SIG '' MRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9i

'' SIG '' YWxTaWduIFJvb3QgQ0EwHhcNMTEwNDEzMTAwMDAwWhcN

'' SIG '' MjgwMTI4MTIwMDAwWjBSMQswCQYDVQQGEwJCRTEZMBcG

'' SIG '' A1UEChMQR2xvYmFsU2lnbiBudi1zYTEoMCYGA1UEAxMf

'' SIG '' R2xvYmFsU2lnbiBUaW1lc3RhbXBpbmcgQ0EgLSBHMjCC

'' SIG '' ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJTv

'' SIG '' Zfi1V5+gUw00BusJH7dHGGrL8Fvk/yelNNH3iRq/nrHN

'' SIG '' EkFuZtSBoIWLZFpGL5mgjXex4rxc3SLXamfQu+jKdN6L

'' SIG '' Tw2wUuWQW+tHDvHnn5wLkGU+F5YwRXJtOaEXNsq5oIwb

'' SIG '' TwgZ9oExrWEWpGLmtECew/z7lfb7tS6VgZjg78Xr2AJZ

'' SIG '' eHf3quNSa1CRKcX8982TZdJgYSLyBvsy3RZR+g79ijDw

'' SIG '' Fwmnu/MErquQ52zfeqn078RiJ19vmW04dKoRi9rfxxRM

'' SIG '' 6YWy7MJ9SiaP51a6puDPklOAdPQD7GiyYLyEIACDG6Hu

'' SIG '' tHQFwSmOYtBHsfrwU8wY+S47+XB+tCUCAwEAAaOB5TCB

'' SIG '' 4jAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB

'' SIG '' /wIBADAdBgNVHQ4EFgQURtg+/9zjvv+D5vSFm7DdatYU

'' SIG '' qcEwRwYDVR0gBEAwPjA8BgRVHSAAMDQwMgYIKwYBBQUH

'' SIG '' AgEWJmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3Jl

'' SIG '' cG9zaXRvcnkvMDMGA1UdHwQsMCowKKAmoCSGImh0dHA6

'' SIG '' Ly9jcmwuZ2xvYmFsc2lnbi5uZXQvcm9vdC5jcmwwHwYD

'' SIG '' VR0jBBgwFoAUYHtmGkUNl8qJUC99BM00qP/8/UswDQYJ

'' SIG '' KoZIhvcNAQEFBQADggEBAE5eVpAeRrTZSTHzuxc5KBvC

'' SIG '' Ft39QdwJBQSbb7KimtaZLkCZAFW16j+lIHbThjTUF8xV

'' SIG '' OseC7u+ourzYBp8VUN/NFntSOgLXGRr9r/B4XOBLxRjf

'' SIG '' OiQe2qy4qVgEAgcw27ASXv4xvvAESPTwcPg6XlaDzz37

'' SIG '' Dbz0xe2XnbnU26UnhOM4m4unNYZEIKQ7baRqC6GD/Sjr

'' SIG '' 2u8o9syIXfsKOwCr4CHr4i81bA+ONEWX66L3mTM1fsua

'' SIG '' irtFTec/n8LZivplsm7HfmX/6JLhLDGi97AnNkiPJm87

'' SIG '' 7k12H3nD5X+WNbwtDswBsI5//1GAgKeS1LNERmSMh08W

'' SIG '' YwcxS2Ow3/MwggSfMIIDh6ADAgECAhIRIQaggdM/2Hrl

'' SIG '' gkzBa1IJTgMwDQYJKoZIhvcNAQEFBQAwUjELMAkGA1UE

'' SIG '' BhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2Ex

'' SIG '' KDAmBgNVBAMTH0dsb2JhbFNpZ24gVGltZXN0YW1waW5n

'' SIG '' IENBIC0gRzIwHhcNMTUwMjAzMDAwMDAwWhcNMjYwMzAz

'' SIG '' MDAwMDAwWjBgMQswCQYDVQQGEwJTRzEfMB0GA1UEChMW

'' SIG '' R01PIEdsb2JhbFNpZ24gUHRlIEx0ZDEwMC4GA1UEAxMn

'' SIG '' R2xvYmFsU2lnbiBUU0EgZm9yIE1TIEF1dGhlbnRpY29k

'' SIG '' ZSAtIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB

'' SIG '' CgKCAQEAsBeuotO2BDBWHlgPse1VpNZUy9j2czrsXV6r

'' SIG '' Jf02pfqEw2FAxUa1WVI7QqIuXxNiEKlb5nPWkiWxfSPj

'' SIG '' BrOHOg5D8NcAiVOiETFSKG5dQHI88gl3p0mSl9RskKB2

'' SIG '' p/243LOd8gdgLE9YmABr0xVU4Prd/4AsXximmP/Uq+yh

'' SIG '' RVmyLm9iXeDZGayLV5yoJivZF6UQ0kcIGnAsM4t/aIAq

'' SIG '' taFda92NAgIpA6p8N7u7KU49U5OzpvqP0liTFUy5LauA

'' SIG '' o6Ml+6/3CGSwekQPXBDXX2E3qk5r09JTJZ2Cc/os+XKw

'' SIG '' qRk5KlD6qdA8OsroW+/1X1H0+QrZlzXeaoXmIwRCrwID

'' SIG '' AQABo4IBXzCCAVswDgYDVR0PAQH/BAQDAgeAMEwGA1Ud

'' SIG '' IARFMEMwQQYJKwYBBAGgMgEeMDQwMgYIKwYBBQUHAgEW

'' SIG '' Jmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9z

'' SIG '' aXRvcnkvMAkGA1UdEwQCMAAwFgYDVR0lAQH/BAwwCgYI

'' SIG '' KwYBBQUHAwgwQgYDVR0fBDswOTA3oDWgM4YxaHR0cDov

'' SIG '' L2NybC5nbG9iYWxzaWduLmNvbS9ncy9nc3RpbWVzdGFt

'' SIG '' cGluZ2cyLmNybDBUBggrBgEFBQcBAQRIMEYwRAYIKwYB

'' SIG '' BQUHMAKGOGh0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5j

'' SIG '' b20vY2FjZXJ0L2dzdGltZXN0YW1waW5nZzIuY3J0MB0G

'' SIG '' A1UdDgQWBBTUooRKOFoYf7pPMFC9ndV6h9YJ9zAfBgNV

'' SIG '' HSMEGDAWgBRG2D7/3OO+/4Pm9IWbsN1q1hSpwTANBgkq

'' SIG '' hkiG9w0BAQUFAAOCAQEAgDLcB40coJydPCroPSGLWaFN

'' SIG '' fsxEzgO+fqq8xOZ7c7tL8YjakE51Nyg4Y7nXKw9UqVbO

'' SIG '' dzmXMHPNm9nZBUUcjaS4A11P2RwumODpiObs1wV+Vip7

'' SIG '' 9xZbo62PlyUShBuyXGNKCtLvEFRHgoQ1aSicDOQfFBYk

'' SIG '' +nXcdHJuTsrjakOvz302SNG96QaRLC+myHH9z73YnSGY

'' SIG '' /K/b3iKMr6fzd++d3KNwS0Qa8HiFHvKljDm13IgcN+2t

'' SIG '' FPUHCya9vm0CXrG4sFhshToN9v9aJwzF3lPnVDxWTMlO

'' SIG '' TDD28lz7GozCgr6tWZH2G01Ve89bAdz9etNvI1wyR5sB

'' SIG '' 88FRFEaKmzCCBVYwggQ+oAMCAQICEEA59jCxrMC4Ucmz

'' SIG '' YXAhHYwwDQYJKoZIhvcNAQEFBQAwgbQxCzAJBgNVBAYT

'' SIG '' AlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0G

'' SIG '' A1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkG

'' SIG '' A1UECxMyVGVybXMgb2YgdXNlIGF0IGh0dHBzOi8vd3d3

'' SIG '' LnZlcmlzaWduLmNvbS9ycGEgKGMpMTAxLjAsBgNVBAMT

'' SIG '' JVZlcmlTaWduIENsYXNzIDMgQ29kZSBTaWduaW5nIDIw

'' SIG '' MTAgQ0EwHhcNMTUwMzI3MDAwMDAwWhcNMTYwMzI2MjM1

'' SIG '' OTU5WjCBhzELMAkGA1UEBhMCVVMxEDAOBgNVBAgTB1Zl

'' SIG '' cm1vbnQxGjAYBgNVBAcTEU1hbmNoZXN0ZXIgQ2VudGVy

'' SIG '' MSQwIgYDVQQKFBtBbGdvcml0aG1pYyBJbXBsZW1lbnRh

'' SIG '' dGlvbnMxJDAiBgNVBAMUG0FsZ29yaXRobWljIEltcGxl

'' SIG '' bWVudGF0aW9uczCCASIwDQYJKoZIhvcNAQEBBQADggEP

'' SIG '' ADCCAQoCggEBANUpyZy7NBZmLl3P+1wLci8YFyJ3eAdK

'' SIG '' pomRza9BHZWN0HpukPbGQLqRWNZYMqgRsXWRwLSdFTdW

'' SIG '' YuQx0XG1yZpmxP8xN6plK7pe0LuCKg3DSoPhOxUPuyF+

'' SIG '' 0re+bdLkUZdseLZSM9q+TbI3XTMtv4dYGXW1EyrZ5H7j

'' SIG '' 9SzMM6BcjjsdWqg6ewpSNim/0Y5z2kBfsd4KF9w8sBVW

'' SIG '' wIhyo+jUgARnFN3DHBNpjt9Cypn9p6x/ECcNlQrESe3H

'' SIG '' GprUffrvHX680360yzF5+qiQ2/peyvfhpdNclh8vnB1/

'' SIG '' Is2arACrbhwy/GabI7rbeB87qnP9QqJXAMpWbKK79y3N

'' SIG '' dvcCAwEAAaOCAY0wggGJMAkGA1UdEwQCMAAwDgYDVR0P

'' SIG '' AQH/BAQDAgeAMCsGA1UdHwQkMCIwIKAeoByGGmh0dHA6

'' SIG '' Ly9zZi5zeW1jYi5jb20vc2YuY3JsMGYGA1UdIARfMF0w

'' SIG '' WwYLYIZIAYb4RQEHFwMwTDAjBggrBgEFBQcCARYXaHR0

'' SIG '' cHM6Ly9kLnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIw

'' SIG '' GQwXaHR0cHM6Ly9kLnN5bWNiLmNvbS9ycGEwEwYDVR0l

'' SIG '' BAwwCgYIKwYBBQUHAwMwVwYIKwYBBQUHAQEESzBJMB8G

'' SIG '' CCsGAQUFBzABhhNodHRwOi8vc2Yuc3ltY2QuY29tMCYG

'' SIG '' CCsGAQUFBzAChhpodHRwOi8vc2Yuc3ltY2IuY29tL3Nm

'' SIG '' LmNydDAfBgNVHSMEGDAWgBTPmanqeyb0S8mOj9fwBSbv

'' SIG '' 49KnnTAdBgNVHQ4EFgQUchQRcYoquAN+2ATKzxpTAuW/

'' SIG '' GkQwEQYJYIZIAYb4QgEBBAQDAgQQMBYGCisGAQQBgjcC

'' SIG '' ARsECDAGAQEAAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQCa

'' SIG '' +lsppq/uH5TvbHZAY71rRxHA5DvZX4nQVOwjRkIJmtuM

'' SIG '' Vxy4MOBBA9iKmb9i/oQeNAtW7tBb7A3eYP9uxmIW77Hw

'' SIG '' ftq30AGSZyMEZo7F2yuW+V/r8w5H8ZGbzsN+S3snssZT

'' SIG '' 4LKOpbGuBsq6ZFKUz65h+RfAJwaTquyznVjliehFuqfd

'' SIG '' OhFCyh9l7MpeWPXaGgke7MAUAzO16PjCa4oDwlHsDfB/

'' SIG '' qhV9AEDcptlvnjrgGCVMlX8SoUbHY2AfJnSESTMs/mRT

'' SIG '' QSJ1nggwCnw+P7Ww9c0AOGSsMzp53o6jh8rLLU5lGGFL

'' SIG '' pVF2orIIbmAGjLQvKreu0p6z0d5n6MpWMIIGCjCCBPKg

'' SIG '' AwIBAgIQUgDlqiVW/BqG7ZbJ1EszxzANBgkqhkiG9w0B

'' SIG '' AQUFADCByjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZl

'' SIG '' cmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU

'' SIG '' cnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBW

'' SIG '' ZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVz

'' SIG '' ZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAz

'' SIG '' IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0

'' SIG '' aG9yaXR5IC0gRzUwHhcNMTAwMjA4MDAwMDAwWhcNMjAw

'' SIG '' MjA3MjM1OTU5WjCBtDELMAkGA1UEBhMCVVMxFzAVBgNV

'' SIG '' BAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJp

'' SIG '' U2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJt

'' SIG '' cyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNpZ24u

'' SIG '' Y29tL3JwYSAoYykxMDEuMCwGA1UEAxMlVmVyaVNpZ24g

'' SIG '' Q2xhc3MgMyBDb2RlIFNpZ25pbmcgMjAxMCBDQTCCASIw

'' SIG '' DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPUjS16l

'' SIG '' 14q7MunUV/fv5Mcmfq0ZmP6onX2U9jZrENd1gTB/BGh/

'' SIG '' yyt1Hs0dCIzfaZSnN6Oce4DgmeHuN01fzjsU7obU0PUn

'' SIG '' NbwlCzinjGOdF6MIpauw+81qYoJM1SHaG9nx44Q7iipP

'' SIG '' hVuQAU/Jp3YQfycDfL6ufn3B3fkFvBtInGnnwKQ8PEEA

'' SIG '' Pt+W5cXklHHWVQHHACZKQDy1oSapDKdtgI6QJXvPvz8c

'' SIG '' 6y+W+uWHd8a1VrJ6O1QwUxvfYjT/HtH0WpMoheVMF05+

'' SIG '' W/2kk5l/383vpHXv7xX2R+f4GXLYLjQaprSnTH69u08M

'' SIG '' PVfxMNamNo7WgHbXGS6lzX40LYkCAwEAAaOCAf4wggH6

'' SIG '' MBIGA1UdEwEB/wQIMAYBAf8CAQAwcAYDVR0gBGkwZzBl

'' SIG '' BgtghkgBhvhFAQcXAzBWMCgGCCsGAQUFBwIBFhxodHRw

'' SIG '' czovL3d3dy52ZXJpc2lnbi5jb20vY3BzMCoGCCsGAQUF

'' SIG '' BwICMB4aHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9y

'' SIG '' cGEwDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEw

'' SIG '' X6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4D

'' SIG '' AhoEFI/l0xqGrI2Oa8PPgGrUSBgsexkuMCUWI2h0dHA6

'' SIG '' Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMDQG

'' SIG '' A1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwudmVyaXNp

'' SIG '' Z24uY29tL3BjYTMtZzUuY3JsMDQGCCsGAQUFBwEBBCgw

'' SIG '' JjAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AudmVyaXNp

'' SIG '' Z24uY29tMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF

'' SIG '' BQcDAzAoBgNVHREEITAfpB0wGzEZMBcGA1UEAxMQVmVy

'' SIG '' aVNpZ25NUEtJLTItODAdBgNVHQ4EFgQUz5mp6nsm9EvJ

'' SIG '' jo/X8AUm7+PSp50wHwYDVR0jBBgwFoAUf9Nlp8Ld7Lvw

'' SIG '' MAnzQzn6Aq8zMTMwDQYJKoZIhvcNAQEFBQADggEBAFYi

'' SIG '' 5jSkxGHLSLkBrVaoZA/ZjJHEu8wM5a16oCJ/30c4Si1s

'' SIG '' 0X9xGnzscKmx8E/kDwxT+hVe/nSYSSSFgSYckRRHsExj

'' SIG '' jLuhNNTGRegNhSZzA9CpjGRt3HGS5kUFYBVZUTn8WBRr

'' SIG '' /tSk7XlrCAxBcuc3IgYJviPpP0SaHulhncyxkFz8PdKN

'' SIG '' rEI9ZTbUtD1AKI+bEM8jJsxLIMuQH12MTDTKPNjlN9Zv

'' SIG '' pSC9NOsm2a4N58Wa96G0IZEzb4boWLslfHQOWP51G2M/

'' SIG '' zjF8m48blp7FU3aEW5ytkfqs7ZO6XcghU8KCU2OvEg1Q

'' SIG '' hxEbPVRSloosnD2SGgiaBS7Hk6VIkdMxggUJMIIFBQIB

'' SIG '' ATCByTCBtDELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZl

'' SIG '' cmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU

'' SIG '' cnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1

'' SIG '' c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3Jw

'' SIG '' YSAoYykxMDEuMCwGA1UEAxMlVmVyaVNpZ24gQ2xhc3Mg

'' SIG '' MyBDb2RlIFNpZ25pbmcgMjAxMCBDQQIQQDn2MLGswLhR

'' SIG '' ybNhcCEdjDAJBgUrDgMCGgUAoHAwEAYKKwYBBAGCNwIB

'' SIG '' DDECMAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQw

'' SIG '' HAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJ

'' SIG '' KoZIhvcNAQkEMRYEFCBVTuUSJD0Zl8eaiIuwnoCMSRs4

'' SIG '' MA0GCSqGSIb3DQEBAQUABIIBAFMkHoOHu+zPBRjU/ACP

'' SIG '' 1nmbe53IZmDNMzlq4En+o0QH5BGavsBaaA5bCJEE7xG6

'' SIG '' Am0iMUHN7P52iy6tlaZ335RSLSQlxy9ShjeK1Nrm7IV7

'' SIG '' R3GNbwGMINfq627h7pW6V5mo6Jg95d9XDNx9pW9Tpmmo

'' SIG '' 5kLVxcaIKC3K6JwG0cYGeOxOg1GwEBL0/SqcMMFx3m4C

'' SIG '' B3iMQJrVEYlsGmwjqYJRtgL/MACXR3UWYW5PYYZpqr4x

'' SIG '' dBEeV+ioIRWDiOSvdo1asLs8bK+hPyWslvVrQdrvMxRq

'' SIG '' t4/N54QR07cRZ7pmBjtjc9lCyIEA7MrOoo9v84wGM6Vj

'' SIG '' VWR8R3/eyaTngjGhggKiMIICngYJKoZIhvcNAQkGMYIC

'' SIG '' jzCCAosCAQEwaDBSMQswCQYDVQQGEwJCRTEZMBcGA1UE

'' SIG '' ChMQR2xvYmFsU2lnbiBudi1zYTEoMCYGA1UEAxMfR2xv

'' SIG '' YmFsU2lnbiBUaW1lc3RhbXBpbmcgQ0EgLSBHMgISESEG

'' SIG '' oIHTP9h65YJMwWtSCU4DMAkGBSsOAwIaBQCggf0wGAYJ

'' SIG '' KoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0B

'' SIG '' CQUxDxcNMTYwMTI4MTYyMDUzWjAjBgkqhkiG9w0BCQQx

'' SIG '' FgQUi4S2g2cg9GBy+nyT3L8ejs+k4fcwgZ0GCyqGSIb3

'' SIG '' DQEJEAIMMYGNMIGKMIGHMIGEBBSzYwi01M3tT8+9ZrlV

'' SIG '' +uO/sSwp5jBsMFakVDBSMQswCQYDVQQGEwJCRTEZMBcG

'' SIG '' A1UEChMQR2xvYmFsU2lnbiBudi1zYTEoMCYGA1UEAxMf

'' SIG '' R2xvYmFsU2lnbiBUaW1lc3RhbXBpbmcgQ0EgLSBHMgIS

'' SIG '' ESEGoIHTP9h65YJMwWtSCU4DMA0GCSqGSIb3DQEBAQUA

'' SIG '' BIIBACCR8iH1eglTwPY+rljLnDN4OyeBKu35t6nWsH9d

'' SIG '' 7jdY03nwX5g3D4ELmj36CbIBSFpTLyTIIHsB7sDta1zO

'' SIG '' SAgLPsQT1yt5A7hQw3lnil+lTrd4OdANtBSQtbH44vUW

'' SIG '' iZrVivTAvZV+XSpyHEkp3rDnSWS2oc+3QgPy4o1p5/tH

'' SIG '' CnWZp1r85qjk6Q2pDyEiOE+ue9TdGk5qltyHUtQUMcfI

'' SIG '' +P5kneBERq4NZZborwJ5u6bQ2g7QhB7wRpTMyclpTBHG

'' SIG '' g3D6qfg18xc/hXd2+gsHfLBBWOgPnJYkKyt7yrP0ru33

'' SIG '' zt72aJAWo+qXdQCwqBnzg6yz5O7dMKA89I48m0w=

'' SIG '' End signature block

---------------------------------------------------

Thanks in advance.


-----Original Message-----
From: Pamela Dominguez via Talk

Sent: Sunday, November 10, 2019 12:33 AM

To: Window-Eyes Discussion List

Cc: Pamela Dominguez

Subject: Re: email


Really?  I can still use window eyes with windows live mail, and I
haven't

noticed a difference.  So I don't know what you mean about window eyes

stopped tracking the cursor.  Pam.


-----Original Message-----
From: Rod Hutton via Talk

Sent: Saturday, November 09, 2019 8:17 AM

To: Window-Eyes Discussion List

Cc: Rod Hutton

Subject: RE: email


Hi Darrell,


Thunderbird worked great for me until Window-Eyes stopped tracking the

cursor.

This was the second email client which did this to me.

The previous one was Windows Live Mail.

Since I switched to Office 365 Outlook, this has not happened.

I know that Office 365 costs money on an ongoing basis, but Microsoft

regularly improves its accessibility, and so staying with it gives you
the

best opportunity to use accessible email software on Windows and the
Apple

Mac.

I know, I say this all the time. Smile


With respect,


Rod


Sent from Outlook for Windows


-----Original Message-----

From: Talk <
[email protected]
On

Behalf Of Darrell Bowles via Talk

Sent: November 7, 2019 8:48 PM

To: Window-Eyes Discussion List <
[email protected]


Cc: Darrell Bowles <
[email protected]


Subject: RE: email


How about thunderbird?



-----Original Message-----

From: Talk <
[email protected]
On Behalf

Of tony c via Talk

Sent: Thursday, November 7, 2019 8:13 PM

To: Window-Eyes Discussion List <
[email protected]


Cc: tony c <
[email protected]


Subject: RE: email


I know outlook is accessible, but I don’t need office 365. I use very
little

of anything except Microsoft word on a rare occasion. I just hate the
mail

program that’s with win 10. I do use it but it’s not totally
accessible.


Sent from Mail for Windows 10


From: joseph hudson via Talk

Sent: Thursday, November 7, 2019 2:49 PM

To: Window-Eyes Discussion List

Cc: joseph hudson

Subject: Re: email


Hi Tony, Outlook is very accessible.



joseph hudson


Technology support for the blind or better known as Mack, IOS and
Windows

support


FaceTime, iMessage, and email


[email protected]


Telephone/what's up messenger


254-300-7667


Emergency cell


254-813-2461


Twitter

https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftwitter.com%2Fjosephhudson89&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=jsjRGciWdVuDVRH5GINvRpgeuZ5NM%2FPTPoOhbUtys2I%3D&amp;reserved=0




Facebook


https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.facebook.com%2Fjoseph.hudson.9404&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=TE8%2Fenq1ezhWNwKx62BDgNVxRZS2GWbdXLKSII5yjIQ%3D&amp;reserved=0




On Nov 7, 2019, at 1:26 PM, tony c via Talk <
[email protected]


wrote:



Hi, I need a accessible email program. I’m using the one that on
windows

10, it is useable but just barely. Lol Tony



Sent from Mail for Windows 10



_______________________________________________

Any views or opinions presented in this email are solely those of the

author and do not necessarily represent those of Ai Squared.



For membership options, visit


https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Foptions.cgi%2Ftalk-window-eyes.com%2Fjhud7789%2540twc.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=9bjIZ689aihYWPqqvcnFmyM9xmjh4slVEoxboYiP9l0%3D&amp;reserved=0


.

For subscription options, visit


https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Flistinfo.cgi%2Ftalk-window-eyes.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=W0Im4gfNzqKxokPur1%2Bi8S4KCrie5pS%2FGUWkeKrlbCY%3D&amp;reserved=0



List archives can be found at


https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Fprivate.cgi%2Ftalk-window-eyes.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=dlNeDOctdjTtEzjqJvmGIfalKfWKK%2FF6Ow%2FdGqML2hc%3D&amp;reserved=0




_______________________________________________

Any views or opinions presented in this email are solely those of the
author

and do not necessarily represent those of Ai Squared.


For membership options, visit

https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Foptions.cgi%2Ftalk-window-eyes.com%2Ftch828%2540mediacombb.net&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=0LhtRp8fslCR0vRFkpbWbo6%2F9uc0Qm8HKKv%2FIke%2FVvA%3D&amp;reserved=0


.

For subscription options, visit

https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Flistinfo.cgi%2Ftalk-window-eyes.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=W0Im4gfNzqKxokPur1%2Bi8S4KCrie5pS%2FGUWkeKrlbCY%3D&amp;reserved=0



List archives can be found at

https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Fprivate.cgi%2Ftalk-window-eyes.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679719753&amp;sdata=dlNeDOctdjTtEzjqJvmGIfalKfWKK%2FF6Ow%2FdGqML2hc%3D&amp;reserved=0




_______________________________________________

Any views or opinions presented in this email are solely those of the
author

and do not necessarily represent those of Ai Squared.


For membership options, visit

https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Foptions.cgi%2Ftalk-window-eyes.com%2Fdgbowles%2540msn.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679729758&amp;sdata=9B6HvLE%2Fa%2BPKJXT3kl1rPyzsDgP0D1%2BMTrhNHMcoWgo%3D&amp;reserved=0


.

For subscription options, visit

https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Flistinfo.cgi%2Ftalk-window-eyes.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679729758&amp;sdata=kTzxo%2B7QLkTekkgvd7S6Qwvd6IwnKL3EftPFFD79tW0%3D&amp;reserved=0



List archives can be found at

https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.window-eyes.com%2Fprivate.cgi%2Ftalk-window-eyes.com&amp;data=02%7C01%7C%7Cc244c73ce10444eaf5f708d763e8c44e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637087723679729758&amp;sdata=0UCfjeZuxNAyWL0x7RavHnbKGRVM%2BTCjrwOkmlnmMps%3D&amp;reserved=0



_______________________________________________

Any views or opinions presented in this email are solely those of the
author

and do not necessarily represent those of Ai Squared.


For membership options, visit

http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/rod_hutton%40hotmail.com


.

For subscription options, visit

http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com

List archives can be found at

http://lists.window-eyes.com/private.cgi/talk-window-eyes.com

_______________________________________________

Any views or opinions presented in this email are solely those of the
author

and do not necessarily represent those of Ai Squared.


For membership options, visit

http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/pammygirl99%40gmail.com


.

For subscription options, visit

http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com

List archives can be found at

http://lists.window-eyes.com/private.cgi/talk-window-eyes.com


_______________________________________________

Any views or opinions presented in this email are solely those of the
author

and do not necessarily represent those of Ai Squared.


For membership options, visit

http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/peter.chinpk%40gmail.com


.

For subscription options, visit

http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com

List archives can be found at
_______________________________________________
Any views or opinions presented in this email are solely those of the
author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/trailerdavid%40hotmail.com.

For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of
the author
and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/peter.chinpk%40gmail.com.

For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com

_______________________________________________
Any views or opinions presented in this email are solely those of
the author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/rod_hutton%40hotmail.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of
the author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/tom.kingston%40charter.net.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com

_______________________________________________
Any views or opinions presented in this email are solely those of the
author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/peter.chinpk%40gmail.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of the
author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/tom.kingston%40charter.net.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of the
author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/peter.chinpk%40gmail.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of the
author and do not necessarily represent those of Ai Squared.

For membership options, visit
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/trailerdavid%40hotmail.com.
For subscription options, visit
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com
_______________________________________________
Any views or opinions presented in this email are solely those of the author 
and do not necessarily represent those of Ai Squared.

For membership options, visit 
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/tom.kingston%40charter.net.
For subscription options, visit 
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at 
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com

_______________________________________________
Any views or opinions presented in this email are solely those of the author 
and do not necessarily represent those of Ai Squared.

For membership options, visit 
http://lists.window-eyes.com/options.cgi/talk-window-eyes.com/archive%40mail-archive.com.
For subscription options, visit 
http://lists.window-eyes.com/listinfo.cgi/talk-window-eyes.com
List archives can be found at 
http://lists.window-eyes.com/private.cgi/talk-window-eyes.com

Reply via email to