From c28a0f8143cefef0776386a647514710926db80f Mon Sep 17 00:00:00 2001
From: Molly Offer-Westort <mollyow@users.noreply.github.com>
Date: Mon, 8 Jan 2024 23:15:45 -0600
Subject: [PATCH 1/4] Update lesson.yaml fixing && issue

---
 Logic/lesson.yaml | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/Logic/lesson.yaml b/Logic/lesson.yaml
index d608cc7..ee6cd20 100644
--- a/Logic/lesson.yaml
+++ b/Logic/lesson.yaml
@@ -143,11 +143,11 @@
     statement as c(TRUE, TRUE, TRUE) & c(TRUE, FALSE, FALSE). 
 
 - Class: cmd_question
-  Output: "Now we'll type the same expression except we'll use the `&&` operator. Type the expression TRUE && c(TRUE, FALSE, FALSE)."
-  CorrectAnswer: "TRUE && c(TRUE, FALSE, FALSE)"
-  AnswerTests: omnitest(correctExpr='TRUE && c(TRUE, FALSE, FALSE)')
+  Output: "Now we'll type the same expression except we'll use the `&&` operator. Type the expression TRUE && c(TRUE, FALSE, FALSE). In versions of R > 4.3.0, YOU WILL GET AN ERROR. Once you get the error, type ok() to continue to the next question."
+  CorrectAnswer: ok()
+  AnswerTests: omnitest(correctExpr="ok()")
   Hint: "As you'll see, the && version of AND works differently. Type: 
-    TRUE && c(TRUE, FALSE, FALSE)"
+    TRUE && c(TRUE, FALSE, FALSE), then type ok() to continue to the next question."
 
 - Class: text
   Output: "In this case, the left operand is only evaluated with the first member

From 539bcaa7226775fd0e9c62caa9e408b4b45d9364 Mon Sep 17 00:00:00 2001
From: Molly Offer-Westort <mollyow@users.noreply.github.com>
Date: Mon, 8 Jan 2024 23:40:53 -0600
Subject: [PATCH 2/4] Logic update lesson.yaml for second part of &&

---
 Logic/lesson.yaml | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/Logic/lesson.yaml b/Logic/lesson.yaml
index ee6cd20..aca15e6 100644
--- a/Logic/lesson.yaml
+++ b/Logic/lesson.yaml
@@ -149,10 +149,12 @@
   Hint: "As you'll see, the && version of AND works differently. Type: 
     TRUE && c(TRUE, FALSE, FALSE), then type ok() to continue to the next question."
 
-- Class: text
-  Output: "In this case, the left operand is only evaluated with the first member
-    of the right operand (the vector). The rest of the elements in the vector
-    aren't evaluated at all in this expression."
+- Class: cmd_question
+  Output: "Now type the expression TRUE && TRUE"
+  CorrectAnswer: TRUE && TRUE
+  AnswerTests: omnitest(correctExpr="TRUE && TRUE")
+  Hint: "Now to see how the && operator works with a vector, type: 
+    TRUE && TRUE"
     
 - Class : text
   Output: The OR operator follows a similar set of rules. The `|` version of OR

From 5a3f4131592585c924cba87e807c55cb75298394 Mon Sep 17 00:00:00 2001
From: Molly Offer-Westort <mollyow@users.noreply.github.com>
Date: Mon, 8 Jan 2024 23:41:46 -0600
Subject: [PATCH 3/4] ok() function for logic

---
 Logic/initLesson.R | 7 +++++++
 1 file changed, 7 insertions(+)
 create mode 100644 Logic/initLesson.R

diff --git a/Logic/initLesson.R b/Logic/initLesson.R
new file mode 100644
index 0000000..7141153
--- /dev/null
+++ b/Logic/initLesson.R
@@ -0,0 +1,7 @@
+# For compatibility with 4.3.1
+
+# Dummy function to advance user past question for which 
+# correct answer yields an error
+ok <- function() {
+  invisible()
+}
\ No newline at end of file

From 8fcfe966f2ee7e7f725e9d73f6c7f5cdfcb94bea Mon Sep 17 00:00:00 2001
From: Molly Offer-Westort <mollyow@users.noreply.github.com>
Date: Mon, 8 Jan 2024 23:48:08 -0600
Subject: [PATCH 4/4] Update initLesson.R

---
 Logic/initLesson.R | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Logic/initLesson.R b/Logic/initLesson.R
index 7141153..fa1c734 100644
--- a/Logic/initLesson.R
+++ b/Logic/initLesson.R
@@ -4,4 +4,4 @@
 # correct answer yields an error
 ok <- function() {
   invisible()
-}
\ No newline at end of file
+}