Meal Maker - cannot read property 'price' of undefined

Hello,
I am trying to solve the Meal Maker project under Full Stack Engineering pro course > Javascript syntax, Part II > Learn Javascript Syntax: objects and I keep getting an error. I will attach my code and the error message below, I will appreciate any help! Thanks

Code:
const menu = {

_course: {

appetizers: [],

mains: [],

desserts: [],

},

get appetizers(){

return this._courses.appetizers;

},

set appetizers(appetizerIn){

this._courses.appetizers = appetizerIn;

},

get mains(){

return this._courses.mains;

},

set mains(mainsIn){

this._courses.mains = mainsIn;

},

get desserts(){

return this._courses.desserts;

},

set desserts(dessertsIn){

this._courses.desserts = dessertsIn;

},

get courses(){

return {

  appetizers: this.appetizers,

  mains: this.mains,

  desserts: this.desserts // tihs.dls

}

},

addDishToCourse(courseName, dishName, dishPrice){

const dish = {

  name: dishName,

  price: dishPrice

};

this._course[courseName].push[dish];

},

getRandomDishFromCourse(courseName){

const dishes = this._course[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 `Total price is ${totalPrice} dollars for ${appetizer.name + main.name + dessert.name}`

}

}

menu.addDishToCourse(‘appetizers’, ‘app1’, 10);

menu.addDishToCourse(‘appetizers’, ‘app2’, 11);

menu.addDishToCourse(‘appetizers’, ‘app2’, 12);

menu.addDishToCourse(‘mains’, ‘mains1’, 13);

menu.addDishToCourse(‘mains’, ‘mains2’, 14);

menu.addDishToCourse(‘mains’, ‘mains3’, 15);

menu.addDishToCourse(‘desserts’, ‘desserts1’, 16);

menu.addDishToCourse(‘desserts’, ‘desserts2’, 17);

menu.addDishToCourse(‘desserts’, ‘desserts3’, 18);

const meal = menu.generateRandomMeal();

console.log(meal);

error:
/home/ccuser/workspace/learn-javascript-objects-meal-maker/app.js:48
const totalPrice = appetizer.price + main.price + dessert.price;
^

TypeError: Cannot read property ‘price’ of undefined
at Object.generateRandomMeal (/home/ccuser/workspace/learn-javascript-objects-meal-maker/app.js:48:33)
at Object. (/home/ccuser/workspace/learn-javascript-objects-meal-maker/app.js:64:19)
at Module._compile (module.js:571:32)
at Object.Module._extensions…js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.runMain (module.js:605:10)
at run (bootstrap_node.js:427:7)
at startup (bootstrap_node.js:151:9)

Hi,In addDishToCourse() function you forget return .It must be:

addDishToCourse(courseName,dishName,dishPrice){
    const dish = {
      name: dishName ,
      price: dishPrice
    };
 return  this._courses[courseName].push(dish); //return forget
  }