#3A6ED6

#DA2570

number of question

with or without rep

#B00020

#006758

\text{Click to start}

#4D4D4D

$\text{Check}$

$\text{NEW PROBLEM}$

Fix position and allow selection for all text objects

Empty all input boxes

\text{This is the answer.}

$a=\vphantom{b}$

$b=$

Reset app

#252525

#757575

#949494

#E44461

#E66B9E

#5991FF

#008475

#0F8538

#00a83c

#5145A8

#6557D2

#8575FF

#903D14

#BD6C43

#C75000

#E07415

\text{Try using a table to list the outcomes.}

#eeeeee

#2E006758

#2EB00020

\textsf{Second Draw}

\rotatebox{90}\textsf{First Draw}

randomList3 = Shuffle(Sequence[5, 8])
randomList2 = Shuffle(Sequence[9])
randomList1 = Shuffle(Flatten[Sequence[Sequence[0, 1], ii, 1, 10]])
randomFirstNum = Shuffle(Sequence[7])
countQuestion = 0
FirstNum = Element(randomFirstNum, Mod[countQuestion, Length[randomFirstNum]] + 1)
randomNum3 = Element(randomList3, Mod[countQuestion, Length[randomList3]] + 1)
randomSecondNum = Shuffle(Sequence[randomNum3] \ {FirstNum})
vspace: 28
hspace: 20
table7 = TableText(CellRange(A1,A7,"text"), CellRange(B1,B7,"text"), CellRange(C1,C7,"text"), CellRange(D1,D7,"text"), CellRange(E1,E7,"text"), CellRange(F1,F7,"text"), CellRange(G1,G7,"text"), "|_", hspace, vspace)
table6 = TableText(CellRange(A1,A6,"text"), CellRange(B1,B6,"text"), CellRange(C1,C6,"text"), CellRange(D1,D6,"text"), CellRange(E1,E6,"text"), CellRange(F1,F6,"text"), "|_", hspace, vspace)
table8 = TableText(CellRange(A1,A8,"text"), CellRange(B1,B8,"text"), CellRange(C1,C8,"text"), CellRange(D1,D8,"text"), CellRange(E1,E8,"text"), CellRange(F1,F8,"text"), CellRange(G1,G8,"text"), CellRange(H1,H8,"text"), "|_", hspace, vspace)
table5 = TableText(CellRange(A1,A5,"text"), CellRange(B1,B5,"text"), CellRange(C1,C5,"text"), CellRange(D1,D5,"text"), CellRange(E1,E5,"text"), "|_", hspace, vspace)
colorPart2: colorBlue
colorPart1: colorPink
SecondNum = Element(randomSecondNum, Mod[countQuestion, Length[randomSecondNum]] + 1)
pairsAll = Sequence(Sequence[(ii, jj), jj, 1, randomNum3], ii, 1, randomNum3)
Q7W = Zip(Zip[x(P) ≠ y(P), P, L], L, pairsAll)
Q6W = Zip(Zip[x(P) ≟ y(P), P, L], L, pairsAll)
Q9W = Zip(Zip[Mod[x(P), 2] ≟ Mod[FirstNum, 2] ∧ Mod[y(P), 2] ≟ Mod[FirstNum, 2], P, L], L, pairsAll)
Q4W = Zip(Zip[Mod[x(P), 2] ≟ Mod[FirstNum, 2] ∧ Mod[y(P), 2] ≠ Mod[FirstNum, 2], P, L], L, pairsAll)
Q8W = Zip(Zip[x(P) ≤ Max[FirstNum, SecondNum] - 1 ∧ y(P) ≥ Min[FirstNum, SecondNum] + 1, P, L], L, pairsAll)
Q5W = Zip(Zip[Mod[x(P), 2] ≟ Mod[FirstNum, 2] ∧ y(P) + x(P) ≤ SecondNum + FirstNum - 1, P, L], L, pairsAll)
Q3W = Zip(Zip[x(P) ≟ FirstNum ∧ If[SecondNum ≤ 3, y(P) ≥ SecondNum + 1, y(P) ≤ SecondNum - 1], P, L], L, pairsAll)
Q2W = Zip(Zip[x(P) ≟ FirstNum ∧ Mod[y(P), 2] ≟ Mod[SecondNum, 2], P, L], L, pairsAll)
Q1W = Zip(Zip[x(P) ≟ FirstNum ∧ y(P) ≟ SecondNum, P, L], L, pairsAll)
randomNum2 = Element(randomList2, Mod[countQuestion, Length[randomList2]] + 1)
Q9WO = Zip(Zip[Mod[x(P), 2] ≟ Mod[FirstNum, 2] ∧ Mod[y(P), 2] ≟ Mod[FirstNum, 2] ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q8WO = Zip(Zip[x(P) ≤ Max[FirstNum, SecondNum] - 1 ∧ y(P) ≥ Min[FirstNum, SecondNum] + 1 ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q7WO = Zip(Zip[x(P) ≠ y(P) ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q6WO = Zip(Zip[x(P) ≟ y(P) ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q5WO = Zip(Zip[Mod[x(P), 2] ≟ Mod[FirstNum, 2] ∧ y(P) + x(P) ≤ SecondNum + FirstNum - 1 ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q4WO = Zip(Zip[Mod[x(P), 2] ≟ Mod[FirstNum, 2] ∧ Mod[y(P), 2] ≠ Mod[FirstNum, 2] ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q3WO = Zip(Zip[x(P) ≟ FirstNum ∧ If[SecondNum ≤ 3, y(P) ≥ SecondNum + 1, y(P) ≤ SecondNum - 1] ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q2WO = Zip(Zip[x(P) ≟ FirstNum ∧ Mod[y(P), 2] ≟ Mod[SecondNum, 2] ∧ x(P) ≠ y(P), P, L], L, pairsAll)
Q1WO = Zip(Zip[x(P) ≟ FirstNum ∧ y(P) ≟ SecondNum ∧ x(P) ≠ y(P), P, L], L, pairsAll)
QWO = Element({Q1WO, Q2WO, Q3WO, Q4WO, Q5WO, Q6WO, Q7WO, Q8WO, Q9WO}, randomNum2)
QW = Element({Q1W, Q2W, Q3W, Q4W, Q5W, Q6W, Q7W, Q8W, Q9W}, randomNum2)
input1 = NaN
randomNum1 = Element(randomList1, Mod[countQuestion, Length[randomList1]] + 1)
totalPossibleOutcomes: (randomNum3 * (randomNum3 - If[randomNum1 ≟ 0, 1, 0]))
succesWOR = Sum(Zip[Sum[L], L, QWO])
succesWR = Sum(Zip[Sum[L], L, QW])
expected: If[randomNum1 ≟ 0, succesWOR, succesWR] / totalPossibleOutcomes
B = (5.000341064524864, 5.69392166828734)
input2 = NaN
inputSaved: {NaN, NaN}
inputCurrent: {input1}
correct1: input1 ≟ randomNum1
validate = false
showanswer = false
showsolution = false
tries = 0
countCorrect = 0
showhint = false
InputBox1 = Textfield(input1)
InputBox2 = Textfield(input2)
correct2: input2 ≟ randomNum2
correct: input1 ≟ expected
showbuttons = true
typicalError1: 0
typicalError2: 0
helpTextHintTypicalError: "\text{Be sure to calculate the probability\\" + (LaTeX[If[randomNum1 ≟ 0, "without", "with"]]) + " replacement.}"
showhinttypicalerror = false
textCountCorrect: "\text{Number correct: " + (LaTeX[countCorrect]) + " }"
labelBtnValidate: "\text{CHECK (" + (LaTeX[3 - tries]) + ")}"
enableBtnValidate: inputCurrent ≠ inputSaved ∧ inputCurrent ≟ RemoveUndefined[inputCurrent]
pixelsRight: 16
pixelsLeft: 16
pixelsBottom: 16
pixelsTop: 24
textHint: "\text{\color{" + (LaTeX[colorOrange]) + "}\bold{Hint}\\" + (LaTeX[If[showhinttypicalerror, helpTextHintTypicalError]]) + "" + (LaTeX[If[showhint ∧ showhinttypicalerror, "\\"]]) + "" + (LaTeX[If[showhint, helpTextHint]]) + "}"
layoutY: 178
enableInput: tries < 3 ∧ (¬(validate ∧ correct))
layoutX: 16
layoutAppSize = Corner(5)
textFeedback: "" + (LaTeX[If[correct, "$\text{✓ Correct}$", "$\text{✕ " + (If[tries < 3, "Try again", "Maybe next time"]) + "}$"]]) + ""
onboarding = false
pulsingSpeed: 8
pulsing = 0.6 (slider from 0 to 1, step 0.1)
haloPixels: (pulsing * 7)
onboardingDisplayText: "" + (LaTeX[onboardingText]) + ""
A = (4.591072725036432, 5.892161020227049)
C = (4.917208433066277, 6.084005554362252)
pulsingObject = sectorPixels(A, B, C, haloPixels + 40, Corner[1], Corner[3], Corner[5])
displayAngle = sectorPixels(A, B, C, 40, Corner[1], Corner[3], Corner[5])
layoutOnboarding = PointToPixels(Corner[onboardingDisplayText, 2], Corner[1], Corner[3], Corner[5])
onboardingX: 400
onboardingY: 148
onboardingCase: 2
OnboardingTextOffset = onboardingTextOffset(Corner[onboardingText, 1], Corner[onboardingText, 3], onboardingCase, Corner[1], Corner[3], Corner[5])
question2: "\textcolor{" + (LaTeX[colorPart1]) + "}{\textsf{selecting a }" + (LaTeX[FirstNum]) + "}\textsf{ and \textcolor{" + (LaTeX[colorPart2]) + "}{then an " + (LaTeX[If[Mod[SecondNum, 2] ≟ 0, "even", "odd"]]) + " number}}"
question3: "\textcolor{" + (LaTeX[colorPart1]) + "}{\textsf{drawing }" + (LaTeX[FirstNum]) + "}\textsf{ and \textcolor{" + (LaTeX[colorPart2]) + "}{then a number " + (LaTeX[If[SecondNum ≥ 3, "less", "greater"]]) + " than }}\textcolor{" + (LaTeX[colorPart2]) + "}{" + (LaTeX[SecondNum]) + "}"
D = (3.617781455190482, 4.434142560799505)
E = (5.620638391561986, 4.434142560799505)
expectedTypicalError: If[randomNum1 ≟ 1, succesWOR, succesWR] / totalPossibleOutcomes
pairsAllOneList = Join(pairsAll)
QWOneList = Join(QW)
pairsAllColoredW = Zip((((((If[jj, "\bold{", "{"] * "\textcolor{") * If[jj, colorTealSuccess, colorRedError]) * "}{") * PP) * "}}"), jj, QWOneList, PP, pairsAllOneList)
QWOOneList = Join(QWO)
pairsAllColoredWO = Zip(((((((If[jj, "\bold{", "{"] * "\textcolor{") * If[x(PP) ≟ y(PP), colorGreyGrid, If[jj, colorTealSuccess, colorRedError]]) * "}{") * If[x(PP) ≟ y(PP), "\st{", "{"]) * PP) * "}}}"), jj, QWOOneList, PP, pairsAllOneList)
canBeSimplified: Denominator[expected] ≠ totalPossibleOutcomes
textSolution: "\textsf{\bold{Possible Solution}}\\
\textsf{The number of total possible}\\\textsf{outcomes is }" + (LaTeX[totalPossibleOutcomes]) + ".\\
\textsf{The number of successful}\\\textsf{outcomes is }" + (LaTeX[If[randomNum1 ≟ 0, succesWOR, succesWR]]) + ".\\
\textsf{The probability is: }\frac{" + (LaTeX[If[randomNum1 ≟ 0, succesWOR, succesWR]]) + "}{" + (LaTeX[totalPossibleOutcomes]) + "}" + (LaTeX[If[canBeSimplified, ("=" * FractionText[expected]), ""]]) + "."
isTypicalError: input1 ≟ expectedTypicalError ∧ (¬correct)
question4: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{selecting an " + (LaTeX[If[Mod[FirstNum, 2] ≟ 0, "even", "odd"]]) + "} then \textcolor{" + (LaTeX[colorPart2]) + "}{an " + (LaTeX[If[Mod[FirstNum, 2] ≟ 1, "even", "odd"]]) + " number}}"
question5: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{drawing an " + (LaTeX[If[Mod[FirstNum, 2] ≟ 0, "even", "odd"]]) + " number} first and the \textcolor{" + (LaTeX[colorPart2]) + "}{sum of both} \textcolor{" + (LaTeX[colorPart2]) + "}{numbers being less than " + (LaTeX[FirstNum + SecondNum]) + "}}"
question9: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{selecting two " + (LaTeX[If[Mod[FirstNum, 2] ≟ 0, "even", "odd"]]) + " numbers}}"
question6: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{getting the same number twice}}"
question7: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{getting two different numbers}}"
question1: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{selecting a }}\textcolor{" + (LaTeX[colorPart1]) + "}{" + (LaTeX[FirstNum]) + "}\textsf{ and\textcolor{" + (LaTeX[colorPart2]) + "}{ then a }}\textcolor{" + (LaTeX[colorPart2]) + "}{" + (LaTeX[SecondNum]) + "}"
question8: "\textsf{\textcolor{" + (LaTeX[colorPart1]) + "}{getting first a number less than }}\textcolor{" + (LaTeX[colorPart1]) + "}{" + (LaTeX[Max[FirstNum, SecondNum]]) + "}\textsf{ and \textcolor{" + (LaTeX[colorPart2]) + "}{then a number greater than }}\textcolor{" + (LaTeX[colorPart2]) + "}{" + (LaTeX[Min[FirstNum, SecondNum]]) + "}"
text2 = TableText({"", "1", "2", ""}, {"1", "1,1", "1,2", "\cdots"}, {"2", "2,1", "2,2", "\cdots"}, {"", "\vdots", "", ""}, "c|01000_01000")
redWO = Zip(If[jj, 210, 255] / 255, jj, QWOOneList)
redW = Zip(If[jj, 210, 255] / 255, jj, QWOneList)
red = If(randomNum1 ≟ 1, redW, redWO)
greenWO = Zip(If[jj, 228, 255] / 255, jj, QWOOneList)
greenW = Zip(If[jj, 228, 255] / 255, jj, QWOneList)
green = If(randomNum1 ≟ 1, greenW, greenWO)
blueWO = Zip(If[jj, 226, 255] / 255, jj, QWOOneList)
blueW = Zip(If[jj, 226, 255] / 255, jj, QWOneList)
blue = If(randomNum1 ≟ 1, blueW, blueWO)
solutionTable = Element({table5, table6, table7, table8}, randomNum3 - 4)
text1 = Text(solutionTable, (0, 0.11), true, true, 0, 0)
Cor1 = (-3.2617635388978443, -1.1741126537529298)
Cor3 = (1.8668803403165477, 2.0360858841094687)
IBLabel: "P(" + (LaTeX[Element[{question1, question2, question3, question4, question5, question6, question7, question8, question9}, randomNum2]]) + ")="
distPixels: (Distance[Corner[IBLabel, 1], Corner[IBLabel, 2]] * 800 / (x(Cor3) - x(Cor1)))
yPosIB: 100
xPosIB: 11 + distPixels
question5': "\textsf{\textcolor{#DA2570}{drawing an " + (LaTeX[If[Mod[FirstNum, 2] ≟ 0, "even", "odd"]]) + " number} first and the \textcolor{#3A6ED6}{sum of both} \textcolor{#3A6ED6}{numbers }}"
textQuestion: "\textsf{The bag contains number chips from }1\textsf{ to }" + (LaTeX[randomNum3]) + ".\textsf{ Two chips will be drawn \bold{" + (LaTeX[If[randomNum1 ≟ 1, "with", "without"]]) + "} replacement.}\\\textsf{What is the probability of }" + (LaTeX[Element[{question1, question2, question3, question4, question5', question6, question7, question8, question9}, randomNum2]]) + "" + (LaTeX[If[randomNum2 ≟ 5, (("\\\textsf{\textcolor{#3A6ED6}{being less than " * (FirstNum + SecondNum)) * "}}"), ""]]) + "?"
boldOrNot = Flatten(Zip[Join[{ll, Sequence[false, ii, 1, 8 - randomNum3]}], ll, If[randomNum1 ≟ 0, QWO, QW]])
C1: (If[boldOrNot(3), "\bold{", "{"] * "1,3}")
A1: "" + (LaTeX[(If[boldOrNot(1), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "1,1}}}"
B1: (If[boldOrNot(2), "\bold{", "{"] * "1,2}")
D1: (If[boldOrNot(4), "\bold{", "{"] * "1,4}")
E1: (If[boldOrNot(5), "\bold{", "{"] * "1,5}")
F1: (If[boldOrNot(6), "\bold{", "{"] * "1,6}")
A2: (If[boldOrNot(9), "\bold{", "{"] * "2,1}")
B2: "" + (LaTeX[(If[boldOrNot(10), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "2,2}}}"
C2: "" + (LaTeX[If[boldOrNot(11), "\bold{", "{"]]) + "2,3}"
D2: (If[boldOrNot(12), "\bold{", "{"] * "2,4}")
E2: (If[boldOrNot(13), "\bold{", "{"] * "2,5}")
F2: (If[boldOrNot(14), "\bold{", "{"] * "2,6}")
A3: "" + (LaTeX[If[boldOrNot(17), "\bold{", "{"]]) + "3,1}"
A4: "" + (LaTeX[If[boldOrNot(25), "\bold{", "{"]]) + "4,1}"
A5: (If[boldOrNot(33), "\bold{", "{"] * "5,1}")
A6: (If[boldOrNot(41), "\bold{", "{"] * "6,1}")
A7: (If[boldOrNot(49), "\bold{", "{"] * "7,1}")
A8: (If[boldOrNot(57), "\bold{", "{"] * "8,1}")
B3: (If[boldOrNot(18), "\bold{", "{"] * "3,2}")
B4: (If[boldOrNot(26), "\bold{", "{"] * "4,2}")
B5: (If[boldOrNot(34), "\bold{", "{"] * "5,2}")
B6: (If[boldOrNot(42), "\bold{", "{"] * "6,2}")
B7: (If[boldOrNot(50), "\bold{", "{"] * "7,2}")
B8: (If[boldOrNot(58), "\bold{", "{"] * "8,2}")
C3: "" + (LaTeX[(If[boldOrNot(19), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "3,3}}}"
C4: (If[boldOrNot(27), "\bold{", "{"] * "4,3}")
C5: (If[boldOrNot(35), "\bold{", "{"] * "5,3}")
C6: (If[boldOrNot(43), "\bold{", "{"] * "6,3}")
C7: (If[boldOrNot(51), "\bold{", "{"] * "7,3}")
C8: (If[boldOrNot(59), "\bold{", "{"] * "8,3}")
D3: "" + (LaTeX[If[boldOrNot(20), "\bold{", "{"]]) + "3,4}"
D4: "" + (LaTeX[(If[boldOrNot(28), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "4,4}}}"
D5: "" + (LaTeX[If[boldOrNot(36), "\bold{", "{"]]) + "5,4}"
D6: (If[boldOrNot(44), "\bold{", "{"] * "6,4}")
D7: (If[boldOrNot(52), "\bold{", "{"] * "7,4}")
D8: (If[boldOrNot(60), "\bold{", "{"] * "8,4}")
E3: (If[boldOrNot(21), "\bold{", "{"] * "3,5}")
E4: (If[boldOrNot(29), "\bold{", "{"] * "4,5}")
E5: "" + (LaTeX[(If[boldOrNot(37), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "5,5}}}"
E6: (If[boldOrNot(45), "\bold{", "{"] * "6,5}")
E7: (If[boldOrNot(53), "\bold{", "{"] * "7,5}")
E8: (If[boldOrNot(61), "\bold{", "{"] * "8,5}")
F3: "" + (LaTeX[If[boldOrNot(22), "\bold{", "{"]]) + "3,6}"
F5: (If[boldOrNot(38), "\bold{", "{"] * "5,6}")
F6: "" + (LaTeX[(If[boldOrNot(46), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "6,6}}}"
F7: (If[boldOrNot(54), "\bold{", "{"] * "7,6}")
F8: (If[boldOrNot(62), "\bold{", "{"] * "8,6}")
G1: "" + (LaTeX[If[boldOrNot(7), "\bold{", "{"]]) + "1,7}"
G2: (If[boldOrNot(15), "\bold{", "{"] * "2,7}")
G3: (If[boldOrNot(23), "\bold{", "{"] * "3,7}")
G4: (If[boldOrNot(31), "\bold{", "{"] * "4,7}")
G5: (If[boldOrNot(39), "\bold{", "{"] * "5,7}")
G6: (If[boldOrNot(47), "\bold{", "{"] * "6,7}")
G7: "" + (LaTeX[(If[boldOrNot(55), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "7,7}}}"
G8: (If[boldOrNot(63), "\bold{", "{"] * "8,7}")
H1: "" + (LaTeX[If[boldOrNot(8), "\bold{", "{"]]) + "1,8}"
H2: (If[boldOrNot(16), "\bold{", "{"] * "2,8}")
H3: (If[boldOrNot(24), "\bold{", "{"] * "3,8}")
H4: (If[boldOrNot(32), "\bold{", "{"] * "4,8}")
H5: (If[boldOrNot(40), "\bold{", "{"] * "5,8}")
H6: (If[boldOrNot(48), "\bold{", "{"] * "6,8}")
H7: (If[boldOrNot(56), "\bold{", "{"] * "7,8}")
H8: "" + (LaTeX[(If[boldOrNot(64), "\bold{", "{"] * If[randomNum1 ≟ 0, "\textcolor{#949494}{\st{", "{{"])]) + "8,8}}}"
F4: "" + (LaTeX[If[boldOrNot(30), "\bold{", "{"]]) + "4,6}"
colsNames = Take({"A", "B", "C", "D", "E", "F", "G", "H"}, 1, randomNum3)
cellsNames = Flatten(Zip[Zip[tt + (ii), tt, colsNames], ii, Sequence[randomNum3]])
colorTable = Zip((((((((("SetBackgroundColor(" * cc) * ",") * red(ii)) * ",") * green(ii)) * ",") * blue(ii)) * ")"), cc, cellsNames, ii, Sequence[Length[red]])
F = (-1.6590623266433469, 0.8611532192518309)
f: y = y(F)

Tool: PointToPixels
PointToPixels(InputPoint,Corner1,Corner3,Corner5)
Input: InputPoint, Corner1, Corner3, Corner5
Output: OutputPixels

xLeft: x(Corner1)
xRight: x(Corner3)
yTop: y(Corner3)
yBottom: y(Corner1)
yPixels: (y(Corner5) * (yTop - y(InputPoint)) / (yTop - yBottom))
xPixels: (x(Corner5) * (x(InputPoint) - xLeft) / (xRight - xLeft))
OutputPixels: (xPixels, yPixels)

Tool: sectorPixels
sectorPixels(Midpoint,B,C,pixelRadius,Corner1,Corner3,Corner5
Input: A, B, C, pixelRadius, Corner1, Corner3, Corner5
Output: newSector

pointRadius: (pixelRadius / x(Corner5) * (x(Corner3) - x(Corner1)))
BPrime: A + (pointRadius * UnitVector[B - A])
newSector = CircleSector(A, BPrime, C)

Tool: onboardingTextOffset
onboardingTextOffset(textCorner1,textCorner3,case,corner1,corner3,corner5)
Input: CornerText1, CornerText3, case, Corner1, Corner3, Corner5
Output: TextOffset

xPixels: ((x(CornerText3) - x(CornerText1)) * x(Corner5) / (x(Corner3) - x(Corner1)))
yPixels: ((y(CornerText3) - y(CornerText1)) * y(Corner5) / (y(Corner3) - y(Corner1)))
xOffset = Element({27, (-xPixels) + 2, 16 - xPixels / 2, 16 - xPixels / 2}, case)
yOffset = Element({-23, -23, yPixels - 27, -49}, case)
TextOffset: (xOffset, yOffset)