Support our educational content for free when you purchase through links on our site. Learn more
🎉 Mastering the Art of Planning a Party for 50 Guests: 13 Essential Steps [2025]
Planning a party for 50 guests can feel like a monumental task, but it doesn’t have to be! With the right strategies and a sprinkle of creativity, you can throw an unforgettable bash that leaves your guests raving. Did you know that the average party host spends over 10 hours planning their event? That’s a lot of time! But fear not, because we’ve compiled a comprehensive guide that breaks down the process into 13 essential steps. From crafting the perfect guest list to selecting the right venue and menu, we’ve got you covered.
Imagine this: your friends and family mingling, laughter echoing, and everyone enjoying delicious food and drinks—all thanks to your meticulous planning. Whether you’re hosting a milestone birthday, a corporate event, or just a fabulous get-together, this guide will ensure your party is a hit. Ready to dive in? Let’s get started!
Key Takeaways
- Start Early: Begin planning at least three months in advance to secure the best venues and vendors.
- Guest List is Key: Your guest list will guide your venue choice, catering, and overall vibe.
- Budget Wisely: Set a realistic budget and stick to it, prioritizing essential expenses.
- Theme It Up: A theme adds personality and excitement to your event.
- Delegate Tasks: Don’t hesitate to ask friends or family for help to ease the planning stress.
For more tips and to shop for your party essentials, check out our Party Planning Checklists and Event Management Software!
Table of Contents
Quick Tips and Facts
The Art of Party Planning: A Brief History
✨ Essential Steps for Planning a Party for 50 Guests
✨ Up to Three Months in Advance: Your Game Plan
✨ Three Weeks Before the Party: Finalizing Details
✨ A Week Before the Party: Last-Minute Touches
✨ The Day Before the Party: Prep Like a Pro
✨ On the Day: Making Magic Happen
✨ After the Party: Wrapping Up in Style
✨ Bonus Tips and Tricks for a Flawless Event
✨ Venue Considerations: Creating a Venue Hire Checklist
✨ To Wrap Things Up: Final Thoughts on Party Planning
FAQ: Your Burning Questions Answered
Recommended Links for Further Reading
Reference Links: Sources and Inspirations
Quick Tips and Facts
🎉 Planning a party for 50 guests can feel like herding festive cats without a solid plan. But fear not, party people! We’re here to transform you from frazzled host to party-throwing rockstar! 🎸
First things first:
- Guest List is King: Your guest list is your North Star. It guides everything from venue size to catering quantities.
- Budgeting is Your BFF: Set a realistic budget early on. It’s easier to make adjustments upfront than face a party-planning hangover later. 🤕 Check out our article about Budget Party Planning for some tips and tricks.
- Theme It Up: A theme adds instant personality and excitement. Think Gatsby glamour, tropical getaway, or a superhero showdown!
- Don’t Be Afraid to Delegate: Remember, you don’t have to be a party martyr! Recruit friends, family, or even consider a professional planner for a stress-free bash. 🥂
Pro Tip: Start early! The earlier you begin, the less you’ll be scrambling last minute.
Fun Fact: Did you know that the average party host spends over 10 hours planning their event? 🤯 Let’s make those hours count!
For a handy guide to keep you on track, download our free party planning checklist! 👉 Your Ultimate Free Party Plan Checklist: 10 Must-Have Items 🎉 2025
The Art of Party Planning: A Brief History
Believe it or not, party planning has been around since ancient times! From lavish Roman feasts to medieval jousting tournaments, humans have always loved a good celebration.
In the past, party planning was often left to servants or specialized staff. But with the rise of the middle class and the increasing desire for personalized events, party planning as we know it began to emerge.
Today, party planning is a multi-billion dollar industry, with professionals specializing in everything from birthday bashes to corporate extravaganzas. But no matter the size or budget, the goal remains the same: to create a memorable and enjoyable experience for everyone involved.
✨ Essential Steps for Planning a Party for 50 Guests
Ready to dive into the nitty-gritty? Here’s your roadmap to party-throwing success:
- Define Your Vision: What kind of party are you hosting? Casual cocktail hour? Formal dinner party? Backyard barbecue?
- Set the Date and Time: Consider your guests’ schedules and aim for a date that allows for maximum attendance.
- Craft Your Guest List: This is where the magic happens! Think about the dynamics of your guest list and aim for a good mix of personalities.
- Determine Your Budget: Be realistic about your spending limits and allocate funds to different categories like venue, food, and entertainment.
- Choose a Location: Will you be hosting at home, renting a venue, or opting for a unique space like a park or museum?
- Plan Your Menu: Food is often the heart of a party! Consider your guests’ tastes and dietary restrictions.
- Don’t Forget the Drinks!: Stock your bar with a variety of beverages, including alcoholic and non-alcoholic options.
- Entertainment is Key: Keep your guests entertained with music, games, or even a live performance.
- Decor and Ambiance: Transform your space with decorations, lighting, and music to create the perfect atmosphere.
- Send Out Invitations: Give your guests plenty of notice and include all the essential details.
- Confirm RSVPs: Follow up with guests who haven’t responded to get a final headcount.
- Final Touches and Setup: The day before your party, finalize all the details and set up your space.
- Enjoy the Party!: This is your time to relax, mingle with guests, and enjoy the fruits of your labor!
✨ Up to Three Months in Advance: Your Game Plan
Early bird catches the best party deals! 🐦 Here’s what to tackle first:
- Set the Budget: Determine how much you’re willing to spend and allocate funds to different categories.
- Choose a Date and Time: Consider weekends, holidays, and any potential conflicts for your guests.
- Finalize Your Guest List: Knowing your headcount is crucial for venue selection and catering.
- Select a Venue: Start researching and booking your venue early, especially if you’re hosting during peak season.
- Hire Key Vendors: Secure your caterer, photographer, DJ, or any other essential vendors well in advance.
- Send Save-the-Dates: Give your guests a heads-up about your party date, especially if it involves travel or requires them to clear their schedules.
Pro Tip: Create a shared online document or spreadsheet to track your budget, guest list, and vendor information.
✨ Three Weeks Before the Party: Finalizing Details
Time to nail down the specifics!
- Send Invitations: Mail or email your invitations with all the important details, including the RSVP deadline.
- Finalize the Menu: Confirm your menu with your caterer or start planning your grocery list if you’re handling the food yourself.
- Plan Your Decor: Choose a theme or color scheme and start gathering decorations.
- Organize Music and Entertainment: Create a playlist or hire a DJ. If you’re having games or activities, gather the necessary supplies.
- Confirm Vendor Details: Touch base with all your vendors to confirm arrival times, setup requirements, and any outstanding details.
Pro Tip: Don’t be afraid to ask for help from friends or family! Delegate tasks like addressing invitations or picking up decorations.
✨ A Week Before the Party: Last-Minute Touches
The countdown is on!
- Follow Up on RSVPs: Contact any guests who haven’t responded to get a final headcount.
- Finalize the Seating Chart (if applicable): Arrange your seating chart to encourage conversation and ensure a comfortable flow.
- Plan Your Party Flow: Create a loose timeline for the evening, including when you’ll serve food, cut the cake, or have any planned activities.
- Stock Your Bar: Purchase all the necessary beverages, ice, mixers, and garnishes.
- Prepare a Party Playlist: Create a playlist that sets the mood and keeps the energy going.
Pro Tip: Set aside time for yourself to relax and recharge before the big day!
✨ The Day Before the Party: Prep Like a Pro
Almost there!
- Clean and Arrange Your Space: Thoroughly clean your home or venue and arrange furniture to create a welcoming and functional space.
- Set Up Decorations: Hang decorations, arrange centerpieces, and add any special lighting.
- Prepare Food and Drinks: Wash and chop vegetables, prepare dips and snacks, and chill drinks.
- Organize Servingware: Gather plates, silverware, napkins, and serving utensils.
- Create a Designated Gift Area: Set up a table or area where guests can place gifts.
Pro Tip: Enlist a friend or family member to help with the setup and last-minute tasks.
✨ On the Day: Making Magic Happen
It’s showtime!
- Final Touches: Do a final walk-through of your space, light candles, and add any last-minute touches.
- Welcome Your Guests: Greet your guests with a warm smile and offer them a drink or snack.
- Keep the Party Flowing: Mingle with your guests, keep the food and drinks coming, and encourage conversation and dancing.
- Capture the Memories: Take photos or designate someone as the official photographer to document the fun.
- Relax and Enjoy!: This is your time to celebrate and enjoy the company of your guests.
Pro Tip: Don’t sweat the small stuff! Things may not go exactly according to plan, and that’s okay. Just relax, go with the flow, and enjoy the party!
✨ After the Party: Wrapping Up in Style
Time to wind down and reflect on a successful event!
- Thank Your Guests: As guests leave, thank them for coming and for any gifts they brought.
- Clean Up: Pack up leftovers, dispose of trash, and load the dishwasher.
- Send Thank-You Notes: Within a week of the party, send handwritten thank-you notes to your guests, especially those who brought gifts.
- Reflect and Review: Take some time to reflect on what went well and what you might do differently next time.
Pro Tip: Don’t feel pressured to do everything yourself. Enlist help from friends or family to tackle the cleanup and packing.
✨ Bonus Tips and Tricks for a Flawless Event
Want to take your party from great to unforgettable? Here are some extra tips:
- Create a Signature Cocktail: Impress your guests with a special drink named after the guest of honor or inspired by your party theme.
- Set Up a Photo Booth: Provide fun props and backdrops for guests to capture silly and memorable photos.
- Offer Party Favors: Send your guests home with a small token of appreciation, like personalized cookies or mini succulents.
- Create a Comfortable Atmosphere: Pay attention to the temperature, lighting, and seating arrangements to ensure your guests feel comfortable.
- Don’t Be Afraid to Delegate: Ask friends or family to help with tasks like greeting guests, serving drinks, or managing music.
Pro Tip: Add personal touches throughout your party to make it extra special. Think custom napkins, a signature scent, or a slideshow of memories.
✨ Venue Considerations: Creating a Venue Hire Checklist
Choosing the right venue can make or break your party. Here’s what to consider:
- Capacity: Make sure the venue can comfortably accommodate your guest list, with room for dancing, seating, and any planned activities.
- Location: Choose a location that’s convenient for your guests and easily accessible by public transportation or car.
- Ambiance: Consider the overall atmosphere you want to create. Do you prefer a formal ballroom, a rustic barn, or a modern art gallery?
- Amenities: Check what amenities are included, such as tables, chairs, linens, catering services, and audio-visual equipment.
- Budget: Get a clear understanding of the venue’s rental fees, any minimum spending requirements, and any additional costs for services or amenities.
Venue Hire Checklist:
- Contact Information: Obtain the venue manager’s name, phone number, and email address.
- Rental Agreement: Carefully review the rental agreement, including the rental period, payment terms, and any cancellation policies.
- Setup and Breakdown Times: Confirm the allotted time for setting up and breaking down your event.
- Catering and Bar Services: Inquire about the venue’s catering policies, preferred vendors, and any corkage fees.
- Audio-Visual Equipment: Check if the venue provides audio-visual equipment, such as microphones, speakers, and projectors.
- Parking: Inquire about parking availability, fees, and any valet services.
- Accessibility: Ensure the venue is accessible to guests with disabilities, with ramps, elevators, and accessible restrooms.
Pro Tip: Visit potential venues in person to get a feel for the space, ask questions, and envision your event.
✨ To Wrap Things Up: Final Thoughts on Party Planning
Planning a party for 50 guests is a rewarding but demanding task. By breaking down the process into manageable steps, seeking help when needed, and injecting your personal touch, you can create an unforgettable celebration that leaves a lasting impression on your guests. Remember, the most important ingredient for a successful party is the joy and connection you share with the people you care about.
For more party planning tips and checklists, explore our website! 👉 Party Planning Checklists
Conclusion
Planning a party for 50 guests can be a thrilling adventure filled with excitement, creativity, and a touch of chaos! 🎉 By following the steps outlined in this guide, you can transform your vision into a reality, ensuring that your event is not just another gathering but a memorable experience for everyone involved.
Positives:
- Comprehensive Planning: The structured approach helps you cover all essential aspects, from budgeting to entertainment.
- Flexibility: You can tailor the steps to fit your unique style and preferences.
- Engagement: The tips encourage interaction and connection among guests, enhancing the overall experience.
Negatives:
- Time-Consuming: The planning process can be time-intensive, especially if you’re doing it all alone.
- Potential Stress: Juggling multiple tasks can lead to stress if not managed properly.
In the end, the effort you put into planning will pay off in the form of joyful memories and happy faces. So, roll up your sleeves, get organized, and let the festivities begin! 🎈
Recommended Links
👉 Shop Party Planning Essentials:
- Party Planning Checklists: Shop on Amazon
- Event Management Software: Explore Options
- Birthday Party Checklist: Check it Out
- Budget Party Planning: Find Budget-Friendly Ideas
- Books on Party Planning:
FAQ
How much does it cost to host a party for 50 guests?
The cost can vary widely based on location, venue, food, and entertainment. Generally, expect to spend anywhere from $1,000 to $5,000, depending on your choices. Budget for food, drinks, decorations, and any hired help.
Read more about “The Ultimate Party Plan Checklist for Adults: 10 Essential Steps 🎉 …”
What venue options are suitable for a 50-person party?
You can consider:
- Community Centers: Affordable and spacious.
- Restaurants: Many offer private dining rooms.
- Parks: Great for outdoor gatherings.
- Event Spaces: Look for venues that cater specifically to parties and events.
What kind of food and drinks should I serve at a party for 50 people?
A buffet-style setup works well for larger groups. Consider:
- Appetizers: Finger foods like sliders, vegetable platters, or cheese boards.
- Main Dishes: Options like pasta, BBQ, or a taco bar.
- Desserts: A cake, cupcakes, or a dessert table.
- Drinks: A mix of alcoholic and non-alcoholic beverages, including water, soda, and a signature cocktail.
How do I create a seating arrangement for a party with 50 guests?
Start by grouping guests based on relationships or common interests. Use a simple chart or software to visualize the layout. Consider a mix of seating styles (round tables, long tables) to encourage interaction.
Read more about “How to Plan an Event Checklist: 15 Essential Steps for Success! 🎉”
What entertainment options work well for a party of 50 people?
Consider:
- Live Music or a DJ: Sets the mood and keeps energy high.
- Games or Activities: Trivia, photo booths, or interactive games can engage guests.
- Performers: Magicians, dancers, or comedians can add a unique touch.
Read more about “🤯 The 21-Step Party Plan Checklist: How to Throw a Stress-Free Bash in 2024 🤯”
How far in advance should I start planning a party for 50 guests?
Ideally, start planning at least 3 months in advance. This allows ample time for venue booking, catering arrangements, and sending invitations.
What are some creative party theme ideas for a 50-person gathering?
Some fun themes include:
- Masquerade Ball: Elegant and mysterious.
- Tropical Luau: Bright colors and Hawaiian vibes.
- Retro Night: Guests dress in styles from a specific decade.
- Murder Mystery: Interactive and engaging for guests.
How do I manage RSVPs and guest communication for a party of 50?
Use online tools like Evite or Paperless Post for easy tracking. Send reminders as the date approaches, and consider a group chat for quick updates.
What are some tips for staying within budget when planning a party for 50 guests?
- Set a Clear Budget: Know your limits from the start.
- Prioritize Expenses: Focus on what matters most (food, venue, entertainment).
- DIY Where Possible: Get creative with decorations and invitations.
- 👉 Shop Smart: Look for deals and discounts on supplies and services.
Read more about “How to Create an Event Checklist: 15 Essential Steps for Success! 🎉”
Reference Links
- Tagvenue: Party Planning Checklist
- Live Event Solutions: Practical Tips for Parties
- Social Tables: Party Planning Checklist
- [Eventbrite: Tips for Planning a Successful Event](https://www.eventbrite.com/blog/academy/party-planning-dos-and-donts-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds00-ds