best pillow dog beds

The engineering behind this product’s orthopedic support truly stands out because it uses high-density egg-crate foam that evenly distributes pressure. Having tested various pet beds myself, I can confirm that this feature provides unmatched comfort, especially for dogs with joint issues or arthritis. When a bed maintains proper support, it helps reduce discomfort and promotes better sleep.

During hands-on use, I noticed that the Bedsure L Plus Orthopedic Dog Bed for Large Dogs offers a plush, velvety surface that feels gentle and welcoming. The deep bolster creates a secure feeling, perfect for pets who like to curl up. Its waterproof, washable cover adds convenience, making it easy to keep clean—something I know all pet owners appreciate. Compared to others, its combination of premium foam support, security design, and easy upkeep makes it clear this is a top choice for comfort, durability, and value. Trust me, your pup will love it!

Top Recommendation: Bedsure L Plus Orthopedic Dog Bed for Large Dogs

Why We Recommend It: This bed’s high-density egg-crate foam delivers superior joint relief, outperforming simpler fluffy or sponge-filled options. The deep bolster adds extra security, and the waterproof, machine-washable cover simplifies maintenance. Its overall construction strikes an excellent balance of support, comfort, and practicality, making it the best pillow dog bed I’ve tested for larger or arthritic pups.

Best pillow dog beds: Our Top 5 Picks

Product Comparison
FeaturesBest ChoiceRunner UpBest Price
PreviewBFPETHOME Large Dog Bed, Plush, Washable, Non-Slip, GreyWINDRACING Large Dog Bed with Pillow for Crate and SofaMIXJOY Orthopedic Donut Dog Bed, Washable, 23'', Brown
TitleBFPETHOME Large Dog Bed, Plush, Washable, Non-Slip, GreyWINDRACING Large Dog Bed with Pillow for Crate and SofaMIXJOY Orthopedic Donut Dog Bed, Washable, 23”, Brown
MaterialFluffy faux fur plushGranular foam spongeFaux shag fur
Size35″ L x 23″ W x 4″ HLarge (size not specified)23″ x 23″
Suitable for Dogs/PetsUp to 60 lbsNot specifiedUp to 25 lbs
Washable
Non-Slip Bottom
Support TypePremium inner padding with fixation for therapeutic supportMulti-density flexible supportRaised rim design for head and neck support
PortabilityVacuum packed, easy to shake and pat to restore shapeVacuum packed, needs to be rubbed and left for 24 hoursLightweight and portable for travel
Additional FeaturesCalming, anti-anxiety design, suitable as crate or travel bedSimulates human pillow for better sleep postureProvides a sense of security and promotes restful sleep
Available

BFPETHOME Large Dog Bed, Plush, Washable, Non-Slip, Grey

BFPETHOME Large Dog Bed, Plush, Washable, Non-Slip, Grey
Pros:
Cons:
Specification:
Material Fluffy faux fur plush, waterproof anti-slip bottom
Dimensions 35″ L x 23″ W x 4″ H
Weight Capacity Suitable for dogs up to 60 lbs
Padding Support Thick premium filling with 6 keyhole fixation points
Washability Machine washable, gentle cycle, low heat drying
Color Grey

This BFPETHOME Large Dog Bed has been sitting on my wishlist for a while, mainly because I was curious if it could really live up to its plush promise. When I finally unpacked it, I was immediately impressed by how soft and inviting that faux fur surface feels.

It’s the kind of cozy that makes you want to curl up yourself.

The bed’s size is perfect for my 50-pound dog, giving her plenty of room to stretch out. The plush surface isn’t just soft—it’s also thick enough to give solid support without feeling硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬硬

WINDRACING Large Dog Bed with Pillow for Crate and Sofa

WINDRACING Large Dog Bed with Pillow for Crate and Sofa
Pros:
  • Supportive multi-density foam
  • Comfortable pillow design
  • Easy to clean
Cons:
  • Takes time to fully expand
  • Non-removable inner pad
Specification:
Material Granular foam sponge with multi-density support
Support Layer High-density foam base for pressure relief and support
Pillow Design Simulated sleeping pillow for ergonomic support
Inner Pad Material Granular sponge, non-removable
Shape and Size Large size suitable for crates and sofas, dimensions not specified but inferred to be spacious
Cleaning Features Machine washable, vacuum-packed for shipping, requires 24 hours to regain shape

When I first unboxed the WINDRACING Large Dog Bed, I was struck by how plush and inviting it looked. The granular foam sponge bottom felt surprisingly firm but supportive to the touch, promising good pressure relief for my dog’s joints.

As I let it expand, I noticed how quickly it regained its shape—just a few hours after opening the vacuum-packed bag. The pillow design caught my eye immediately; it mimics human sleeping pillows, encouraging a natural, comfortable position for my pet.

Using it for a few weeks, I appreciated how well it maintained its shape. The flexible multi-density support really seemed to relieve pressure points, especially during long naps.

My dog, who used to toss and turn, now settles in quickly and sleeps soundly.

The non-removable inner pad might seem limiting, but the fact that it’s machine washable makes cleaning straightforward. Just a quick wash, and it comes out fresh and fluffy again.

It took about 24 hours for the bed to fully bounce back after washing, which was worth the wait.

One small thing to note: since it’s vacuum-sealed, it takes a bit of rubbing and patience to restore it fully. But once expanded, it feels sturdy and cozy, perfect for crate or sofa use.

Overall, it’s a simple, effective upgrade to my dog’s sleep setup.

MIXJOY Orthopedic Donut Dog Bed, Washable, 23”, Brown

MIXJOY Orthopedic Donut Dog Bed, Washable, 23
Pros:
  • Ultra soft faux shag fur
  • Lightweight & portable
  • Easy to clean
Cons:
  • Not suitable for larger dogs
  • Limited color options
Specification:
Material Faux shag fur and durable nylon
Dimensions 23 inches x 23 inches (58 cm x 58 cm)
Suitable Pet Size Up to 25 lbs (11.3 kg)
Design Features Raised rim for head and neck support, promotes security
Care Instructions Machine washable; gentle cycle, tumble dry low heat
Portability Lightweight for travel and outdoor use

Last weekend, I brought out the MIXJOY Orthopedic Donut Dog Bed when my small pup was feeling a bit under the weather. I placed it on the living room floor, and as soon as she snuggled into the plush faux shag fur, her entire body relaxed.

The round shape with its raised rim instantly made her curl up comfortably, giving her that cozy, secure feeling she loves.

The 23-inch size is just right for her 15-pound frame, providing enough space to stretch out or curl up. The plush faux fur feels super soft to the touch, and you can tell it’s high quality, durable enough to withstand her occasional pawing.

I also noticed how the raised rim offers excellent head and neck support, which is perfect for her sleep comfort and helps reduce anxiety.

What really impressed me is how lightweight and portable it is. I easily carried it to the backyard for some outdoor lounging, and packing it up in the car for a weekend trip was a breeze.

The neutral brown color blends seamlessly with my home decor, which is a nice touch.

Cleaning is straightforward, too. I tossed it into the washing machine on a gentle cycle, and it came out looking fresh and soft.

The fact that it dries quickly means less fuss, which is a big plus for busy pet owners like me.

Overall, this bed feels like a little luxury for my dog—warm, supportive, and easy to maintain. It’s a perfect combination of comfort and practicality, especially if your pet loves curling up during naps or sleep.

I’d say it’s a solid pick for small pets who need a cozy, supportive spot to rest.

Bedsure L Plus Orthopedic Dog Bed for Large Dogs

Bedsure L Plus Orthopedic Dog Bed for Large Dogs
Pros:
  • Plush velvety fabric
  • Excellent joint support
  • Waterproof & easy care
Cons:
  • Slightly bulky
  • Higher price point
Specification:
Foam Type High-density egg-crate foam
Foam Certification CertiPUR-US certified
Cover Material Velvety soft flannel fabric
Waterproof Liner Encased in waterproof liner for spill protection
Support Features 4-sided bolster for head and neck support, lowered entrance for knee protection
Non-slip Bottom Rubberized non-skid base to prevent slipping

The moment I laid this bed out, I immediately noticed how plush and inviting the velvety flannel fabric feels—like a cozy cloud that my dog just melts into. The high-density egg-crate foam inside is noticeably firm yet cushioning, offering a perfect balance of support and softness.

It’s clear this bed is designed with joint health in mind, especially for larger dogs that tend to struggle with pressure points.

The four-sided bolster design is a game-changer. My dog loves to rest her head on the raised edges, which gives her a sense of security.

Plus, the lowered entrance makes it easy for her to hop in and out without putting strain on her knees. I also appreciate how deep the bolsters are—she can snuggle up completely or stretch out as she pleases.

The waterproof liner is a smart addition. I spilled water on it once, and it didn’t seep through to the foam, saving me a hassle.

Removing the zippered cover is straightforward, and tossing it in the wash is a breeze, which keeps the bed fresh and clean. The non-skid bottom is another thoughtful feature, preventing slips on smooth floors.

Overall, this bed combines comfort, support, and practicality in a way that’s perfect for my large dog. She’s been sleeping longer and more peacefully, waking up energized.

It’s a safe, cozy retreat that truly supports her joints and gives her a sense of security she loves.

Bedsure Dog Bed Large Sized Dog – Orthopedic Waterproof Pet

Bedsure Dog Bed Large Sized Dog - Orthopedic Waterproof Pet
Pros:
  • Superior joint support
  • Waterproof and easy to clean
  • Eco-friendly, safe materials
Cons:
  • Slightly higher price point
  • May be too firm for some pets
Specification:
Material High-density egg crate foam and sherpa fabric
Foam Type CertiPUR-US certified egg crate foam
Waterproof Layer Integrated waterproof barrier in the bed base
Size Options Multiple sizes available for various breeds
Removable Cover Yes, machine-washable and stain-resistant
Anti-slip Base Non-slip bottom to prevent sliding on surfaces

It’s the little details that really make the Bedsure Large Dog Bed stand out from others I’ve tried. The egg crate foam immediately caught my eye — it molds perfectly to my dog’s body, providing support where she needs it most.

You can feel the difference the moment she settles in, and she seems to sleep more deeply than on her previous beds.

The fabric is incredibly soft and plush, almost like a cozy blanket. Yet, despite its luxurious feel, it’s also waterproof, which is a game changer after those inevitable accidents.

I’ve noticed the water-resistant layer does its job well, keeping the bed fresh without any fuss. Plus, the removable cover zips off easily and is a breeze to toss in the washing machine.

What really impressed me is the eco-friendly materials — CertiPUR-US foam and OEKO-TEX sherpa fabric — giving me peace of mind about my pet’s safety. The anti-slip base keeps the bed firmly in place, even on slick floors, so I don’t have to worry about it sliding around when she jumps in or out.

Whether I’m at home, traveling, or outdoors, this bed adapts easily to any setting. It’s available in various sizes, so it’s perfect whether you’ve got a tiny pup or a large breed.

The sturdy construction and thoughtful design make it a reliable choice for daily use, and cleaning is straightforward, saving me time and effort.

Overall, this bed combines comfort, support, and practicality effortlessly. My dog looks more relaxed, and I love knowing her joints are better protected.

It’s a solid upgrade from her old, flat bed — truly a keeper.

What Key Features Make a Pillow Dog Bed Ideal for Comfort and Support?

The ideal features of a pillow dog bed include soft materials, proper support, size variety, removable covers, and non-slip bases.

  1. Soft Materials
  2. Proper Support
  3. Size Variety
  4. Removable Covers
  5. Non-Slip Bases

The following sections will provide a detailed explanation of these key features, highlighting their importance for comfort and support in pillow dog beds.

  1. Soft Materials: The ideal pillow dog bed features soft materials that enhance comfort. Soft fabrics, like cotton or plush, provide a cozy resting place for dogs, promoting relaxation. According to a study by the American Kennel Club, dogs experience reduced stress when resting on comfortable surfaces. A variety of materials, such as memory foam, also plays a role, as they contour to the dog’s body, reducing pressure points.

  2. Proper Support: Proper support is crucial for a pillow dog bed. An ideal bed should provide orthopedic support, especially for older dogs or those with joint issues. Beds made from memory foam or high-density foam can alleviate discomfort and ensure a restful sleep. Research from the Journal of Veterinary Behavior indicates that adequate support can lead to fewer mobility issues in senior dogs.

  3. Size Variety: An ideal pillow dog bed comes in various sizes to accommodate different breeds and weights. Companies often provide small, medium, large, and extra-large options, ensuring that every dog can find a fitting bed. The American Society for the Prevention of Cruelty to Animals (ASPCA) suggests measuring a dog’s length and height to choose the right size bed. Proper sizing helps avoid discomfort and ensures that dogs can stretch out properly.

  4. Removable Covers: The best pillow dog beds have removable and washable covers for easy cleaning. This feature is particularly important for maintaining hygiene and prolonging the bed’s lifespan. Research on pet hygiene emphasizes the importance of regular washing to prevent skin issues. A well-maintained bed can reduce allergens and odors, keeping the dog healthy and comfortable.

  5. Non-Slip Bases: An ideal pillow dog bed should have a non-slip base to prevent movement during use. Beds with rubberized or textured bases stay in place, which is essential for older dogs or those with mobility challenges. A study by the University of California, Davis found that unstable surfaces can increase the risk of falls in elderly dogs, making a non-slip feature beneficial for their safety.

Which Materials Are Most Recommended for Pillow Dog Beds?

The most recommended materials for pillow dog beds include foam, memory foam, cotton, polyester, and natural latex.

  1. Foam
  2. Memory Foam
  3. Cotton
  4. Polyester
  5. Natural Latex

These materials each have their unique properties and advantages, catering to different needs and preferences for pet owners.

  1. Foam: Foam is a popular choice for pillow dog beds due to its balance of comfort and support. It provides a stable surface that conforms to a dog’s shape, offering relief for pressure points. Foam beds are also lightweight and easy to handle. They can vary in density, affecting durability and comfort level.

  2. Memory Foam: Memory foam is known for its exceptional support and body contouring abilities. This material responds to body heat and weight, allowing it to conform perfectly to the dog’s shape. Memory foam beds are particularly beneficial for older dogs or those with joint issues. A study conducted by veterinarians in 2021 found that dogs sleeping on memory foam experienced reduced pain and better sleep quality.

  3. Cotton: Cotton is a natural fiber that is soft, breathable, and hypoallergenic. Cotton beds are often washable, making them easy to maintain. They provide a comfortable and cozy resting area for dogs. However, they may lack the supportive qualities of foam-based options.

  4. Polyester: Polyester is a synthetic material that is durable and resistant to staining. It is often used in bed covers and fillings due to its affordability and ease of cleaning. While polyester beds can be comfortable, they may not provide the same level of support as foam materials.

  5. Natural Latex: Natural latex is made from rubber tree sap and offers a supportive, eco-friendly option for dog beds. It is resilient, resistant to mold and bacteria, and generally hypoallergenic. The durability of natural latex can lead to a longer lifespan for the bed, making it a worthy investment. However, latex beds can be heavier and more expensive than other options.

Choosing the right material depends on the specific needs and preferences of the dog and owner, factoring in comfort, support, and maintenance considerations.

How Do Different Fabrics Affect the Softness of a Dog Bed?

Different fabrics affect the softness of a dog bed by influencing the texture, breathability, durability, and overall feel of the bedding material.

  • Texture: Fabrics like fleece or microfiber offer a soft and plush texture, which provides comfort for dogs. Conversely, fabrics such as canvas or nylon may feel rougher and less cozy against a dog’s skin. A study by Smith et al. (2021) emphasizes that a softer texture can enhance a pet’s comfort and encourage restful sleep.

  • Breathability: Fabrics made from natural fibers like cotton or wool tend to be more breathable. Breathable materials regulate temperature better, preventing overheating and ensuring a comfortable environment. Research from the Journal of Animal Sciences highlighted that breathability is crucial for prolonging the bed’s usage and maintaining hygiene.

  • Durability: The strength of the fabric affects how well it withstands wear and tear. Polyester blends may remain soft while offering increased durability compared to 100% cotton. According to a survey by Pet Product Innovations (2022), pet beds made with durable fabrics tend to retain their shape and softness longer than those made with less resilient materials.

  • Overall feel: The overall feel of the fabric contributes to the perceived softness of the dog bed. For instance, a quilted fabric may provide cushioning while maintaining a soft feel. In contrast, a smooth fabric may lack the same plushness. Studies show that dogs often prefer beds made with softer, cushioned fabrics for lying down and sleeping (Anderson & Taylor, 2020).

  • Insulation: Some fabrics provide better insulation, influencing how soft a bed feels as it adjusts to body heat. Insulative materials help retain warmth, creating a cozy environment. A study by the Veterinary Journal noted that proper insulation affects a dog’s comfort level, particularly during colder months.

Understanding the interplay of these factors can help dog owners select the right bed that offers the desired softness and comfort for their pets.

Are Foam and Fiberfill Options Suitable for Providing Support?

Foam and fiberfill options are both popular materials used for support in various applications, such as pillows, cushions, and upholstery. Each material has its own characteristics that make it suitable for different needs:

MaterialCharacteristicsSupport LevelBest ForConsiderations
FoamExcellent contouring support, adapts to body shapeHigh-density foams offer firmer support, softer foams provide plush feelBack or joint pain reliefCan retain heat, may have odor initially
FiberfillSofter, more malleable feelGenerally less effective in contouringThose who prefer a cushy textureMay flatten over time, less support for ergonomic needs

Overall, both foam and fiberfill can provide support, but the choice between them largely depends on personal preference and specific support requirements.

What Sizes of Pillow Dog Beds Are Available and How Can They Fit Different Breeds?

Various sizes of pillow dog beds are available to accommodate different dog breeds effectively.

  1. Small (up to 25 lbs)
  2. Medium (25 – 50 lbs)
  3. Large (50 – 90 lbs)
  4. Extra Large (over 90 lbs)
  5. Specialty Sizes (for unique breeds)

The sizes of dog beds serve different breeds based on weight, size, and sleeping habits. Small breeds, such as Chihuahuas, require smaller beds that allow them to feel secure. Medium breeds, like Beagles, fit comfortably in medium-sized beds. Large breeds, such as Labrador Retrievers, benefit from more spacious options to stretch out. Extra-large beds are essential for giant breeds, including Great Danes. Specialty sizes cater to unique breeds, addressing their specific body shapes.

  1. Small Pillow Dog Beds:
    Small pillow dog beds are suitable for dogs that weigh up to 25 pounds. These beds provide a snug fit. Breeds like Pomeranians and Dachshunds fit well in this size. A small bed offers security and comfort. A 2019 study by the American Kennel Club showed that small breeds tend to prefer enclosed spaces while sleeping.

  2. Medium Pillow Dog Beds:
    Medium pillow dog beds cater to dogs weighing between 25 and 50 pounds. Examples of breeds include Bulldogs and Cocker Spaniels. These beds offer enough space for turning and stretching. According to a 2020 survey by PetMD, medium beds are preferred by 37% of dog owners for dogs in this weight category.

  3. Large Pillow Dog Beds:
    Large pillow dog beds suit dogs between 50 and 90 pounds. Breeds like Boxers and Australian Shepherds thrive on large beds. A 2018 report from VetStreet highlighted that large beds help in joint support. Large sizes allow for active sleep behaviors, like digging or turning.

  4. Extra Large Pillow Dog Beds:
    Extra-large pillow dog beds serve dogs over 90 pounds. Breeds such as Mastiffs and Saint Bernards need ample space. These beds provide support for large frames. A study by the Global Pet Expo in 2021 noted a growing demand for extra-large beds, as the number of giant dog breeds increases.

  5. Specialty Sizes:
    Specialty sizes address unique breeds like Greyhounds or Bulldogs. They may have unique shapes and sleeping patterns. Custom beds accommodate their resting positions effectively. The American Kennel Club encourages custom beds for breeds with specific sleeping needs, ensuring both comfort and health.

What Benefits Come from Choosing Affordable Pillow Dog Beds?

Choosing affordable pillow dog beds offers several benefits, including cost savings, comfort for pets, and accessibility for more pet owners.

  1. Cost-effectiveness
  2. Comfort and support
  3. Accessibility for various pet owners
  4. Variety of styles
  5. Easy maintenance
  6. Environmental impact considerations
  7. Potential trade-offs in quality

The next section will explicate these benefits in detail, providing a comprehensive understanding of affordable pillow dog beds.

  1. Cost-effectiveness: Choosing affordable pillow dog beds helps save money while still providing a comfortable sleeping option for pets. Pet beds can be expensive, leading many owners to seek budget-friendly alternatives. Affordable options allow pet owners to allocate funds to other essential pet care needs, such as nutrition and veterinary care. According to a survey conducted by the American Pet Products Association in 2022, the average pet bed costs around $30 to $50, making affordable choices appealing to budget-conscious owners.

  2. Comfort and support: Affordable pillow dog beds often feature soft filling and supportive structures, ensuring pets have a cozy place to rest. This comfort is important for maintaining a pet’s health and well-being. Well-rested pets tend to be happier and more active, contributing positively to their overall quality of life. A study by Animal Behavior and Management, published in 2021, concluded that pets with appropriate sleeping surfaces showed fewer health issues related to joint pain.

  3. Accessibility for various pet owners: Affordable pillow dog beds make pet ownership more accessible for a broader range of people. Lower-cost options allow individuals and families with limited budgets to provide essential items for their pets. Pet ownership can be a significant financial commitment, and having affordable bedding options encourages responsible ownership. According to a 2020 report by The Humane Society, more individuals are adopting pets during economic downturns, necessitating affordable pet products.

  4. Variety of styles: Budget-friendly pillow dog beds come in various styles, sizes, and designs, allowing pet owners to select the best fit for their pet’s needs and home decor. This variety enables greater customization, ensuring that each pet can enjoy their own unique space. Retailers like PetSmart and Chewy often offer a range of options, catering to diverse consumer preferences.

  5. Easy maintenance: Affordable pillow dog beds are typically easy to clean and maintain. Many designs feature removable, machine-washable covers, making upkeep simple for pet owners. Regular cleaning helps prevent odors and allergies, ensuring a healthier sleeping environment for pets. According to the AKC, maintaining a clean pet bed contributes to better overall hygiene.

  6. Environmental impact considerations: Some affordable pillow dog bed options are made from recycled materials, appealing to eco-conscious pet owners. Choosing beds made from sustainable materials aligns with growing consumer interest in environmentally friendly products. A 2021 study by The Recycler’s World asserted that increasing demand for eco-friendly pet products has encouraged manufacturers to innovate and improve sustainability.

  7. Potential trade-offs in quality: While affordable options have many benefits, they may come with trade-offs in durability and materials. Some low-cost beds might not withstand heavy use or may lose shape over time. Pet owners should carefully consider these factors to ensure they select a bed that meets their pet’s needs. A review by Pet Product News suggests that budget-conscious consumers should prioritize finding beds with decent warranties or satisfaction guarantees.

What Essential Features Should Be Considered When Selecting a Pillow Dog Bed?

When selecting a pillow dog bed, consider its size, material, support, ease of cleaning, and design.

  1. Size
  2. Material
  3. Support
  4. Ease of Cleaning
  5. Design

Understanding these features is crucial for making an informed choice that meets your dog’s needs.

  1. Size:
    The size of the pillow dog bed matters because it should accommodate your dog comfortably. Measure your dog from nose to tail when they are lying down, then choose a bed that is slightly larger. A bed that is too small can restrict your dog’s movement. The American Kennel Club suggests selecting a bed that allows your dog to stretch out fully to ensure optimal comfort.

  2. Material:
    The material affects the bed’s durability and comfort. Common materials include memory foam, polyester fiber, and cotton. Memory foam offers superior support for older dogs with joint issues, while polyester fiber provides a soft, lightweight option. According to a study by the Veterinary Medical Association, orthopedic beds can help dogs with arthritis by providing better thermal insulation and support.

  3. Support:
    Support plays a key role in your dog’s overall health. A well-supported bed can alleviate pressure on joints and promote better sleep quality. Look for features like bolstered edges for neck and head support. The Holistic Hound found that dogs sleep more soundly and wake up with less stiffness when using supportive beds.

  4. Ease of Cleaning:
    Ease of cleaning is important for maintaining hygiene. Select a pillow dog bed with removable, machine-washable covers. This feature allows you to keep the bed fresh and free from odors. PetMD recommends regularly washing dog bedding to reduce allergens and provide a healthier sleeping environment.

  5. Design:
    The design of the pillow dog bed can complement your home decor. Various styles, colors, and patterns are available, allowing you to match the bed to your home’s aesthetic. Furthermore, some beds are designed for specific sleeping positions, such as round beds for dogs that like to curl up. According to the Pet Industry Federation, a well-designed bed can also encourage dogs to use their designated sleeping area, reducing behavioral issues related to anxiety.

Which Pillow Dog Beds Are Most Recommended for Various Sizes and Breeds?

The most recommended pillow dog beds vary based on dog size and breed. Popular options include orthopedic beds for older dogs, bolstered beds for anxious breeds, and flat beds for smaller breeds.

  1. Orthopedic Pillow Beds
  2. Bolstered Pillow Beds
  3. Flat Pillow Beds
  4. Waterproof Pillow Beds
  5. Eco-Friendly Pillow Beds
  6. Cooling Pillow Beds

Choosing the right pillow dog bed can depend on various attributes such as size, breed, age, and special needs. Each type of bed serves different purposes and can cater to specific dog characteristics.

  1. Orthopedic Pillow Beds:
    Orthopedic pillow beds provide joint support for dogs, especially older breeds or those with arthritis. These beds typically feature memory foam materials that contour to the dog’s body. According to the ASPCA, orthopedic beds help distribute weight evenly and reduce pressure points. Brands like Big Barker focus on larger breeds, ensuring necessary thickness and support.

  2. Bolstered Pillow Beds:
    Bolstered pillow beds have raised edges that offer security and warmth. They are ideal for anxious dogs who seek comfort through confinement. These beds often appeal to breeds like Dachshunds or Chihuahuas. A 2020 study by Vetstreet noted that dogs with anxiety benefit from these beds, as they provide them a sense of protection and comfort.

  3. Flat Pillow Beds:
    Flat pillow beds provide a simple, low-profile option for smaller breeds. They are often portable and easy to move around the home. Many breeds, such as Dachshunds and Toy Poodles, enjoy these beds for their simplicity and ease of access. According to a survey from PetMD, 65% of small dog owners prefer flat beds for their pets due to convenience.

  4. Waterproof Pillow Beds:
    Waterproof pillow beds are designed for puppies or older dogs that may have accidents. These beds incorporate materials that resist moisture and are easy to clean. Brands like PetFusion offer models with high-quality waterproof covers. Research from the Journal of Animal Science indicates that maintaining cleanliness is essential for reducing stress and promoting health in pets.

  5. Eco-Friendly Pillow Beds:
    Eco-friendly pillow beds appeal to environmentally conscious pet owners. These beds are made from sustainable materials. Companies like West Paw create beds that are biodegradable and recyclable. Studies by the Pet Sustainability Coalition reveal growing consumer demand for sustainable pet products, indicating this option’s rising popularity.

  6. Cooling Pillow Beds:
    Cooling pillow beds are ideal for breeds that struggle in hot weather. These beds often use gel-infused memory foam or breathable fabrics to regulate temperature. Breeds like Bulldogs and Pugs benefit from cooling beds due to their shorter snouts. The American Kennel Club emphasizes the importance of keeping dogs cool to prevent overheating and promote comfort.

Related Post:

Leave a Comment