diff --git a/psConfig/tasks/gpsr/gpsr.conf b/psConfig/tasks/gpsr/gpsr.conf
index 57c62b09ac98d2579956da2d62d18743873febf4..107c01b5b016f4832d2516127988f2d740ccdaa0 100644
--- a/psConfig/tasks/gpsr/gpsr.conf
+++ b/psConfig/tasks/gpsr/gpsr.conf
@@ -9,7 +9,7 @@ alsadevice=sysdefault;
 [pocketsphinxinstance]
 name=Commands;
 dict=../../../psGrammar/dictionary/tobiDic.dic;
-jsgf=../../../psGrammar/tasks/gpsr/gpsr2.jsgf;
+jsgf=../../../psGrammar/tasks/gpsr/gpsr23.jsgf;
 rsbscope=/speechrec/psa/commands;
 bestpath=no;
 autoload=yes;
diff --git a/psConfig/tasks/stickler/stickler.conf b/psConfig/tasks/stickler/stickler.conf
new file mode 100644
index 0000000000000000000000000000000000000000..2eb9dd70fb508233cd0312ef59a90320aaadf703
--- /dev/null
+++ b/psConfig/tasks/stickler/stickler.conf
@@ -0,0 +1,16 @@
+[main]
+startdb=45;
+uttdb=53;
+silence=800;
+timeout=8;
+openDeviceDirectly=yes;
+alsadevice=sysdefault;
+
+
+[pocketsphinxinstance]
+name=confirm;
+dict=../../../psGrammar/dictionary/tobiDic.dic;
+jsgf=../../../psGrammar/confirm/confirm.jsgf;
+rostopic=/speechrec/psa/confirm;
+bestpath=no;
+autoload=yes;
diff --git a/psGrammar/confirm/confirm.jsgf b/psGrammar/confirm/confirm.jsgf
index b6948911f92d43e770283414b860a394786f02f6..530ea50065a4ef17897aa549c3b5765f67bf8ce9 100644
--- a/psGrammar/confirm/confirm.jsgf
+++ b/psGrammar/confirm/confirm.jsgf
@@ -5,6 +5,6 @@ public <confirm> = <confirm_yes> | <confirm_no>;
 <confirm_yes> = <robot> <yes_words>;
 <confirm_no> = <robot> <no_words>; 
 
-<yes_words> = (yes) | (confirmed);
+<yes_words> = (yes);
 <no_words> = (no);
-<robot> = (tobi) | (robot) | (biron) | (pepper) | (tiago);
+<robot> = (tiago);
diff --git a/psGrammar/confirm/confirm_old.jsgf b/psGrammar/confirm/confirm_old.jsgf
new file mode 100644
index 0000000000000000000000000000000000000000..b6948911f92d43e770283414b860a394786f02f6
--- /dev/null
+++ b/psGrammar/confirm/confirm_old.jsgf
@@ -0,0 +1,10 @@
+#JSGF V1.0;
+grammar ToBI_confirm;
+public <confirm> = <confirm_yes> | <confirm_no>;
+
+<confirm_yes> = <robot> <yes_words>;
+<confirm_no> = <robot> <no_words>; 
+
+<yes_words> = (yes) | (confirmed);
+<no_words> = (no);
+<robot> = (tobi) | (robot) | (biron) | (pepper) | (tiago);
diff --git a/psGrammar/demos/demoErsti/commands.jsgf b/psGrammar/demos/demoErsti/commands.jsgf
index 81b71a4c1c36a5bfd30dd77b81b61c04d16fe9ec..3234a3cbb9ea46ae01f0d9bf6cbff54ce62cbd81 100644
--- a/psGrammar/demos/demoErsti/commands.jsgf
+++ b/psGrammar/demos/demoErsti/commands.jsgf
@@ -1,7 +1,7 @@
 #JSGF V1.0;
 grammar commands;
 
-public <command> = [<robot>] ( <introduce> | <save> | <wait> | <goTo> | <followMe> | <followHand> | <gravity> | <exit> | <lookAt> | <trash> | <drop> | <nothing> | <search> | <describe> | <difference> | <take> | <give> | <count> | <explain> );
+public <command> = [<robot>] ( <introduce> | <save> | <wait> | <goTo> | <followMe> | <followHand> | <gravity> | <exit> | <lookAt> | <trash> | <drop> | <nothing> | <search> | <describe> | <difference> | <take> | <give> | <count> | <explain> | <store_groceries> );
 
 <robot> = (tobi | robot | tiago);
 
@@ -34,4 +34,6 @@ public <command> = [<robot>] ( <introduce> | <save> | <wait> | <goTo> | <followM
 
 <count> = (count the people);
 
-<explain> = (what can you do) | (explain your skills);
\ No newline at end of file
+<explain> = (what can you do) | (explain your skills);
+
+<store_groceries> = (store the groceries);
\ No newline at end of file
diff --git a/psGrammar/person/person.jsgf b/psGrammar/person/person.jsgf
index 43c48a1313028e54af599ed9ccf4ba0d537b78f2..4fbd5d44c30117f236b3367fe867636602af69ed 100644
--- a/psGrammar/person/person.jsgf
+++ b/psGrammar/person/person.jsgf
@@ -2,4 +2,5 @@
 grammar ToBI_person;
 public <statement> = <naming> ;
 <naming> = [(my name is) | (i am)] <name>;
-<name> = sophia | isabella | emma | olivia | ava | emily | abigail | madison | mia | chloe | james | john | robert | michael | william | david | richard | charles | joseph | thomas;
+<name_old> = sophia | isabella | emma | olivia | ava | emily | abigail | madison | mia | chloe | james | john | robert | michael | william | david | richard | charles | joseph | thomas;
+<name> = alex | charlie | elizabeth | francis | jennifer | linda | mary | patricia | james | john | michael | robert | robin | skyler | william;
\ No newline at end of file
diff --git a/psGrammar/tasks/gpsr/gpsr2.jsgf b/psGrammar/tasks/gpsr/gpsr2.jsgf
index 004a5b33860cc7f88d5c6794b14a384096a697e5..b236a337d1573d293a87d66204f6aff944d9ad64 100644
--- a/psGrammar/tasks/gpsr/gpsr2.jsgf
+++ b/psGrammar/tasks/gpsr/gpsr2.jsgf
@@ -6,11 +6,11 @@ public <sentence> 		= ([could you | robot | tobi] [please] <VP1> [([and|then] <V
 <VP1> 				= (<SingleCommands> | <NeedsToBeFirst> | <NoRestriction>);
 <VP2> 				= (<NeedsReference> | <NoRestriction>);
 <VP3> 				= (<NeedsReference> | <NoRestriction>);
- 
+
 <NeedsToBeFirst> 		= (<goToLoc> | <meetPrsAtBeac> | <findPrsInRoom>);
 <SingleCommands> 		= (<countObjOnPlcmt> | <countPrsInRoom> | <tellPrsInfoInLoc> | <tellObjPropOnPlcmt> | <deliverObjToGestPrsInRoom> | <followNameFromBeacToRoom> | <guideNameFromBeacToBeac> | <guideNameToBeacFindAtBeac> | <bringMeObjFromPlcmt> | <tellCatPropOnPlcmt> | <findObjInRoom> | <talkInfoToGestPrsInRoom> | <answerToGestPrsInRoom>);
 <NeedsReference> 		= <followPrsToRoom> | (<followPrs> | <placeObjPronOnPlcmt> | <deliverObjPronToMe> | <guidePrsToBeacon> | <deliverObjToNameAtBeac> | <answerQuestion> | <talkInfo> | <meetName> | <findPrs> | <placeObjOnPlcmt>);
-<NoRestriction> 		= (<findObj>  | <takeObj> | <takeObjFromPlcmt>  | <bringMeObj> | <deliverObjToMe>); 
+<NoRestriction> 		= (<findObj>  | <takeObj> | <takeObjFromPlcmt>  | <bringMeObj> | <deliverObjToMe>);
 
 
 <goToLoc> 			= <V_go> <toLocPrep> (<NP_room> | <NP_placement> | <NP_beacon>);
@@ -120,12 +120,20 @@ public <sentence> 		= ([could you | robot | tobi] [please] <VP1> [([and|then] <V
 <N_personattribute> 		= name | gender | pose;
 <N_posture> 			= sitting | standing | lying down;
 
-<N_object>    			= basket | cereals | cloth | (coconut milk) | coke | cornflakes | noodles | orange (juice | drink) | peas | plate | pringles | red bowl | salt | soap | sponge | (tomato paste) | water;
-<N_category> 			= care | drink | (cleaning stuff) | container | food | snack | cutlery;
-<N_room> 			= corridor | (living room) | kitchen | (bath room);
+<N_object_old>    			= basket | cereals | cloth | (coconut milk) | coke | cornflakes | noodles | orange (juice | drink) | peas | plate | pringles | red bowl | salt | soap | sponge | (tomato paste) | water;
+<N_object>              = (chocolate milk) | milk | cola | (soap box) | (choco krispies) | bowl | plate | fork | knife | spoon | cup | lemon | banana | peach | pear;
+<N_category_old> 			= care | drink | (cleaning stuff) | container | food | snack | cutlery;
+<N_category>          = fruits | cutlery | drinks | snacks | (pantry items);
+<N_room_old> 			= corridor | (living room) | kitchen | (bath room);
+<N_room>          = kitchen | (living room) | hallway | bathroom | office;
 <N_roomTwo> 			= corridor | (living room) | kitchen | (bath room);
-<N_placement> 			= (living table) | (kitchen counter) | sink | stove | cabinet | bar;
-<N_placementTwo> 		= (living table) | (kitchen counter) | sink | stove | cabinet | bar;
-<N_beacon> 			= (living table) | sink | bar | sofa | fridge | (comfy chair);
-<N_beaconTwo> 			= (living table) | sink | bar | sofa | fridge | (comfy chair);
-<N_name> 			= emma | olivia | sophia | ava | isabella | mia | abigail | emily | charlotte | harper | noah | liam | mason | jacob | william | ethan | james | alexander | michael | benjamin;
+<N_placement_old> 			= (living table) | (kitchen counter) | sink | stove | cabinet | bar;
+<N_placementTwo_old> 		= (living table) | (kitchen counter) | sink | stove | cabinet | bar;
+<N_placement>     = (kitchen table) | desk | (side board) | (side table) | sink | (kitchen counter) | cabinet | workstation;
+<N_placementTwo>  = (kitchen table) | desk | (side board) | (side table) | sink | (kitchen counter) | cabinet | workstation;
+<N_beacon_old> 			= (living table) | sink | bar | sofa | fridge | (comfy chair);
+<N_beaconTwo_old> 			= (living table) | sink | bar | sofa | fridge | (comfy chair);
+<N_beacon>        = fridge | sink | dishwasher | (easy chair) | (arm chair) | (kitchen table) | workstation;
+<N_beaconTwo>     = fridge | sink | dishwasher | (easy chair) | (arm chair) | (kitchen table) | workstation;
+<N_name_old> 			= emma | olivia | sophia | ava | isabella | mia | abigail | emily | charlotte | harper | noah | liam | mason | jacob | william | ethan | james | alexander | michael | benjamin;
+<N_name>          = amelia | angel | ava | charlie | charlotte | hunter | max | mia | olivia | parker | sam | jack | noah | oliver | thomas | william;
diff --git a/psGrammar/tasks/gpsr/gpsr23.jsgf b/psGrammar/tasks/gpsr/gpsr23.jsgf
new file mode 100644
index 0000000000000000000000000000000000000000..88db78590c32d835818420f31a2e22935e999c77
--- /dev/null
+++ b/psGrammar/tasks/gpsr/gpsr23.jsgf
@@ -0,0 +1,168 @@
+#JSGF V1.0;
+grammar speechRecognition;
+
+
+public <sentence> 		= [could you | robot | tobi] [please] <command>;
+
+<command> 			= (<cmdfndppl> | <cmdfndobj> | <cmdguide> | <cmdfollow> | <cmdfollowout> | <cmdincomplete> | <cmdman> | <complexman> | <cmdpartyhost>);
+
+<cmdfndppl> 			= <tellPrsInfoInLoc> | <countPrsInRoom> | <talkInfoToGestPrsInRoom> | (<findPrsInRoom> and <answerQuestion>) | (<goToLoc> <findPrs> and <answerQuestion>);
+
+<cmdfndobj> 			= <findObjInRoom> | <countObjOnPlcmt> | <tellCatPropOnPlcmt> | <tellObjPropOnPlcmt>;
+
+<cmdguide> 			= <guideNameFromBeacToBeac> | (<meetPrsAtBeac> and <guidePrsToBeacon>) | (<goToLoc> <meetName> and <guidePrsToBeacon>);
+
+
+<cmdfollow> 			= <followNameFromBeacToRoom> | (<meetPrsAtBeac> and (<followPrs> | <followPrsToRoom>)) | (<goToLoc> <meetName> and (<followPrs> | <followPrsToRoom>));
+
+<cmdfollowout> 		= <meetPrsAtBeac> <followPrs> and (<goToLoc> | <guidePrsBack>);
+
+<cmdincomplete> 		= <followName> | <deliverObjToMe> | <guidePrsToBeacon> | (<goToLoc> <meetName> and <guidePrsIncomplete>);
+
+<cmdman> 			= <bringMeObjFromPlcmt> | (<takeObjFromPlcmt> and (<deliverObjPronToMe> | <deliverObjToNameAtBeac>)) | (<takeObjFromPlcmt> and <placeObjPronOnPlcmt>);
+
+<complexman> 			= skyler;
+
+<cmdpartyhost>			= <serveDrinks> | (<meetPrsAtBeac>| <meetprsAtDoor> and <introduce>) | (<meetPrsAtBeac> and <requestleave>) | (<meetPrsAtBeac> and <guidePrsToTaxi>);
+
+<goToLoc> 			= <V_go> <toLocPrep> (<NP_room> | <NP_placement> | <NP_beacon>);
+
+<findObj> 			= <V_find> <NP_object>;
+<findObjInRoom> 		= <V_find> (<NP_object> | <NP_category>) <inLocPrep> <NP_room>;
+
+<takeObj> 			= <V_take> <NP_object>;
+<takeObjFromPlcmt> 		= <V_take>  <NP_object> <fromLocPrep> (<NP_room> | <NP_placement>);
+
+<findPrs> 			= <V_find> (<NP_gestperson> | <NP_genderperson> | <NP_poseperson>);
+<findPrsInRoom> 		= <V_find> (<NP_gestperson> | <NP_genderperson> | <NP_poseperson>) <inLocPrep> <NP_room>;
+
+<placeObjOnPlcmt> 		= <V_place> <NP_object> <placePrep>  <NP_placement>;
+<placeObjPronOnPlcmt> 		= <V_place> <NP_objectpron> <placePrep>  <NP_placement>;
+
+<talkInfo> 			= <V_talk> <NP_talk>;
+<talkInfoToGestPrsInRoom> 	= <V_talk> <NP_talk> <talkPrep> <NP_gestperson> <inLocPrep> <NP_room>;
+
+<answerQuestion> 		= <V_answer> <NP_answer>;
+<answerToGestPrsInRoom> 	= <V_answer> <NP_answer> <talkPrep> <NP_gestperson> <inLocPrep> <NP_room>;
+
+<followPrs> 			= <V_follow> <NP_personalpron>;
+<followPrsToRoom> 		= <V_follow> <NP_personalpron> <toLocPrep> <NP_roomTwo>;
+<followName>			= <V_follow> <NP_name>;
+<followNameFromBeacToRoom> 	= <V_follow> <NP_name> <fromLocPrep> <NP_beacon> <toLocPrep> <NP_roomTwo>;
+
+<meetName> 			= <V_meet> <NP_name>;
+<meetPrsAtBeac> 		= <V_meet> <NP_name> <atLocPrep> <NP_beacon>;
+<meetprsAtDoor>		= <V_meet> <NP_name> <atLocPrep> <NP_door>;
+
+<bringMeObj>    		= <V_bring> <NP_me> <NP_object>;
+<bringMeObjFromPlcmt> 		= <V_bring> <NP_me> <NP_object> <fromLocPrep> <NP_placement>;
+
+<countObjOnPlcmt> 		= <V_count> (<NP_object> | <NP_category>) there are <placePrep> <NP_placement>;
+<countPrsInRoom> 		= <V_count> people in <NP_room> <arePrep> (<NP_posture> | <NP_genderpersonplural>);
+
+<tellPrsInfoInLoc> 		= <V_tell> me <NP_personattribute> of the person <LocPrep> (<NP_room> | <NP_beacon>);
+<tellObjPropOnPlcmt> 		= <V_tell> me ((what is) | whats) <NP_objectprop> object <onLocPrep> <NP_placement>;
+<tellCatPropOnPlcmt> 		= <V_tell> me ((what is) | whats) <NP_objectprop> <NP_category> <onLocPrep> <NP_placement>;
+
+<deliverObjToMe> 		= <V_deliver> (<NP_object> | <NP_category>) <deliverPrep> <NP_me>;
+<deliverObjPronToMe> 		= <V_deliver> <NP_objectpron> <deliverPrep> <NP_me>;
+<deliverObjToGestPrsInRoom> 	= <V_deliver> [<NP_objectpron>] <NP_object> <deliverPrep> <NP_gestperson> <inLocPrep> <NP_roomTwo>;
+<deliverObjToNameAtBeac> 	= <V_deliver> <NP_objectpron> <deliverPrep> <NP_name> <atLocPrep> <NP_beaconTwo>;
+
+<guidePrsIncomplete>		= <V_guide> <NP_personalpron>;
+<guidePrsBack>			= <V_guide> <NP_personalpron> back;
+<guidePrsToBeacon> 		= <V_guide> <NP_personalpron> <toLocPrep> <NP_beaconTwo>;
+<guideNameFromBeacToBeac> 	= <V_guide> <NP_name> <fromLocPrep> <NP_beacon> <toLocPrep> <NP_beaconTwo>;
+<guideNameToBeacFindAtBeac> 	= <V_guide> <NP_name> <toLocPrep> <NP_beaconTwo> you (may | can | will) find (them | him | her) <atLocPrep> <NP_beacon>;
+
+<serveDrinks>			= <V_serve> <NP_partyfood> to ((everyone | everybody) | (all the <NP_agegenderpersonplural>)) in the <N_room>;
+<introduce>			= <V_introduce> <NP_personalpron> to <NP_agegenderpersonplural> | (<NP_name> <LocPrep> <NP_beaconTwo>);
+<requestleave>			= <V_ask> <NP_personalpron> to <V_leave>;
+<guidePrsToTaxi> 		= <V_guide> <NP_personalpron> <toLocPrep> <NP_taxi>;
+
+
+<deliverPrep> 			= to;
+<placePrep> 			= on;
+<inLocPrep> 			= in;
+<fromLocPrep> 			= from;
+<toLocPrep> 			= to;
+<atLocPrep> 			= at;
+<talkPrep> 			= to;
+<LocPrep> 			= in | at;
+<onLocPrep> 			= on;
+<arePrep> 			= are;
+
+<V_take>    			= bring | take | get | grasp | (pick up);
+<V_place>   			= put | place;
+<V_deliver> 			= bring | give | deliver;
+<V_bring> 			= bring | give;
+<V_go> 			= go | navigate;
+<V_find> 			= find | locate | (look for);
+<V_talk> 			= tell | say;
+<V_answer> 			= answer;
+<V_follow> 			= follow;
+<V_meet> 			= meet | face | contact;
+<V_guide> 			= guide | escort | take | lead | accompany;
+<V_tell> 			= tell;
+<V_count> 			= tell me how many;
+<V_serve>			= serve | arrange | deliver | distribute | give | provide;
+<V_introduce>			= introduce;
+<V_ask>			= ask;
+<V_leave>			= leave;
+
+
+<NP_object>    		= (the <N_object>) | (a <N_object>) | (an <N_object>) | (<N_object>);
+<NP_objectpron> 		= (<N_objectpron>);
+<NP_category> 			= (the <N_category>) | <N_category>;
+<NP_objectprop> 		= (the <N_objectprop>);
+<NP_placement> 			= (the <N_placement>);
+<NP_placementTwo> 		= (the <N_placementTwo>);
+<NP_beacon> 			= (the <N_beacon>);
+<NP_beaconTwo> 			= (the <N_beaconTwo>);
+<NP_room> 			= (the <N_room>);
+<NP_roomTwo> 			= (the <N_roomTwo>);
+<NP_me>        			= (<N_me>);
+<NP_gestperson> 		= (the <N_gestperson>) | (a <N_gestperson>);
+<NP_poseperson> 		= (a <N_poseperson>);
+<NP_genderperson> 		= (a <N_genderperson>);
+<NP_genderpersonplural> 	= (<N_genderpersonplural>);
+<NP_agegenderpersonplural>	= (<N_agegenderpersonplural>);
+<NP_name> 			= <N_name>;
+<NP_talk> 			= <N_talk>;
+<NP_answer> 			= <N_answer>;
+<NP_personalpron> 		= <N_personalpron>;
+<NP_personattribute> 		= (the <N_personattribute>);
+<NP_posture> 			= <N_posture>;
+<NP_taxi>			= (the <N_taxi>);
+<NP_partyfood>			= <N_partyfood>;
+<NP_door> 			= (the <N_door>);
+
+<N_objectpron> 		= it;
+<N_objectprop> 		= biggest | largest | smallest | heaviest | lightest | thinnest;
+<N_me>        			= me;
+<N_gestperson> 		= (person waving) | (person (raising | rising) [their] (left|right) arm) | (person pointing to the (left|right)) | (person calling);
+<N_poseperson> 		= (person sitting) | (person standing) | (person lying down);
+<N_genderperson> 		= man | woman | boy | girl | (male person) | (female person);
+<N_genderpersonplural> 	= men | women | boys | girls | male | female;
+<N_agegenderpersonplural>	= people | men | women | guests | elders | children;
+<N_talk> 			= (something about yourself) | (the time) | (what day is (today | tomorrow)) | (your teams (name | country | affiliation)) | (the day of the (week | month)) | (a joke);
+<N_answer> 			= (a question);
+<N_personalpron> 		= them | her | him;
+<N_personattribute> 		= name | gender | pose;
+<N_posture> 			= sitting | standing | lying down;
+
+<N_object>                  	= bleach | (dishwasher tab) | (tray) | (basket) | (bag) | (fork) | (knife) | spoon | plate | bowl | cup | milk | coke | milo | banana | pear | orange | peach | mustard | spam | sugar | pringles | crackers | cornflakes;
+<N_category>                	= (cleaning supplies) | containers | cutlery | drinks | fruits | (pantry items) | snacks; 
+<N_room>                    	= kitchen | (living room) | bedroom | (dining room);
+<N_roomTwo> 			= kitchen | (living room) | bedroom | (dining room);
+<N_placement>               	= (small cabinet) | (side table) | (ikea table);
+<N_placementTwo>            	= (small cabinet) | (side table) | (ikea table);
+<N_beacon>                  	= (seat one) | (seat two) | (seat three) | (seat four) | (seat five) | (seat six) | (small cabinet) | (side table) | (ikea table) | exit | entrance;
+<N_beaconTwo>               	= (seat one) | (seat two) | (seat three) | (seat four) | (seat five) | (seat six) | (small cabinet) | (side table) | (ikea table) | exit | entrance;
+<N_name>                    	= alex | charlie | elizabeth | francis | jennifer | linda | mary | patricia | james | john | michael | robert | robin | skyler | william;
+<N_taxi> 			= taxi | cab | uber;
+<N_partyfood>			= snacks | drinks;
+<N_door>       		= ( front | back | main | rear ) (entrance | door);
+<N_garbage>     		= litter | garbage | trash | waste | debris | junk;
+<N_luggage>     		= bag | baggage | valise | suitcase | trolley;
+
diff --git a/psGrammar/tasks/gpsr/gpsr23generic.jsgf b/psGrammar/tasks/gpsr/gpsr23generic.jsgf
new file mode 100644
index 0000000000000000000000000000000000000000..ecfec8861d5300439b7c28082b3deac28a026376
--- /dev/null
+++ b/psGrammar/tasks/gpsr/gpsr23generic.jsgf
@@ -0,0 +1,162 @@
+#JSGF V1.0;
+grammar speechRecognition;
+
+public <sentence> 		= [could you | robot | tobi] [please] (<singleCommand> | <commandChain>)
+
+<singleCommand>	= <standalone>;
+
+<commandChain> 	= (<genLoc> [and|then] <reqLocGenPrs> [and|then] <reqPrs>)
+			| (<genLoc> [and|then] <reqLocGenPrs> [and|then] <noReq>)
+			| (<genLoc> [and|then] <reqLocGenItem> [and|then] <reqItem>)
+			| (<genLocPrs> [and|then] <reqPrs> [and|then] <reqPrsMOVE>)
+			| (<genLocPrs> [and|then] <reqPrs> [[and|then] <noReq>)
+			| (<genLocPrs> [and|then] <reqPrs> [[and|then] <noReq>])
+
+
+<noReq> = (<genLoc> | <genPrs> | <genItem>);
+
+<genLoc>	= <goToLoc>;
+
+<genItem>	= (<takeObjFromPlcmt> | <takeObj>);
+
+<genLocPrs>	= (<meetPrsAtBeac> | <findPrsInRoom>);
+
+<reqLocGenPrs> = (<findPrs> | <meetName>);
+
+<reqLocGenItem>= <findObj>;
+
+<reqPrs>	= (<followPrsToRoom> | <followPrs> | <guidePrsToBeacon> | <answerQuestion> | <talkInfo>;
+
+<reqLocPrs>	= <guidePrsBack>;
+
+<reqItem>	= (<deliverObjPronToMe> | <placeObjPronOnPlcmt> | <placeObjOnPlcmt> | <deliverObjToNameAtBeac>)
+
+<standalone>	= <deliverObjToMe> | <deliverObjToGestPrsInRoom> | <countObjOnPlcmt> | <countPrsInRoom> | <tellPrsInfoInLoc> | <tellObjPropOnPlcmt> |  | <followNameFromBeacToRoom> | <guideNameFromBeacToBeac> | <guideNameToBeacFindAtBeac> | <bringMeObj> | <bringMeObjFromPlcmt> | <tellCatPropOnPlcmt> | <findObjInRoom> | <talkInfoToGestPrsInRoom> | <answerToGestPrsInRoom>);
+
+
+
+<goToLoc> 			= <V_go> <toLocPrep> (<NP_room> | <NP_placement> | <NP_beacon>);
+
+<findObj> 			= <V_find> <NP_object>;
+<findObjInRoom> 		= <V_find> (<NP_object> | <NP_category>) <inLocPrep> <NP_room>;
+
+<takeObj> 			= <V_take> <NP_object>;
+<takeObjFromPlcmt> 		= <V_take>  <NP_object> <fromLocPrep> (<NP_room> | <NP_placement>);
+
+<findPrs> 			= <V_find> (<NP_gestperson> | <NP_genderperson> | <NP_poseperson>);
+<findPrsInRoom> 		= <V_find> (<NP_gestperson> | <NP_genderperson> | <NP_poseperson>) <inLocPrep> <NP_room>;
+
+<placeObjOnPlcmt> 		= <V_place> <NP_object> <placePrep>  <NP_placement>;
+<placeObjPronOnPlcmt> 		= <V_place> <NP_objectpron> <placePrep>  <NP_placement>;
+
+<talkInfo> 			= <V_talk> <NP_talk>;
+<talkInfoToGestPrsInRoom> 	= <V_talk> <NP_talk> <talkPrep> <NP_gestperson> <inLocPrep> <NP_room>;
+
+<answerQuestion> 		= <V_answer> <NP_answer>;
+<answerToGestPrsInRoom> 	= <V_answer> <NP_answer> <talkPrep> <NP_gestperson> <inLocPrep> <NP_room>;
+
+<followPrs> 			= <V_follow> <NP_personalpron>;
+<followPrsToRoom> 		= <V_follow> <NP_personalpron> <toLocPrep> <NP_roomTwo>;
+<followNameFromBeacToRoom> 	= <V_follow> <NP_name> <fromLocPrep> <NP_beacon> <toLocPrep> <NP_roomTwo>;
+
+<meetName> 			= <V_meet> <NP_name>;
+<meetPrsAtBeac> 		= <V_meet> <NP_name> <atLocPrep> <NP_beacon>;
+
+<bringMeObj>    		= <V_bring> <NP_me> <NP_object>;
+<bringMeObjFromPlcmt> 		= <V_bring> <NP_me> <NP_object> <fromLocPrep> <NP_placement>;
+
+<countObjOnPlcmt> 		= <V_count> (<NP_object> | <NP_category>) there are <placePrep> <NP_placement>;
+<countPrsInRoom> 		= <V_count> people in <NP_room> <arePrep> (<NP_posture> | <NP_genderpersonplural>);
+
+<tellPrsInfoInLoc> 		= <V_tell> me <NP_personattribute> of the person <LocPrep> (<NP_room> | <NP_beacon>);
+<tellObjPropOnPlcmt> 		= <V_tell> me ((what is) | whats) <NP_objectprop> object <onLocPrep> <NP_placement>;
+<tellCatPropOnPlcmt> 		= <V_tell> me ((what is) | whats) <NP_objectprop> <NP_category> <onLocPrep> <NP_placement>;
+
+<deliverObjToMe> 		= <V_deliver> <NP_object> <deliverPrep> <NP_me>;
+<deliverObjPronToMe> 		= <V_deliver> <NP_objectpron> <deliverPrep> <NP_me>;
+<deliverObjToGestPrsInRoom> 	= <V_deliver> [<NP_objectpron>] <NP_object> <deliverPrep> <NP_gestperson> <inLocPrep> <NP_roomTwo>;
+<deliverObjToNameAtBeac> 	= <V_deliver> <NP_objectpron> <deliverPrep> <NP_name> <atLocPrep> <NP_beaconTwo>;
+
+<guidePrsBack>			= <V_guide> <NP_personalpron> back;
+<guidePrsToBeacon> 		= <V_guide> <NP_personalpron> <toLocPrep> <NP_beaconTwo>;
+<guideNameFromBeacToBeac> 	= <V_guide> <NP_name> <fromLocPrep> <NP_beacon> <toLocPrep> <NP_beaconTwo>;
+<guideNameToBeacFindAtBeac> 	= <V_guide> <NP_name> <toLocPrep> <NP_beaconTwo> you (may | can | will) find (them | him | her) <atLocPrep> <NP_beacon>;
+
+
+<deliverPrep> 			= to;
+<placePrep> 			= on;
+<inLocPrep> 			= in;
+<fromLocPrep> 			= from;
+<toLocPrep> 			= to;
+<atLocPrep> 			= at;
+<talkPrep> 			= to;
+<LocPrep> 			= in | at;
+<onLocPrep> 			= on;
+<arePrep> 			= are;
+
+<V_take>    			= bring | take | get | grasp | (pick up);
+<V_place>   			= put | place;
+<V_deliver> 			= bring | give | deliver;
+<V_bring> 			= bring | give;
+<V_go> 			= go | navigate;
+<V_find> 			= find | locate | (look for);
+<V_talk> 			= tell | say;
+<V_answer> 			= answer;
+<V_follow> 			= follow;
+<V_meet> 			= meet | face | contact;
+<V_guide> 			= guide | escort | take | lead | accompany;
+<V_tell> 			= tell;
+<V_count> 			= tell me how many;
+
+<NP_object>    			= (the <N_object>) | (a <N_object>) | (an <N_object>) | (<N_object>);
+<NP_objectpron> 		= (<N_objectpron>);
+<NP_category> 			= (the <N_category>) | <N_category>;
+<NP_objectprop> 		= (the <N_objectprop>);
+<NP_placement> 			= (the <N_placement>);
+<NP_placementTwo> 		= (the <N_placementTwo>);
+<NP_beacon> 			= (the <N_beacon>);
+<NP_beaconTwo> 			= (the <N_beaconTwo>);
+<NP_room> 			= (the <N_room>);
+<NP_roomTwo> 			= (the <N_roomTwo>);
+<NP_me>        			= (<N_me>);
+<NP_gestperson> 		= (the <N_gestperson>) | (a <N_gestperson>);
+<NP_poseperson> 		= (a <N_poseperson>);
+<NP_genderperson> 		= (a <N_genderperson>);
+<NP_genderpersonplural> 	= (<N_genderpersonplural>);
+<NP_name> 			= <N_name>;
+<NP_talk> 			= <N_talk>;
+<NP_answer> 			= <N_answer>;
+<NP_personalpron> 		= <N_personalpron>;
+<NP_personattribute> 		= (the <N_personattribute>);
+<NP_posture> 			= <N_posture>;
+
+<N_objectpron> 			= it;
+<N_objectprop> 			= biggest | largest | smallest | heaviest | lightest | thinnest;
+<N_me>        			= me;
+<N_gestperson> 			= (person waving) | (person (raising | rising) [their] (left|right) arm) | (person pointing to the (left|right)) | (person calling);
+<N_poseperson> 			= (person sitting) | (person standing) | (person lying down);
+<N_genderperson> 		= man | woman | boy | girl | (male person) | (female person);
+<N_genderpersonplural> 		= men | women | boys | girls | male | female;
+<N_talk> 			= (something about yourself) | (the time) | (what day is (today | tomorrow)) | (your teams (name | country | affiliation)) | (the day of the (week | month)) | (a joke);
+<N_answer> 			= (a question);
+<N_personalpron> 		= them | her | him;
+<N_personattribute> 		= name | gender | pose;
+<N_posture> 			= sitting | standing | lying down;
+
+<N_object_old>    			= basket | cereals | cloth | (coconut milk) | coke | cornflakes | noodles | orange (juice | drink) | peas | plate | pringles | red bowl | salt | soap | sponge | (tomato paste) | water;
+<N_object>              = (chocolate milk) | milk | cola | (soap box) | (choco krispies) | bowl | plate | fork | knife | spoon | cup | lemon | banana | peach | pear;
+<N_category_old> 			= care | drink | (cleaning stuff) | container | food | snack | cutlery;
+<N_category>          = fruits | cutlery | drinks | snacks | (pantry items);
+<N_room_old> 			= corridor | (living room) | kitchen | (bath room);
+<N_room>          = kitchen | (living room) | hallway | bathroom | office;
+<N_roomTwo> 			= corridor | (living room) | kitchen | (bath room);
+<N_placement_old> 			= (living table) | (kitchen counter) | sink | stove | cabinet | bar;
+<N_placementTwo_old> 		= (living table) | (kitchen counter) | sink | stove | cabinet | bar;
+<N_placement>     = (kitchen table) | desk | (side board) | (side table) | sink | (kitchen counter) | cabinet | workstation;
+<N_placementTwo>  = (kitchen table) | desk | (side board) | (side table) | sink | (kitchen counter) | cabinet | workstation;
+<N_beacon_old> 			= (living table) | sink | bar | sofa | fridge | (comfy chair);
+<N_beaconTwo_old> 			= (living table) | sink | bar | sofa | fridge | (comfy chair);
+<N_beacon>        = fridge | sink | dishwasher | (easy chair) | (arm chair) | (kitchen table) | workstation;
+<N_beaconTwo>     = fridge | sink | dishwasher | (easy chair) | (arm chair) | (kitchen table) | workstation;
+<N_name_old> 			= emma | olivia | sophia | ava | isabella | mia | abigail | emily | charlotte | harper | noah | liam | mason | jacob | william | ethan | james | alexander | michael | benjamin;
+<N_name>          = amelia | angel | ava | charlie | charlotte | hunter | max | mia | olivia | parker | sam | jack | noah | oliver | thomas | william;
diff --git a/psGrammar/tasks/receptionist/getDrink.jsgf b/psGrammar/tasks/receptionist/getDrink.jsgf
index 9d94b0bb085d9729fb1c263136ef9eb27eaa9691..29e5e1376746248bd416e7eff1582bebf14563b9 100644
--- a/psGrammar/tasks/receptionist/getDrink.jsgf
+++ b/psGrammar/tasks/receptionist/getDrink.jsgf
@@ -8,6 +8,6 @@ public <drinkstring> = [<prefix>] <drink> [<robot>];
 
 <ilike> = (i like);
 
-<drink> =  ( (apple_juice) | (iso_drink) | (orange_juice) | (red_spritzer) | (sparkling_water) | (milk) | (coke) | (water) | (lemon juice));
+<drink> =  ( (apple_juice) | (iso_drink) | (orange_juice) | (red_spritzer) | (sparkling_water) | (milk) | (coke) | (water) | (lemon juice) | (milk) | (chocolate_milk) | (cola));
 
 <robot> = (tobi) | (robot) | (biron) | (pepper);
diff --git a/psGrammar/tasks/receptionist/getName.jsgf b/psGrammar/tasks/receptionist/getName.jsgf
index 0351cad0fed92e9f43abefa13f2697cb2a9b022d..5bf5a8006fc4e61bc2922117f7531b6619204f8c 100644
--- a/psGrammar/tasks/receptionist/getName.jsgf
+++ b/psGrammar/tasks/receptionist/getName.jsgf
@@ -10,6 +10,6 @@ public <namestring> = [<prefix>] <name> [<robot>];
 
 <callme> = (call me);
 
-<name> = sophia | isabella | emma | olivia | ava | emily | abigail | madison | mia | chloe | james | john | robert | michael | william | david | richard | charles | joseph | thomas;
+<name> = (amelia) | (angel) | (ava) | (charlie) | (charlotte) | (hunter) | (max) | (mia) | (olivia) | (parker) | (sam) | (jack) | (noah) | (oliver) | (thomas) | (william);
 
 <robot> = (tobi) | (robot) | (biron) | (pepper);