Continuous beeping and Machine_check_exception STOP:A 0X0000009C

T

Terry

I installed a new cpu in my amd athlon socket 939 computer that runs xp home
edition. The old chip was a amd 3200+ and the new chip is a 4400 64x2. When I
couldn't get the ram to work in slots 1 and 2 due to continuous beeping, I
moved to slots 3 & 4. Everything works now but I am getting the blue screen
of death a couple of time a day. The error code is as follows:
Machine_check_exception STOP:A 0X0000009C
(0X00000004,0X8054e5f0f,0XB2000000,0X00070F0F). The event viewer shows no
errors in security, system, or internet explorer, but does show 2 identical
errors in application, both occuring at the same time and as follows: crypt32
event 8.Source: Crypt32. This is further identified as follows: Failed auto
update retrieval of third-party root list sequence number from:
http//www.download.windowsupdate.dom/msdownload/update/v3/static/trustedr/en/authrootseq.txt>
with error: This specified server cannot perform the requested operation. No
further info is available by going to the web site. I tried to do a windows
xp repair but I can't get the system to boot from anything but the hard
drive. I have tried resetting the bios and hitting f12 while booting. (this
gives me the boot selection screen but I lock up and can't change anything.)
I have tried to reset the COMOS and I have flashed the bios but nothing seems
to help. After trying two different sets of 512 memory in slots 1 & 2, both
of which caused the beeping, I just tried putting 2 256 ram sticks into
slots 1 and 2 and they work. DANG! Do I need to go buy an Apple?
 
J

Johnw

Terry wrote :
I installed a new cpu in my amd athlon socket 939 computer that runs xp home
edition. The old chip was a amd 3200+ and the new chip is a 4400 64x2. When I
couldn't get the ram to work in slots 1 and 2 due to continuous beeping, I
moved to slots 3 & 4. Everything works now but I am getting the blue screen
of death a couple of time a day. The error code is as follows:
Machine_check_exception STOP:A 0X0000009C
(0X00000004,0X8054e5f0f,0XB2000000,0X00070F0F). The event viewer shows no
errors in security, system, or internet explorer, but does show 2 identical
errors in application, both occuring at the same time and as follows: crypt32
event 8.Source: Crypt32. This is further identified as follows: Failed auto
update retrieval of third-party root list sequence number from:
http//www.download.windowsupdate.dom/msdownload/update/v3/static/trustedr/en/authrootseq.txt>
with error: This specified server cannot perform the requested operation. No
further info is available by going to the web site. I tried to do a windows
xp repair but I can't get the system to boot from anything but the hard
drive. I have tried resetting the bios and hitting f12 while booting. (this
gives me the boot selection screen but I lock up and can't change anything.)
I have tried to reset the COMOS and I have flashed the bios but nothing seems
to help. After trying two different sets of 512 memory in slots 1 & 2, both
of which caused the beeping, I just tried putting 2 256 ram sticks into
slots 1 and 2 and they work. DANG! Do I need to go buy an Apple?

Machine_check_exception STOP:A 0X0000009C

http://www.google.com.au/search?hl=en&q=Machine_check_exception+STOP:A+0X0000009C+&btnG=Search&meta=

This behavior occurs because your computer processor detected and
reported an unrecoverable hardware error to Windows XP. To do this, the
processor used the Machine Check Exception (MCE) feature of Pentium
processors or the Machine Check Architecture (MCA) feature of some
Pentium Pro processors. The following factors may cause this error
message:

* System bus errors
* Memory errors that may include parity or Error Correction Code
(ECC) problems
* Cache errors in the processor or hardware
* Translation Lookaside Buffers (TLB) errors in the processor
* Other CPU-vendor specific detected hardware problems
* Vendor-specific detected hardware problems
 
P

Paul

Terry said:
I installed a new cpu in my amd athlon socket 939 computer that runs xp home
edition. The old chip was a amd 3200+ and the new chip is a 4400 64x2. When I
couldn't get the ram to work in slots 1 and 2 due to continuous beeping, I
moved to slots 3 & 4. Everything works now but I am getting the blue screen
of death a couple of time a day. The error code is as follows:
Machine_check_exception STOP:A 0X0000009C
(0X00000004,0X8054e5f0f,0XB2000000,0X00070F0F). The event viewer shows no
errors in security, system, or internet explorer, but does show 2 identical
errors in application, both occuring at the same time and as follows: crypt32
event 8.Source: Crypt32. This is further identified as follows: Failed auto
update retrieval of third-party root list sequence number from:
http//www.download.windowsupdate.dom/msdownload/update/v3/static/trustedr/en/authrootseq.txt>
with error: This specified server cannot perform the requested operation. No
further info is available by going to the web site. I tried to do a windows
xp repair but I can't get the system to boot from anything but the hard
drive. I have tried resetting the bios and hitting f12 while booting. (this
gives me the boot selection screen but I lock up and can't change anything.)
I have tried to reset the COMOS and I have flashed the bios but nothing seems
to help. After trying two different sets of 512 memory in slots 1 & 2, both
of which caused the beeping, I just tried putting 2 256 ram sticks into
slots 1 and 2 and they work. DANG! Do I need to go buy an Apple?

Could you give the motherboard make and exact model number ?

Or, if this is a Dell/HP/Acer/Gateway, the complete make and model of the computer ?

Also, the processors have "steppings", and 4400+ may not be a sufficient
identifier of the exact processor. These are two examples I can find,
and these are virtually identical (save for power consumed).

AMD Athlon X2 Dual-Core 4400+ E6 (110 watts)
http://products.amd.com/en-us/DesktopCPUDetail.aspx?id=69

AMD Athlon X2 Dual-Core 4400+ E6 (89 watts)
http://products.amd.com/en-us/DesktopCPUDetail.aspx?id=70

In this example for an Asus motherboard (A8N32-SLI Deluxe), two different
BIOS releases are the minimum versions to run the two example processors.
Any BIOS later than 0703, would handle either of them.

http://support.asus.com.tw/cpusupport/cpusupport.aspx?SLanguage=en-us&model=A8N32-SLI Deluxe

Athlon 64 X2 Dual-Core 4400+ revE6(110W Socket939) ALL 0703
Athlon 64 X2 Dual-Core 4400+ revE6(89W Socket939) ALL 0502

Before purchasing the new processor, did you check what processors the
BIOS supports ? Some motherboards and their BIOS, add support as time
goes by, for newer processors. But in some cases, while the socket
may be compatible, the processor still won't work. (Some companies
making S754 boards, for example, didn't add support for the last
processors AMD introduced for that socket. Too lazy...)

Before installing or using any high level OS, you should test the computer
for integrity with things like memtest86+ from memtest.org . That does
a basic test, that the memory is stable. You should not boot another OS
(at least on a hard drive, where the data can be corrupted), until
the memory is error free.

A second test for a computer which has had a major modification, is
to boot a Linux LiveCD, such as Knoppix or Ubuntu, then run a copy
of Prime95 from mersenne.org . That is a combined CPU and memory
tester, and is a more stressful test than memtest86+ is. The Linux
LiveCD cannot be corrupted, since it is read only. A LiveCD does
not need to be installed on the hard disk. For example, I boot
my Knoppix CD all the time, for maintenance purposes, and by
default, it runs all the disk mounts read-only. You have to
make an extra effort, if you need to write to a disk. So testing
with such an environment, is a more benign way, than booting
Windows only to discover your install is corrupted by your
new hardware. The working directory in that environment (where
you might download the mersenne.org test program), is a ramdisk.

Since the processor is rather old by modern standards, it
could have been abused by a previous owner. There are things
like "electromigration", where a processor, if overclocked and
overvolted, can no longer even run properly at stock speed. At
least one guy on an enthusiast site, had no qualms about
selling his damaged processors, to people on Ebay.

You should return to a "known baseline system". Put your old
processor back in the system, the old working RAM, and retest.
Is the system stable ? Does it act goofy ? Does the problem
continue to dog the system, when the new 4400+ dual is installed ?

Paul
 
T

Terry

Thank you for the help. The mobo is a Gigabyte GA-K8N51GMF. I did check the
compatability prior to ordering the cpu. I also flashed the bios to the
latest version . . .in this case F8. I did reinstall the old cpu and the
memory prior to starting all this when the beeping occurred at first
installation. It worked fine and was stable. I don't know now if it would
work because one of the steps I have taken is to upgrade the cpu drivers from
single to dual core and from what I have read it is easier to go from single
to dual than to go backward. One other point that could help this diagnosis
is that although the device manager shows two processors, the task manager is
only showing one cpu graph.

Again, thanks for the response. I will try running the memtest and get back
to you. I will also try to make and boot the Linux CD but I am not at all
familiar so it makes me shudder LOL.
 
S

SC Tom

According to the manual for that board, it supports the AMD 64, but not the
AMD 64x2. Hence your problem.

SC Tom
 
T

Terry

This is from the manual and as you can see it shows that the chip IS supported:
GA-K8N51GMF-9 Motherboard - 10 -
English
CPU 􀂊 Socket 939 for AMD SempronTM / AthlonTM 64 / AthlonTM 64 FX /
AthlonTM 64 X2 Dual-Core processor (K8)
􀂊 2000MT/s system bus
􀂊 Supports core frequencies in excess of 3000+ and faster
Chipset 􀂊 Northbridge: nVIDIA® GeForce 6100
􀂊 Southbridge: nVIDIA® nForce 430
􀂊 Supported on the Win 2000/XP operating systems
Memory 􀂊 4 DDR DIMM memory slots (supports up to 4GB memory) (Note 1)
􀂊 Supports dual channel DDR 400/333/266/200 DIMM
Slots 􀂊 1 PCI Express x 16 slot
􀂊 1 PCI Express x 1 slot
􀂊 2 PCI slots
IDE Connections 􀂊 2 IDE connection (UDMA 33/ATA 66/ATA 100/ATA 133), allows
connection
of 4 IDE devices
􀂊 Supported on the Win 2000/XP operating systems
FDD Connections 􀂊 1 FDD connection, allows connection of 1 FDD device
Onboard SATA 􀂊 4 SATA 3Gb/s ports from nVIDIA® nForce 430 controller
3Gb/s 􀂊 Supported on the Win 2000/XP operating systems
Peripherals 􀂊 1 parallel port supporting Normal/EPP/ECP mode
􀂊 1 VGA port, onboard COMA connection
􀂊 8 USB 2.0/1.1 ports (rear x 4, front x 4 via cable)
􀂊 2 IEEE1394 ports (rear x 1, front x1 via cable)
􀂊 1 front audio connector
􀂊 1 PS/2 keyboard port
􀂊 1 PS/2 mouse port
Onboard VGA 􀂊 Built-in nVIDIA® GeForce 6100 Chipset
Onboard LAN 􀂊 VITESSE 8201 phy (10/100/1000Mbit)
􀂊 1 RJ45 port
􀂊 Supported on the Win 2000/XP operating systems
Onboard Audio 􀂊 ALC880 CODEC
􀂊 High Definition Audio
􀂊 Supports 2 / 4 / 6 / 8 channel audio
􀂊 Supports Line In ; Line Out (Front Speaker Out) ; MIC ; Surround Speaker
Out (Rear Speaker Out) ; Center/Subwoofer Speaker Out ; Side Speaker
Out connection
􀂊 SPDIF In/Out connection
􀂊 CD In connection
􀂊 Supported on the Win 2000/XP operating systems
 
T

Terry

Oh also I cannot run anything that requires booting from any place other than
the hard drive.
 
J

Jose

I installed a new cpu in my amd athlon socket 939 computer that runs xp home
edition. The old chip was a amd 3200+ and the new chip is a 4400 64x2. When I
couldn't get the ram to work in slots 1 and 2 due to continuous beeping, I
moved to slots 3 & 4. Everything works now but I am getting the blue screen
of death a couple of time a day. The error code is as follows:
Machine_check_exception STOP:A 0X0000009C
(0X00000004,0X8054e5f0f,0XB2000000,0X00070F0F). The event viewer shows no
errors in security, system, or internet explorer, but does show 2 identical
errors in application, both occuring at the same time and as follows: crypt32
event 8.Source: Crypt32. This is further identified as follows: Failed auto
update retrieval of third-party root list sequence number from:
http//www.download.windowsupdate.dom/msdownload/update/v3/static/trustedr/e...>
with error: This specified server cannot perform the requested operation.No
further info is available by going to the web site. I tried to do a windows
xp repair but I can't get the system to boot from anything but the hard
drive. I have tried resetting the bios and hitting f12 while booting. (this
gives me the boot selection screen but I lock up and can't change anything.)
I have tried to reset the COMOS and I have flashed the bios but nothing seems
to  help. After trying two different sets of 512 memory in slots 1 & 2,both
of which caused the beeping, I just  tried putting 2 256 ram sticks into
slots 1 and 2 and they work. DANG!  Do I need to go buy an Apple?

The beeps come from the BIOS and are trying to tell you something is
wrong. If you know how to interpret the beeps, you can get past the
problem by fixing it.

If you look in the BIOS documentation (on or about page 75) there is a
section about different beep patterns (1 short beep is generally good)
and what the other beep codes are trying to tell you. This depends on
if your BIOS is AMI or AWARD according to the documentation.

You describe continous beeping. Is that 1 long, 9 short? Is it 7 or
8 or 9 or 10 or 11 short beeps? Is it continous longs or continuous
shorts?

Anything more than one short beep will give you the information you
need as to what to do next, but you have to read the manual for the
interpretation.

If you have the RAM is slots 1 and 2 and you get more than a short
beep, you need to stop there and figure out why.

Moving the RAM to slots 3 and 4 is not fixing the problem and it just
doesn't feel right, does it?

If your 512 RAMS don't work in slots 1 and 2 (and you sound sure they
should) and cause more than one short beep and your 256 RAMS do work,
I think I would figure that part out first.

Does a single 512 RAM in slot 1 work? Does the other single RAM work
in slot 1? Maybe one RAM is defective. By switching both at the same
time, you can't tell if it is one or both, or neither. If the 256
works in slot 1 and 2, the slots should be good, right? Are you 100%
sure both 512s are exactly the same?

MB jumpers? Incompatible BIOS? Wrong speed? Upside down ;)? If the
RAM is "bad", you will get a different symptom.

Get past the beeps first. They are not good.

Jose
 
P

Paul

Terry said:
Thank you for the help. The mobo is a Gigabyte GA-K8N51GMF. I did check the
compatability prior to ordering the cpu. I also flashed the bios to the
latest version . . .in this case F8. I did reinstall the old cpu and the
memory prior to starting all this when the beeping occurred at first
installation. It worked fine and was stable. I don't know now if it would
work because one of the steps I have taken is to upgrade the cpu drivers from
single to dual core and from what I have read it is easier to go from single
to dual than to go backward. One other point that could help this diagnosis
is that although the device manager shows two processors, the task manager is
only showing one cpu graph.

Again, thanks for the response. I will try running the memtest and get back
to you. I will also try to make and boot the Linux CD but I am not at all
familiar so it makes me shudder LOL.

I looked up that motherboard, and that one is Socket 754. Check the
motherboard model number again. You said in your original post,
the socket is S939.

http://www.gigabyte.com.tw/Support/Motherboard/CPUSupport_Model.aspx?ProductID=1950#anchor_os

Paul
 
S

SC Tom

Ah, you left the "-9" off your original listing of the MB number. That makes
a lot of difference :)

SC Tom
 
T

Terry

Hi Jose and thanks for the reply. The beep codes are continuous indicating a
problem with the memory. I have 3 sets of memory: 2 @ 512k (one old but
worked with old cpu & 1 new purchased from Newegg) The motherboard will not
work with only one stick in place. Ram must be used in sets. The only options
are slots 1 & 2 or slots or slots 3 & 4. No other configuration will work
except of course with 4 sticks. I have tried all of the possible
configurations and the only times the beeps don't occur are when I install
the 256 in 1&2, when I install the 512 in slots 3&4, or with the 265 set in
1& 2 and the 512 in 3&4. I have checked the compatibility of all the sticks
and they all are said to be compatible.
 
T

Terry

GA-K8N51GMF-9 nVidia GeForce 6100/nForce 430
Socket 939/ Micro ATX/ PCI-E*16 DDR400 Dual CH/HD Audio/1394 etc.
 
J

Jose

Hi Jose and thanks for the reply. The beep codes are continuous indicating a
problem with the memory. I have 3 sets of memory: 2 @ 512k (one old but
worked with old cpu & 1 new purchased from Newegg) The motherboard will not
work with only one stick in place. Ram must be used in sets. The only options
are slots 1 & 2 or slots or slots 3 & 4. No other configuration will work
except of course with 4 sticks. I have tried all of the possible
configurations and the only times the beeps don't occur are when I install
the 256 in 1&2, when I install the 512 in slots 3&4, or with the 265 set in
1& 2 and the 512 in 3&4. I have checked the compatibility of all the sticks
and they all are said to be compatible.

Yeah - I read a little more in the manual later (in my spare time) and
saw the slots were different and needed pairs, etc.

If you put in 256, 256, 512, 512 (1,2,3,4) does it POST with 1.5GB and
no beeps? I think that would be fine, but maybe not your ideal config
or just right for the MB.

Anywho, I spent a good part of a day trying to get a guy just to
describe his beep codes with something besides "it just beeps!" and
finally he told me (in words) one short, one long, and for his BIOS
that was video, so he reseated his video card and that was it.

I just wanted to make sure it wasn't something really simple.

Other than that, I have no ideas about this problem.

Rotsa ruck!

Jose
 
T

Terry

LOL Jose :) What you suggest is exactly what I have done and yes it posts and
all the ram is used. I still can't change the boot device and I expect to
continue getting the machine stop errors until I can figure this out but hey
.. . at least I am running!
 
P

Paul

Terry said:
LOL Jose :) What you suggest is exactly what I have done and yes it posts and
all the ram is used. I still can't change the boot device and I expect to
continue getting the machine stop errors until I can figure this out but hey
. . at least I am running!

You know, that the RAM population rules, change with processor stepping ?
That means, the content of your Gigabyte motherboard manual, would
have needed to be amended, after the E0/E3/E4/E6 processors came out.

This is your CPU support chart. Only one of the two possible 4400+ S939
processors is in the chart. (Asus is the best at keeping track of the
processors and describing them. Some of the worst companies, give no
individual detail about what processors are supported or tested.)
You would think revision F1 BIOS would be good enough, but you
never know.

http://www.gigabyte.com.tw/Support/Motherboard/CPUSupport_Model.aspx?ProductID=1939#anchor_os

The older processors, like a CG or a D0 stepping, accept a single stick
(in a certain preferred slot, not just any slot). They also accept matched
pairs with the CG and D0 processors. So the allowed amounts of RAM with
those processors, is 1, 2, or 4 sticks, and a single stick only works
in two of the four slots. An "illegal" combination is 3 sticks. And if
there is a hardware defect in your system, which causes
a stick to be ignored, the result might be a 3 stick configuration.
The Gigabyte manual, and the memory tables, properly reflect a
CG or D0 processor.

Anything which is E0 or higher, is different. E0 accepts 1,2,3, or 4
sticks of RAM. They don't have to be matched, because the processor
can operate in a virtual single channel mode. Certain configurations
(the matched pairs thing, with two or four sticks), work to give
better performance. If you insisted on using 3 sticks with a processor
like that, it should work, but it might not have as high a memory
bandwidth benchmark result.

A reference to revision E is here.
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/26094.PDF

PDF page 30

"Revision E

Function 2, Offset 90h, Burst2Opt (bit 5), Mod64BitMux (bit 6... "

The Mod64BitMux bit was added to processors of Revision E or later.
That is the bit that would be used by a sufficiently modern
version of BIOS, to allow 1,2,3, or 4 mismatched sticks of
RAM to work in your motherboard. The bit only needs to be
enabled, if there isn't a nice set of matched pairs involved.
See the bottom of PDF page 107 in the AMD document, for a
description of "Mod64BitMux". If your BIOS cannot deal with
3 sticks of RAM, then you know your BIOS is not ready for
an "E" processor.

Looking at the downloadable manual from Gigabyte (motherboard_manual_k8n51gmf9_e.pdf),
the lower table with the yellow caution symbol, is no longer appropriate for
an "E" processor. All possible configurations should work with "E".

ftp://download.gigabyte.ru/manual/motherboard_manual_k8n51gmf9_e.pdf

So which configurations still cause problems ?

These are the settings typically used for a system like that. In
this example, the memory is all PC3200 (DDR400) stuff. These
are the operating conditions for using up to four sticks of
that memory.

2 DIMMs (dual channel, matched) DDR400, Command Rate 1T

4 DIMMs (dual channel, matched) DDR400, Command Rate 2T
4 DIMMs (dual channel, matched) DDR333, Command Rate 1T

The BIOS will typically switch to DDR333, Command Rate 1T, if
there are four DDR400 sticks present. They select that setting,
because of bus loading. Many users don't like to see the BIOS
do that, and those users will attempt to use
"DDR400, Command Rate 2T" instead, to make themselves feel
better. Operating at DDR400 gives a slight advantage, but
not enough for the level of excitement seen in discussions
about this topic.

The manual is coy about discussing advanced memory settings.
For example, see this comment.

"Answer: Some advanced options are hidden in new BIOS version.
Please press Ctrl and F1 keys after entering BIOS menu and
you will be able to see these options."

Since the memory options are not documented, because they are
"advanced", I cannot give an exact recipe for how I'd tune
your system. This will give a rough idea.

Four sticks, matched.

1) Select DDR400
2) Set the Command Rate to 2T.
3) Set DDR DIMM voltage (VDIMM) to 2.7V if available
4) Adjust timing, like set Tras one unit higher, if the
memory is not stable. Check the RAM SPD tables with
http://www.cpuid.com/cpuz.php , and figure out which
timing is the common denominator. For example, if the
slowest stick is 3-3-3-8, use that for the timing
values. Tcas-Trcd-Trp-Tras.
5) *Don't* boot Windows, until you've run a few passes of
memtest86+ to prove the memory works. Memtest86+ also
has a bandwidth indicator at the top of the screen, which
can be used for comparing the various ways of installing
memory (so you can compare the bandwidth difference between
using one stick and running dual channel).
6) If you're satisfied the memory settings aren't a total
disaster, boot Windows or Linux, and run Prime95 for
a few hours. If errors are detected in ten minutes or
less, you have more tuning to do. When I'm tuning, I use
my Linux CD, because it cannot be corrupted.

Windows Prime95 Stress test for memory and CPU.
http://majorgeeks.com/Prime95_d4363.html

In addition to tuning memory in the BIOS, there is at
least one utility someone wrote, which allows changing
settings in Windows on the fly. Obviously, such a
practice is dangerous. The value of Tcas cannot be
changed in that case, because you're not allowed to
change that on the fly. It is normally set in the BIOS
during POST, and is not supposed to change. I don't
remember the name of that utility, but if you run
out of other options to try, to get at the adjustments,
I'll have a look around and see if I can find it. See
if control-F1 works in your BIOS first, as then
you're likely to get into less trouble.

HTH,
Paul
 
J

Johnw

Terry explained :
LOL Jose :) What you suggest is exactly what I have done and yes it posts and
all the ram is used. I still can't change the boot device and I expect to
continue getting the machine stop errors until I can figure this out but hey
. . at least I am running!

This may help > Craig's PCI Diagnostic software
http://members.datafast.net.au/dft0802/downloads.htm
PCI/PCI32 is different to most so-called "Diagnostic" programs, in that
it totally bypasses Windows, Drivers, ACPI and the BIOS, and instead
communicates directly with the actual hardware at the lowest possible
level - unlike so-called diagnostic programs which merely report what
the Windows API's and/or registry report, regardless of it's accuracy.
PCI32 will show you what's REALLY going on, not just what Windows
thinks is happening.

From the README once installed.

How to use it?

PCI32 is a console mode program - you run it from the command prompt.
The results appear in text form in the command prompt window, just like
"good old" MS-DOS... There is no 'GUI' interface.

General advice for beginners:

• Unzip pci32 to a new folder e.g. C:\PCI32. Use winzip or winrar or
windows XP’s built-in “extract all†command. You should get a bunch of
files, including this document.
• Open the command prompt (start – run – (type in) CMD or start – all
programs – accessories – command prompt) and you get a black screen
with white text.
• Type in C:
• Type in cd \pci32
• Type in pci32
• Type in exit to close the black screen, when you’re finished

Your report will probably scroll off the top of the screen. Use the
window’s vertical scrollbar slider to go back “up†and read from the
top, or use the send-to-notepad method as per below:

Like all good console mode software, it takes command line parameters
(try pci32 /?), and can have it's output 'piped' to a file or device.
So, if you really hate console mode, do this:

PCI32 > report.txt
notepad report.txt
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top