glnotproblemwithclass:-
    fileinfo(notproblemwithclass,advice),!,
    secondchance(problemwithclass,advicegiven).

secondchance(X,Y):-
    menu(['Would you like the opportunity to answer this question again?',
            [a,'yes, I would like to revise my answer',1],
            [b,'no, I am satisfied with the response I gave',2]
         ],VALUE),!,
    (VALUE = 1,!,
     retract(data(notproblemwithclass)),        
     problemwithclass;
     VALUE = 2,
     assert(data(advicegiven))).

gladvicegiven:-
    assertgoal(advicegiven).

gldiagnosis:-
    assertgoal(diagnosis).

glexplanation:-
    assertgoal(explanation).

glpathway:-
    assertgoal(pathway).

glcauseevaluated:-
    assertgoal(causeevaluated).

glstateofclass:-
    assertgoal(stateofclass).

glpriorstateofclass:-
    assertgoal(priorstateofclass).

glcont:-
    assertgoal(cont).

glmotiv:-
    assertgoal(motiv).

glrelat:-
    assertgoal(relat).

glcomm:-
    assertgoal(comm).

glcomp:-
    assertgoal(comp).

glrecal:-
    assertgoal(recal).

gllearn:-
    assertgoal(learn).

glconta:-
    assertgoal(conta).

glcontb:-
    assertgoal(contb).

glcontc:-
    assertgoal(contc).

glmotiva:-
    assertgoal(motiva).

glmotivb:-
    assertgoal(motivb).

glmotivc:-
    assertgoal(motivc).

glrelata:-
    assertgoal(relata).

glrelatb:-
    assertgoal(relatb).

glrelatc:-
    assertgoal(relatc).

glcomma:-
    assertgoal(comma).

glcommb:-
    assertgoal(commb).

glcommc:-
    assertgoal(commc).

glcompa:-
    assertgoal(compa).

glcompb:-
    assertgoal(compb).

glcompc:-
    assertgoal(compc).

glrecala:-
    assertgoal(recala).

glrecalb:-
    assertgoal(recalb).

glrecalc:-
    assertgoal(recalc).

gllearna:-
    assertgoal(learna).

gllearnb:-
    assertgoal(learnb).

gllearnc:-
    assertgoal(learnc).

glprcont:-
    assertgoal(prcont).

glprmotiv:-
    assertgoal(prmotiv).

glprrelat:-
    assertgoal(prrelat).

glprcomm:-
    assertgoal(prcomm).

glprcomp:-
    assertgoal(prcomp).

glprrecal:-
    assertgoal(prrecal).

glprlearn:-
    assertgoal(prlearn).

glprconta:-
    assertgoal(prconta).

glprcontb:-
    assertgoal(prcontb).

glprcontc:-
    assertgoal(prcontc).

glprmotiva:-
    assertgoal(prmotiva).

glprmotivb:-
    assertgoal(prmotivb).

glprmotivc:-
    assertgoal(prmotivc).

glprrelata:-
    assertgoal(prrelata).

glprrelatb:-
    assertgoal(prrelatb).

glprrelatc:-
    assertgoal(prrelatc).

glprcomma:-
    assertgoal(prcomma).

glprcommb:-
    assertgoal(prcommb).

glprcommc:-
    assertgoal(prcommc).

glprcompa:-
    assertgoal(prcompa).

glprcompb:-
    assertgoal(prcompb).

glprcompc:-
    assertgoal(prcompc).

glprrecala:-
    assertgoal(prrecala).

glprrecalb:-
    assertgoal(prrecalb).

glprrecalc:-
    assertgoal(prrecalc).

glprlearna:-
    assertgoal(prlearna).

glprlearnb:-
    assertgoal(prlearnb).

glprlearnc:-
    assertgoal(prlearnc).

glstartedlesson:-
    assertgoal(startedlesson).

glnotstartedlesson:-
    assertgoal(notstartedlesson).


glclassiscontrolled:-
    assertgoal(classiscontrolled).

glnotclassiscontrolled:-
    assertgoal(notclassiscontrolled).

glclasswascontrolled:-
    assertgoal(classwascontrolled).

glnotclasswascontrolled:-
    assertgoal(notclasswascontrolled).

gldisruptinglesson:-
    assertgoal(disruptinglesson).

glnotdisruptinglesson:-
    assertgoal(notdisruptinglesson).

glwasdisruptinglesson:-
    assertgoal(wasdisruptinglesson).

glnotwasdisruptinglesson:-
    assertgoal(notwasdisruptinglesson).


glclassisparticipating:-
    assertgoal(classisparticipating).

glnotclassisparticipating:-
    assertgoal(notclassisparticipating).

glclasswasparticipating:-
    assertgoal(classwasparticipating).

glnotclasswasparticipating:-
    assertgoal(notclasswasparticipating).

glclassiscooperative:-
    assertgoal(classiscooperative).

glnotclassiscooperative:-
    assertgoal(notclassiscooperative).

glclasswascooperative:-
    assertgoal(classwascooperative).

glnotclasswascooperative:-
    assertgoal(notclasswascooperative).

glclassaware:-
    assertgoal(classaware).

glnotclassaware:-
    assertgoal(notclassaware).

glclassknowwhattodo:-
    assertgoal(classknowwhattodo).

glnotclassknowwhattodo:-
    assertgoal(notclassknowwhattodo).

glwasclassaware:-
    assertgoal(wasclassaware).

glnotwasclassaware:-
    assertgoal(notwasclassaware).

glknowwhattodo:-
    assertgoal(knowwhattodo).

glnotknowwhattodo:-
    assertgoal(notknowwhattodo).
