Meal Maker challenge on Introduction to javascript

I am stuck on this project. I went through my code over and over over again and I cannot find where I went wrong.
This is my code:

const menu = {
   _courses: {
    appetizers: [],
      mains: [], 
        desserts: []
  },
  
  get appetizers() {return this._courses.appetizers;},
  get mains() {return this._courses.mains;},
  get desserts() {return this._courses.desserts;}, 
  
  
  set appetizers(appetizerIn) {
      appetizers = this._courses.appetizers;
        },
  set mains(mainIn) {
      mains = this._courses.mains; 
        },
  set desserts(dessertIn) {
      desserts = this._courses.desserts;
        },
  
  get courses() {
                return {
                  appetizers: this.appetizers,
                  mains: this.mains,
                  desserts: this.desserts,
                };
              },
  
  addDishToCourse (courseName, dishName, dishPrice) {
                  const dish = {
                    Name: dishName,
                    Price: dishPrice,
                  };
                   this._courses[courseName].push(dish);
                },
                  
  getRandomDishFromCourse(courseName) {
    const dishes = this._courses[courseName];
    const randomIndex = Math.floor(Math.random() * dishes.length);
    return dishes[randomIndex];
  },
  
    generateRandomMeal() {
    const appetizer = this.getRandomDishFromCourse('appetizers');
    const main = this.getRandomDishFromCourse('mains');
    const dessert = this.getRandomDishFromCourse('desserts');
    const totalPrice = appetizer.price + main.price + dessert.price;
    return `Your meal is ${appetizer.name}, ${main.name}, ${dessert.name}. The price is $${totalPrice}.`;
  }        
  
};
menu.addDishToCourse('appetizers', 'Caesar Salad', 4.25);
menu.addDishToCourse('appetizers', 'Cheese Nachos', 3.25);
menu.addDishToCourse('appetizers', 'Greek Salad', 5.25);

menu.addDishToCourse('mains', 'Spagetti', 10.5);
menu.addDishToCourse('mains', 'Steak', 18.5);
menu.addDishToCourse('mains', 'Chicken', 15.5);

menu.addDishToCourse('desserts', 'Ice cream', 3.25);
menu.addDishToCourse('desserts', 'Brownies', 4.25);
menu.addDishToCourse('desserts', 'Cheesecake', 5.25);

let meal = menu.generateRandomMeal();
console.log(meal);

and this is the result I get :
Your meal is undefined, undefined, undefined. The price is $NaN.

If someone can pinpoint to me where I went wrong, they will be saving me from more torture.

Thank you.
Noha

If I do:

console.log(x)

and it says undefined
then I might ask myself where I defined x, I’d need to work myself backwards through where I got x from to the point where I made my mistake and lost track of the value I meant to pass along.

If you have a cable but there’s no signal at your end, you’d have to go check the other end, maybe it isn’t plugged in there.

Oh and note that if you have getters and setters that only get and set then they’re not any different from plain properties and you could eliminate them.