// Numbas version: exam_results_page_options {"name": "Section 4 (practice set)", "metadata": {"description": "", "licence": "None specified"}, "duration": 0, "percentPass": 0, "showQuestionGroupNames": false, "shuffleQuestionGroups": false, "showstudentname": true, "question_groups": [{"name": "Group", "pickingStrategy": "all-ordered", "pickQuestions": 1, "questionNames": ["", "", "", ""], "variable_overrides": [[], [], [], []], "questions": [{"name": "1st order ODE - Initial Conditions and new value", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Julie Crowley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/113/"}, {"name": "Nick McCullen", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/953/"}, {"name": "Simon Thomas", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3148/"}, {"name": "Maria Aneiros", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3388/"}, {"name": "Andrew Barnes", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3725/"}], "tags": [], "metadata": {"description": "

Given an ODE solution: $y=  b x^n + cx$

Use a condition: $y(1)=a$ to find the particular solution and hence the value of $y(d)$.

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

Starting with the General solution of \\(\\frac{dy}{dx}-\\frac{y}{x}=\\simplify[std]{{b}x^{n}}\\), which is given as:

\n

\\[y=  \\simplify{{b}/{n}x^{n+1}}+cx\\]

\n

Use the condition: $\\displaystyle{y(1)=\\simplify[std]{{b}/{n-1}}}$ to find the particular solution and hence the value of \\(y(\\var{x1})\\).

\n
\n
\n
\n
\n
\n
\n
\n
\n
", "advice": "

Starting with the General Solution: 

\n

\\[y=  \\simplify{{b}/{n}x^{n+1}}+cx\\]
to determine $c$ use the condition $\\displaystyle{y(1)=\\simplify[std]{{b}/{n-1}}}$ to obtain:

\n

\\[\\simplify[std]{{b}/{n-1}}=\\simplify[std]{{b}/{n}+c}\\]
\\[c = \\simplify[std]{{b}/{n-1}} - \\simplify{{b}/{n}} =\\simplify{{b}/{n-1} - {b}/{n}}\\]
and so the particular solution is:\\[y=  \\simplify{{b}/{n}x^{n+1}+({b}/{n-1} - {b}/{n}) * x}\\]

\n
Putting in the value \\( x= \\var{x1} \\) we obtain\\[y=\\simplify{{b}/{n}*{x1}^{n+1}+({b}/{n-1} - {b}/{n})*{x1}}\\]
\n
", "rulesets": {"std": ["all", "fractionNumbers", "!collectNumbers", "!noLeadingMinus"]}, "variables": {"b": {"name": "b", "group": "Ungrouped variables", "definition": "n*(n-1)", "description": "", "templateType": "anything"}, "x1": {"name": "x1", "group": "Ungrouped variables", "definition": "random(2..5)", "description": "", "templateType": "anything"}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(2..4)", "description": "", "templateType": "anything"}, "answer": {"name": "answer", "group": "Ungrouped variables", "definition": "({b}/{n})*{x1}^({n}+1) + ({b}/({n}-1) - {b}/{n})*{x1}", "description": "

\n
", "templateType": "anything"}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["n", "b", "x1", "answer"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Solution is:

\n

$y=\\;\\;$[[0]]

\n

Input all numbers as integers or fractions – not as decimals.

\n
\n
\n
\n
\n
\n
\n
\n
\n
", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": "2", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{answer}", "answerSimplification": "std", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0.5, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "notallowed": {"strings": ["."], "showStrings": false, "partialCredit": 0, "message": "

Input all numbers as integers or fractions.

"}, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "1st Order ODEs - separation 1", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Julie Crowley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/113/"}, {"name": "Nick McCullen", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/953/"}, {"name": "Simon Thomas", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3148/"}, {"name": "Maria Aneiros", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3388/"}], "tags": [], "metadata": {"description": "

Separable 1st order ODE with exponentials

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

Separation and integration:

\n

Find the solution of:
\\[\\dfrac{\\text{d}y}{\\text{d}x}={e^\\simplify{x/{A} + {B}*y}}\\]

\n
Entering formulae: use the syntax c*e^(n*x^p) for $ce^{nx^p}$, not forgetting the * for multiplying arbitrary constants. Use lowercase $c$ for any constant of integration.
\n
\n
\n
", "advice": "

The function needs to be split up using \\(e^{a+b}=e^ae^b\\), before it can be separated and integrated:

\n

$\\displaystyle \\frac{\\text{d}y}{\\text{d}x} = e^\\simplify{ x/{A} + {B} y} = e^\\simplify{x/{A}} e^\\simplify{{B}y}$

\n

Separating: $\\displaystyle e^\\simplify{{-B} y}\\text{d}y  =e^\\simplify{x/{A}}\\text{d}x$

\n

Integrating both sides: $\\simplify{-{1}/{B} e}^\\simplify{{-B}y} = \\simplify{{A}}e^\\simplify{x/{A}} + C$

\n

Rearranging: $ e^\\simplify{{-B}y} = \\simplify{-{B}*{A}e}^\\simplify{x/{A}} + c$

\n

Taking logs: $ {\\var{-B}y} =\\ln\\left(\\simplify{-{B}*{A}e}^\\simplify{x/{A}} + c\\right)$

\n

Rearranging again: $y=\\simplify{-1/{B}}\\ln\\left(\\simplify{-{B}*{A}e}^\\simplify{x/{A}} + c\\right)$

\n
\n
\n
", "rulesets": {"std": ["all", "fractionNumbers", "!collectNumbers", "!noLeadingMinus"]}, "variables": {"A": {"name": "A", "group": "Ungrouped variables", "definition": "random(-4..4 except 0)", "description": "

\n
", "templateType": "anything"}, "B": {"name": "B", "group": "Ungrouped variables", "definition": "random(-4..4 except 0)", "description": "

\n
", "templateType": "anything"}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["A", "B"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Solution is:

\n

$y=\\;\\;$[[0]]

\n

Input all numbers as integers or fractions – not as decimals.

\n

The constant of integration should be entered simply as $c$ (ignore muliplying factors).

\n
\n
\n
\n
\n
\n
", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": "2", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "-{1/B}*ln( -({B}*{A}) * e ^ (x/{A}) + c)", "answerSimplification": "std", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0.5, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "notallowed": {"strings": ["."], "showStrings": false, "partialCredit": 0, "message": "

Input all numbers as integers or fractions. The constant of integration should be entered simply as $c$ (ignore muliplying factors).

\n
"}, "valuegenerators": [{"name": "c", "value": ""}, {"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "Integrating Factor 1", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Julie Crowley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/113/"}, {"name": "Nick McCullen", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/953/"}, {"name": "Simon Thomas", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3148/"}, {"name": "Maria Aneiros", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3388/"}], "tags": [], "metadata": {"description": "

Using the IF to find the General Solution.

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

Integrating Factor Method:

\n

Find the General Solution of:
\\[\\simplify{{A}x^{{m}}}\\simplify{(d y)/(d x)+{B}}x^\\simplify{{n}+{m}}y=\\simplify{{D}x}^\\simplify{{n}+{m}}\\]

\n
Enter your answer as a formula: use the syntax c*e^(n*x^p) for $ce^{nx^p}$, not forgetting the * for multiplying arbitrary constants. Use lowercase $c$ for any constant of integration.
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
", "advice": "

\\(\\simplify{{A}x^{{m}}}\\simplify{(d y)/(d x)+{B}}x^\\simplify{{n}+{m}}y=\\simplify{{D}x}^\\simplify{{n}+{m}}\\) can be solved by the integrating factor method.

\n

Firstly divide both sides by \\(\\simplify{{A}x^{{m}}}\\) to obtain \\(\\simplify{(d y)/(d x)+{B}/{A}}\\simplify{x^{n}}y=\\simplify{{D}/{A}*x^{n}}\\)

\n

This is now in the standard form $\\displaystyle{\\frac{dy}{dx}+f(x)y=r(x)}$ which can be solved using the integrating factor $I=e^{\\int f(x)dx}$

\n

\n

In this example, $f(x) =\\simplify{{B}/{A} x^{n}}$ so $e^{\\int f(x)dx}=e^{\\int \\simplify{{B}/{A} x^{n} d x}}=e^{\\simplify{{B}/{(n+1)*A} x^{n+1}}}$

\n

\n

The integrating factor formula \\( y = \\frac{1}{I}\\int r(x) I dx\\) can be used with \\( r(x) = \\simplify{{D}/{A}x^{n}} \\) to obtain:

\n

\\[\\displaystyle  y =e^{\\simplify{-{B}/{(n+1)*A} x^{n+1}}} \\int \\simplify{{D}/{A}x^{{n}}}e^{\\simplify{{B}/{({n+1})*A} x^{n+1}}} dx\\]

\n

This can be solved using the substitution: \\( u= \\simplify{{B}/{(n+1)*A} x^{n+1}}\\) so \\( \\frac{du}{dx} = \\simplify{{B}/{A} x^{n}}\\) and therefore \\(\\simplify{x^{n}} dx = \\simplify{{A}/{B}}du\\), which gives:

\n

\\[\\displaystyle  y = e^{-u} \\int \\simplify{{D}/{B}e^u} du  = e^{-u} \\left[\\simplify{{D}/{B} e^u} + c\\right] =  \\simplify{{D}/{B}} + ce^{-u}\\] 

\n

Substituting back \\( u= \\simplify{{B}/{(n+1)*A} x^{n+1}}\\) results in a general solution: \\( y =  \\simplify{{D}/{B}} + ce^{\\simplify{-{B}/{(n+1)*A} x^{n+1}}} \\) 

\n

\n
\n
\n
", "rulesets": {"std": ["all", "fractionNumbers", "!collectNumbers", "!noLeadingMinus"]}, "variables": {"m": {"name": "m", "group": "Ungrouped variables", "definition": "random(1..3)", "description": "", "templateType": "anything"}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(1..3)", "description": "", "templateType": "anything"}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "1", "description": "", "templateType": "anything"}, "B": {"name": "B", "group": "Ungrouped variables", "definition": "A*(n+1)*H", "description": "

\n
\n
", "templateType": "anything"}, "H": {"name": "H", "group": "Ungrouped variables", "definition": "random(-1..3 except 0)", "description": "", "templateType": "anything"}, "A": {"name": "A", "group": "Ungrouped variables", "definition": "random(1..3)", "description": "", "templateType": "anything"}, "G": {"name": "G", "group": "Ungrouped variables", "definition": "random(-1..3 except 0)", "description": "", "templateType": "anything"}, "D": {"name": "D", "group": "Ungrouped variables", "definition": "G*B", "description": "", "templateType": "anything"}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["G", "H", "A", "n", "B", "D", "m", "c"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Solution is:

\n

$y=\\;\\;$[[0]]

\n

Input all numbers as integers or fractions – not as decimals.

\n
\n
\n
\n
", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": "3", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{G} + c * e^(-{H}*x^{n+1})", "answerSimplification": "std", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0.5, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "notallowed": {"strings": ["."], "showStrings": false, "partialCredit": 0, "message": "

Input all numbers as integers or fractions.

"}, "valuegenerators": [{"name": "c", "value": ""}, {"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "Integrating Factor 2", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Julie Crowley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/113/"}, {"name": "Nick McCullen", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/953/"}, {"name": "Simon Thomas", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3148/"}, {"name": "Maria Aneiros", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3388/"}], "tags": [], "metadata": {"description": "

Find the solution of $\\displaystyle x\\frac{dy}{dx}+ay=bx^n,\\;\\;y(1)=c$

\n

\n
", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

Integrating Factor Method:

\n

Find the solution of:
\\[x\\frac{dy}{dx}+\\var{a}y=\\simplify[std]{{b}x^{n}}\\]

\n

which satisfies $\\displaystyle{y(1)=\\simplify[std]{{b*(c+1)}/{a+n}}}$

\n
\n
\n
\n
\n
\n
\n
", "advice": "

$\\displaystyle{x\\frac{dy}{dx}+\\var{a}y=\\simplify[std]{{b}x^{n}}}$ can be solved by the integrating factor method.

\n

Firstly divide both sides by $x$ to obtain $\\displaystyle{\\frac{dy}{dx}+\\frac{\\var{a}}{x}y=\\simplify[std]{{b}x^{n-1}}}$

\n

This is now in the standard form $\\displaystyle{\\frac{dy}{dx}+f(x)y=r(x)}$ which can be solved using the integrating factor $I = e^{\\int f(x)dx}$

\n

\n

In this example, $f(x) = \\frac{\\var{a}}{x}$ so $I=e^{\\int f(x)dx}=e^{\\int{\\frac{\\var{a}}{x}dx}}=e^{\\var{a}\\ln(x)}=x^\\var{a}$

\n

Using the integrating factor formula \\( y = \\frac{1}{I} \\int r(x) I dx\\) with \\(r(x) =\\simplify[std]{{b}x^{n-1}}\\) gives a solution:
\\[y=x^{\\var{-a}} \\left[ \\simplify[std]{{b}/{a+n}x^{a+n}+c}\\right] \\]
to determine $c$ use the condition $\\displaystyle{y(1)=\\simplify[std]{{b*(c+1)}/{a+n}}}$ to obtain:

\n

\\[\\simplify[std]{{b*(c+1)}/{a+n}}=\\simplify[std]{{b}/{a+n}+c}\\]
\\[c = \\simplify[std]{{b*(c+1)}/{a+n}} - \\simplify[std]{{b}/{a+n} = {b*c}/{a+n}}\\]
and so the solution is:
\\[y=x^{\\var{-a}}\\left[\\simplify[std]{{b}/{a+n}x^{a+n}+{b*c}/{a+n}}\\right] \\Rightarrow y=\\simplify[std]{{b}/{a+n}*(x^{n}+{c}*x^{-a})}\\]

\n
\n
\n
", "rulesets": {"std": ["all", "!noLeadingMinus", "!collectNumbers", "fractionNumbers"]}, "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(2..4)", "description": "", "templateType": "anything"}, "D": {"name": "D", "group": "Ungrouped variables", "definition": "random(1..3)", "description": "", "templateType": "anything"}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(1..5)", "description": "

\n
", "templateType": "anything"}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(2..4)", "description": "", "templateType": "anything"}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "D*(a+n)", "description": "", "templateType": "anything"}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["D", "a", "c", "b", "n"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Solution is:

\n

$y=\\;\\;$[[0]]

\n

Input all numbers as integers or fractions – not as decimals.

\n
\n
\n
", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": "3", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "({b} / {(a + n)}) * (x ^ {n} + ({c} * (x ^ { - a})))", "answerSimplification": "std", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0.5, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "notallowed": {"strings": ["."], "showStrings": false, "partialCredit": 0, "message": "

Input all numbers as integers or fractions.

"}, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}]}], "allowPrinting": true, "navigation": {"allowregen": true, "reverse": true, "browse": true, "allowsteps": true, "showfrontpage": true, "showresultspage": "oncompletion", "navigatemode": "sequence", "onleave": {"action": "none", "message": ""}, "preventleave": true, "startpassword": ""}, "timing": {"allowPause": true, "timeout": {"action": "none", "message": ""}, "timedwarning": {"action": "none", "message": ""}}, "feedback": {"showactualmark": true, "showtotalmark": true, "showanswerstate": true, "allowrevealanswer": true, "advicethreshold": 0, "intro": "", "reviewshowscore": true, "reviewshowfeedback": true, "reviewshowexpectedanswer": true, "reviewshowadvice": true, "feedbackmessages": []}, "diagnostic": {"knowledge_graph": {"topics": [], "learning_objectives": []}, "script": "diagnosys", "customScript": ""}, "contributors": [{"name": "Nick McCullen", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/953/"}], "extensions": [], "custom_part_types": [], "resources": []}