Windows Vista Tips

Windows Vista Tips > Newsgroups > Windows Update > Automatic updates stopped working after SP3 has been installed

Reply
Thread Tools Display Modes

Automatic updates stopped working after SP3 has been installed

 
 
Alexander
Guest
Posts: n/a

 
      06-03-2008
Hello,

We have a corporate WSUS server that all workstations use for getting
updates.

After installing SP3 on a new Windows XP box, that box stopped getting
updates. Its WindowsUpdate.log contains SOAP errors:
....
2008-06-03 19:07:43:222 1052 2f8 Setup * IsUpdateRequired = No
2008-06-03 19:07:43:300 1052 2f8 PT +++++++++++ PT: Synchronizing
server updates +++++++++++
2008-06-03 19:07:43:300 1052 2f8 PT + ServiceId =
{3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL =
http://sus:8530/ClientWebService/client.asmx
2008-06-03 19:07:43:300 1052 2f8 Agent Switching to hardware-verified
ClientId.
2008-06-03 19:07:43:316 1052 2f8 PT WARNING: Cached cookie has expired
or new PID is available
2008-06-03 19:07:43:628 1052 2f8 Agent Created new random SusClientId
cf9b00aa-97a6-4a28-94e2-efdc0c094a7e. Old Id:
71b1e082-140e-45da-ad43-ba80b1e0cb59.
2008-06-03 19:07:43:628 1052 2f8 PT Initializing simple targeting
cookie, clientId = cf9b00aa-97a6-4a28-94e2-efdc0c094a7e, target group = ,
DNS name = comp.domain.biz
2008-06-03 19:07:43:628 1052 2f8 PT Server URL =
http://sus:8530/SimpleAuthWebService/SimpleAuth.asmx
2008-06-03 19:07:46:472 1052 2f8 PT WARNING: SyncUpdates failure, error
= 0x8024400E, soap client error = 7, soap error code = 400, HTTP status code
= 200
2008-06-03 19:07:46:472 1052 2f8 PT WARNING: SOAP Fault: 0x000190
2008-06-03 19:07:46:472 1052 2f8 PT WARNING: faultstring:Fault
occurred
2008-06-03 19:07:46:472 1052 2f8 PT WARNING:
ErrorCode:InternalServerError(5)
2008-06-03 19:07:46:472 1052 2f8 PT WARNING: Messagenull)
2008-06-03 19:07:46:487 1052 2f8 PT WARNING:
Method:"http://www.microsoft.com/SoftwareDistribution/Server/ClientWebService/SyncUpdates"
2008-06-03 19:07:46:487 1052 2f8 PT WARNING:
ID:31d3d97a-8284-4b2e-8e15-5996cf6d9576
2008-06-03 19:07:46:487 1052 2f8 PT WARNING: PTError: 0x8024400e
2008-06-03 19:07:46:487 1052 2f8 PT WARNING: SyncUpdates_WithRecovery
failed.: 0x8024400e
2008-06-03 19:07:46:487 1052 2f8 PT WARNING: Sync of Updates: 0x8024400e
2008-06-03 19:07:46:487 1052 2f8 PT WARNING: SyncServerUpdatesInternal
failed: 0x8024400e
2008-06-03 19:07:46:487 1052 2f8 Agent * WARNING: Failed to
synchronize, error = 0x8024400E
2008-06-03 19:07:46:503 1052 2f8 Agent * WARNING: Exit code =
0x8024400E
2008-06-03 19:07:46:503 1052 2f8 Agent *********
2008-06-03 19:07:46:503 1052 2f8 Agent ** END ** Agent: Finding
updates [CallerId = AutomaticUpdates]
2008-06-03 19:07:46:503 1052 2f8 Agent *************
2008-06-03 19:07:46:503 1052 2f8 Agent WARNING: WU client failed
Searching for update with error 0x8024400e
2008-06-03 19:07:46:503 1052 d10 AU >>## RESUMED ## AU: Search for
updates [CallId = {B28CD805-76E7-42F9-8F75-84ADA98269AC}]
2008-06-03 19:07:46:503 1052 d10 AU # WARNING: Search callback failed,
result = 0x8024400E
2008-06-03 19:07:46:503 1052 d10 AU # WARNING: Failed to find updates
with error code 8024400E
2008-06-03 19:07:46:503 1052 d10 AU #########
2008-06-03 19:07:46:503 1052 d10 AU ## END ## AU: Search for updates
[CallId = {B28CD805-76E7-42F9-8F75-84ADA98269AC}]
2008-06-03 19:07:46:503 1052 d10 AU #############
2008-06-03 19:07:46:503 1052 d10 AU AU setting next detection timeout to
2008-06-03 20:07:46
2008-06-03 19:07:51:502 1052 2f8 Report REPORT EVENT:
{5692A6B9-F894-4200-8B1F-C337D541B484} 2008-06-03 19:07:46:503+0400 1 148
101 {00000000-0000-0000-0000-000000000000} 0 8024400e AutomaticUpdates
Failure Software Synchronization Windows Update Client failed to detect
with error 0x8024400e.



WSUS server's SoftwareDistribution.log contains:

2008-06-03 15:07:46.561 UTC Error w3wp.6 ClientImplementation.SyncUpdates
System.ArgumentException: Item has already been added. Key in dictionary:
'19202' Key being added: '19202'
at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean
add)
at System.Collections.Hashtable.Add(Object key, Object value)
at
Microsoft.UpdateServices.Internal.ClientImplementa tion.GetSyncInfo(DataAccess
dataAccess, Hashtable stateTable, Hashtable deploymentTable, Boolean
haveGroupsChanged, Boolean doChunking)
at
Microsoft.UpdateServices.Internal.ClientImplementa tion.SoftwareSync(DataAccess
dataAccess, UnencryptedCookieData cookieData, Int32[]
installedNonLeafUpdateIds, Int32[] leafUpdateIds, Boolean haveGroupsChanged,
Boolean expressQuery)
at
Microsoft.UpdateServices.Internal.ClientImplementa tion.SyncUpdates(Cookie
cookie, SyncUpdateParameters parameters)
at
Microsoft.UpdateServices.Internal.ClientImplementa tion.SyncUpdates(Cookie
cookie, SyncUpdateParameters parameters)
at Microsoft.UpdateServices.Internal.Client.SyncUpdat es(Cookie cookie,
SyncUpdateParameters parameters)
at System.RuntimeMethodHandle._InvokeMethodFast(Objec t target, Object[]
arguments, SignatureStruct& sig, MethodAttributes methodAttributes,
RuntimeTypeHandle typeOwner)
at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[]
arguments, Signature sig, MethodAttributes methodAttributes,
RuntimeTypeHandle typeOwner)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean
skipVisibilityChecks)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Web.Services.Protocols.LogicalMethodInfo.In voke(Object target,
Object[] values)
at System.Web.Services.Protocols.WebServiceHandler.In voke()
at System.Web.Services.Protocols.WebServiceHandler.Co reProcessRequest()
at
System.Web.Services.Protocols.SyncSessionlessHandl er.ProcessRequest(HttpContext
context)
at
System.Web.HttpApplication.CallHandlerExecutionSte p.System.Web.HttpApplication.IExecutionStep.Execut e()
at System.Web.HttpApplication.ExecuteStep(IExecutionS tep step, Boolean&
completedSynchronously)
at
System.Web.HttpApplication.ApplicationStepManager. ResumeSteps(Exception
error)
at
System.Web.HttpApplication.System.Web.IHttpAsyncHa ndler.BeginProcessRequest(HttpContext
context, AsyncCallback cb, Object extraData)
at System.Web.HttpRuntime.ProcessRequestInternal(Http WorkerRequest wr)
at System.Web.HttpRuntime.ProcessRequestNoDemand(Http WorkerRequest wr)
at System.Web.Hosting.ISAPIRuntime.ProcessRequest(Int Ptr ecb, Int32
iWRType)
2008-06-03 15:07:46.576 UTC Warning w3wp.6 SoapUtilities.CreateException
ThrowException: actor = http://sus:8530/ClientWebService/client.asmx,
ID=31d3d97a-8284-4b2e-8e15-5996cf6d9576, ErrorCode=InternalServerError,
Message=, Client=?

I've tried to delete SusCliendId from workstation's registry,
SoftwareDistribution folder from workstation's Windows folder - nothing
helps.

All other workstations in AD domain are updating from that WSUS server
perfectly.

Please, help!


 
Reply With Quote
 
 
 
 
Eddie Bowers [MSFT]
Guest
Posts: n/a

 
      06-03-2008
Try this.
net stop wuauserv
net stop bits
rename the c:\windows\software distribution folder
net start bits
net start wuauserv

If this doesn't fix it, then force a reinstall of the agent by downloading
http://download.windowsupdate.com/Wi...one/7.1.6001.6
5/WindowsUpdateAgent30-x86.exe
and installing with the /wuforce switch

Eddie Bowers
Security Support
Microsoft Corporation

This posting is provided "AS IS" with no warranties, and confers no rights.
 
Reply With Quote
 
PA Bear [MS MVP]
Guest
Posts: n/a

 
      06-03-2008
Forwarded to WSUS newsgroup
(microsoft.public.windows.server.update_services) via crosspost as a
convenience to OP.

On the web:
http://www.microsoft.com/communities...pdate_services

In your newsreader:
news://msnews.microsoft.com/microsof...pdate_services

NB: Eddie Bowers [MSFT] posted a reply to this thread in WU NG:

<QP>
Try this.
net stop wuauserv
net stop bits
rename the c:\windows\software distribution folder
net start bits
net start wuauserv

If this doesn't fix it, then force a reinstall of the agent by downloading
http://download.windowsupdate.com/Wi...gent30-x86.exe
and installing with the /wuforce switch
</QP>
--
~PA Bear


Alexander wrote:
> Hello,
>
> We have a corporate WSUS server that all workstations use for getting
> updates.
>
> After installing SP3 on a new Windows XP box, that box stopped getting
> updates. Its WindowsUpdate.log contains SOAP errors:
> ...
> 2008-06-03 19:07:43:222 1052 2f8 Setup * IsUpdateRequired = No
> 2008-06-03 19:07:43:300 1052 2f8 PT +++++++++++ PT: Synchronizing
> server updates +++++++++++
> 2008-06-03 19:07:43:300 1052 2f8 PT + ServiceId =
> {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL =
> http://sus:8530/ClientWebService/client.asmx
> 2008-06-03 19:07:43:300 1052 2f8 Agent Switching to hardware-verified
> ClientId.
> 2008-06-03 19:07:43:316 1052 2f8 PT WARNING: Cached cookie has expired
> or new PID is available
> 2008-06-03 19:07:43:628 1052 2f8 Agent Created new random SusClientId
> cf9b00aa-97a6-4a28-94e2-efdc0c094a7e. Old Id:
> 71b1e082-140e-45da-ad43-ba80b1e0cb59.
> 2008-06-03 19:07:43:628 1052 2f8 PT Initializing simple targeting
> cookie, clientId = cf9b00aa-97a6-4a28-94e2-efdc0c094a7e, target group = ,
> DNS name = comp.domain.biz
> 2008-06-03 19:07:43:628 1052 2f8 PT Server URL =
> http://sus:8530/SimpleAuthWebService/SimpleAuth.asmx
> 2008-06-03 19:07:46:472 1052 2f8 PT WARNING: SyncUpdates failure,
> error
> = 0x8024400E, soap client error = 7, soap error code = 400, HTTP status
> code
> = 200
> 2008-06-03 19:07:46:472 1052 2f8 PT WARNING: SOAP Fault: 0x000190
> 2008-06-03 19:07:46:472 1052 2f8 PT WARNING: faultstring:Fault
> occurred
> 2008-06-03 19:07:46:472 1052 2f8 PT WARNING:
> ErrorCode:InternalServerError(5)
> 2008-06-03 19:07:46:472 1052 2f8 PT WARNING: Messagenull)
> 2008-06-03 19:07:46:487 1052 2f8 PT WARNING:
> Method:"http://www.microsoft.com/SoftwareDistribution/Server/ClientWebService/SyncUpdates"
> 2008-06-03 19:07:46:487 1052 2f8 PT WARNING:
> ID:31d3d97a-8284-4b2e-8e15-5996cf6d9576
> 2008-06-03 19:07:46:487 1052 2f8 PT WARNING: PTError: 0x8024400e
> 2008-06-03 19:07:46:487 1052 2f8 PT WARNING: SyncUpdates_WithRecovery
> failed.: 0x8024400e
> 2008-06-03 19:07:46:487 1052 2f8 PT WARNING: Sync of Updates:
> 0x8024400e
> 2008-06-03 19:07:46:487 1052 2f8 PT WARNING: SyncServerUpdatesInternal
> failed: 0x8024400e
> 2008-06-03 19:07:46:487 1052 2f8 Agent * WARNING: Failed to
> synchronize, error = 0x8024400E
> 2008-06-03 19:07:46:503 1052 2f8 Agent * WARNING: Exit code =
> 0x8024400E
> 2008-06-03 19:07:46:503 1052 2f8 Agent *********
> 2008-06-03 19:07:46:503 1052 2f8 Agent ** END ** Agent: Finding
> updates [CallerId = AutomaticUpdates]
> 2008-06-03 19:07:46:503 1052 2f8 Agent *************
> 2008-06-03 19:07:46:503 1052 2f8 Agent WARNING: WU client failed
> Searching for update with error 0x8024400e
> 2008-06-03 19:07:46:503 1052 d10 AU >>## RESUMED ## AU: Search for
> updates [CallId = {B28CD805-76E7-42F9-8F75-84ADA98269AC}]
> 2008-06-03 19:07:46:503 1052 d10 AU # WARNING: Search callback
> failed,
> result = 0x8024400E
> 2008-06-03 19:07:46:503 1052 d10 AU # WARNING: Failed to find
> updates
> with error code 8024400E
> 2008-06-03 19:07:46:503 1052 d10 AU #########
> 2008-06-03 19:07:46:503 1052 d10 AU ## END ## AU: Search for
> updates
> [CallId = {B28CD805-76E7-42F9-8F75-84ADA98269AC}]
> 2008-06-03 19:07:46:503 1052 d10 AU #############
> 2008-06-03 19:07:46:503 1052 d10 AU AU setting next detection timeout
> to
> 2008-06-03 20:07:46
> 2008-06-03 19:07:51:502 1052 2f8 Report REPORT EVENT:
> {5692A6B9-F894-4200-8B1F-C337D541B484} 2008-06-03 19:07:46:503+0400 1
> 148
> 101 {00000000-0000-0000-0000-000000000000} 0 8024400e AutomaticUpdates
> Failure Software Synchronization Windows Update Client failed to detect
> with error 0x8024400e.
>
>
>
> WSUS server's SoftwareDistribution.log contains:
>
> 2008-06-03 15:07:46.561 UTC Error w3wp.6 ClientImplementation.SyncUpdates
> System.ArgumentException: Item has already been added. Key in dictionary:
> '19202' Key being added: '19202'
> at System.Collections.Hashtable.Insert(Object key, Object nvalue,
> Boolean
> add)
> at System.Collections.Hashtable.Add(Object key, Object value)
> at
> Microsoft.UpdateServices.Internal.ClientImplementa tion.GetSyncInfo(DataAccess
> dataAccess, Hashtable stateTable, Hashtable deploymentTable, Boolean
> haveGroupsChanged, Boolean doChunking)
> at
> Microsoft.UpdateServices.Internal.ClientImplementa tion.SoftwareSync(DataAccess
> dataAccess, UnencryptedCookieData cookieData, Int32[]
> installedNonLeafUpdateIds, Int32[] leafUpdateIds, Boolean
> haveGroupsChanged,
> Boolean expressQuery)
> at
> Microsoft.UpdateServices.Internal.ClientImplementa tion.SyncUpdates(Cookie
> cookie, SyncUpdateParameters parameters)
> at
> Microsoft.UpdateServices.Internal.ClientImplementa tion.SyncUpdates(Cookie
> cookie, SyncUpdateParameters parameters)
> at Microsoft.UpdateServices.Internal.Client.SyncUpdat es(Cookie cookie,
> SyncUpdateParameters parameters)
> at System.RuntimeMethodHandle._InvokeMethodFast(Objec t target, Object[]
> arguments, SignatureStruct& sig, MethodAttributes methodAttributes,
> RuntimeTypeHandle typeOwner)
> at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[]
> arguments, Signature sig, MethodAttributes methodAttributes,
> RuntimeTypeHandle typeOwner)
> at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
> invokeAttr, Binder binder, Object[] parameters, CultureInfo culture,
> Boolean
> skipVisibilityChecks)
> at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
> invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
> at System.Web.Services.Protocols.LogicalMethodInfo.In voke(Object target,
> Object[] values)
> at System.Web.Services.Protocols.WebServiceHandler.In voke()
> at System.Web.Services.Protocols.WebServiceHandler.Co reProcessRequest()
> at
> System.Web.Services.Protocols.SyncSessionlessHandl er.ProcessRequest(HttpContext
> context)
> at
> System.Web.HttpApplication.CallHandlerExecutionSte p.System.Web.HttpApplication.IExecutionStep.Execut e()
> at System.Web.HttpApplication.ExecuteStep(IExecutionS tep step, Boolean&
> completedSynchronously)
> at
> System.Web.HttpApplication.ApplicationStepManager. ResumeSteps(Exception
> error)
> at
> System.Web.HttpApplication.System.Web.IHttpAsyncHa ndler.BeginProcessRequest(HttpContext
> context, AsyncCallback cb, Object extraData)
> at System.Web.HttpRuntime.ProcessRequestInternal(Http WorkerRequest wr)
> at System.Web.HttpRuntime.ProcessRequestNoDemand(Http WorkerRequest wr)
> at System.Web.Hosting.ISAPIRuntime.ProcessRequest(Int Ptr ecb, Int32
> iWRType)
> 2008-06-03 15:07:46.576 UTC Warning w3wp.6 SoapUtilities.CreateException
> ThrowException: actor = http://sus:8530/ClientWebService/client.asmx,
> ID=31d3d97a-8284-4b2e-8e15-5996cf6d9576, ErrorCode=InternalServerError,
> Message=, Client=?
>
> I've tried to delete SusCliendId from workstation's registry,
> SoftwareDistribution folder from workstation's Windows folder - nothing
> helps.
>
> All other workstations in AD domain are updating from that WSUS server
> perfectly.
>
> Please, help!


 
Reply With Quote
 
Alexander
Guest
Posts: n/a

 
      06-04-2008
Thanks for your such a fast answer, Eddie!

Unfortunately, both of your suggestions didn't help.

I suppose, this is a problem on a server side, since it looks like a
duplicate key in database:
2008-06-03 15:07:46.561 UTC Error w3wp.6 ClientImplementation.SyncUpdates
System.ArgumentException: Item has already been added. Key in dictionary:
'19202' Key being added: '19202'
at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean
add)
....

If you have any other suggestions, please, let me know!

"Eddie Bowers [MSFT]" <> wrote in message
news:...
> Try this.
> net stop wuauserv
> net stop bits
> rename the c:\windows\software distribution folder
> net start bits
> net start wuauserv
>
> If this doesn't fix it, then force a reinstall of the agent by downloading
> http://download.windowsupdate.com/Wi...one/7.1.6001.6
> 5/WindowsUpdateAgent30-x86.exe
> and installing with the /wuforce switch



 
Reply With Quote
 
Eddie Bowers [MSFT]
Guest
Posts: n/a

 
      06-04-2008
How about this:

net stop wuauserv

Delete the following registry keys:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Win dowsUpdate\PingID

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Win dowsUpdate\AccountDomainSi
d

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Win dowsUpdate\SusClientId

net start wuauserv
wuauclt.exe /resetauthorization /detectnow


Eddie Bowers
Security Support
Microsoft Corporation

This posting is provided "AS IS" with no warranties, and confers no rights.
 
Reply With Quote
 
Alexander
Guest
Posts: n/a

 
      06-05-2008
Just tried your suggestion. Since there are no PingID and AccountDomainSid,
I've deleted SusClientId only.
Not helped either

Looks like I've discovered the sequence of actions that led to the current
issue:
1. After installing SP3 warnings and soap errors came up
2. One of our IT support guys deleted SusClientId instead of removing
SoftwareDistribution folder
3. And now nothing helps

Any other thoughts?

"Eddie Bowers [MSFT]" <> wrote in message
news...
> How about this:
>
> net stop wuauserv
>
> Delete the following registry keys:
>
> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Win dowsUpdate\PingID
>
> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Win dowsUpdate\AccountDomainSid
>
> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Win dowsUpdate\SusClientId
>
> net start wuauserv
> wuauclt.exe /resetauthorization /detectnow
>
>
> Eddie Bowers
> Security Support
> Microsoft Corporation
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.



 
Reply With Quote
 
Eddie Bowers [MSFT]
Guest
Posts: n/a

 
      06-05-2008
Is this the ONLY client machine that has this problem?
Most of the time this is a WSUS server side problem, but that would cause
all of your clients to fail.
How many computers check into your WSUS server?


Eddie Bowers
Security Support
Microsoft Corporation

This posting is provided "AS IS" with no warranties, and confers no rights.
 
Reply With Quote
 
Alexander
Guest
Posts: n/a

 
      06-06-2008
It appears, there are two more clients that have such a problem: Windows
2000 SP4 and Windows XP SP1.
In total, there are approx. 50 computers that use WSUS server.

"Eddie Bowers [MSFT]" <> wrote in message
news:...
> Is this the ONLY client machine that has this problem?
> Most of the time this is a WSUS server side problem, but that would cause
> all of your clients to fail.
> How many computers check into your WSUS server?



 
Reply With Quote
 
Eddie Bowers [MSFT]
Guest
Posts: n/a

 
      06-09-2008
OK, well lets try the shotgun approach to see what happnes. Run my tool
from:
http:\\www.codeplex.com\aureset


Eddie Bowers
Security Support
Microsoft Corporation

This posting is provided "AS IS" with no warranties, and confers no rights.
 
Reply With Quote
 
Alexander
Guest
Posts: n/a

 
      06-10-2008
Hi Eddie,

This didn't help unfortunately. Do you need me to send generated log files
somewhere?

Please, mention, that couple of antiviruses thinks your software is a virus:
http://www.virustotal.com/analisis/e...f8502edd0fa454

"Eddie Bowers [MSFT]" <> wrote in message
news:...
> OK, well lets try the shotgun approach to see what happnes. Run my tool
> from:
> http:\\www.codeplex.com\aureset



 
Reply With Quote
 
 
 
Reply

« updates fail | hi »
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
MediaPlayer stopped working when Vista was installed CaBigTop Windows Vista Talk 1 05-01-2008 05:50 PM
Installed Vista, IE 'has stopped working' PeggyJ Windows Vista General Discussion 2 02-09-2008 08:50 AM
Updates stopped working ManchesterRob Windows Update 0 11-16-2006 08:31 PM
Read here if your Automatic Updates have stopped working Sgt.Torg Windows Update 3 02-13-2005 04:41 PM
Automatic updates with windows xp pro sp 2 installed Robert Windows Update 3 10-13-2004 07:09 PM



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59