import tkinter as tk from tkinter import messagebox class MoralithicBasecategorizer: def __init__(self, root): self.root = root self.root.title("Moralithic base categorizer") self.current_question = None self.current_code = None self.flowchart = None # Define flowcharts self.flowcharts = { "Source": self.source_flowchart(), "Statement": self.statement_flowchart(), "Value": self.value_flowchart(), "Displayments": self.displayments_flowchart(), "Non-interactors": self.non_interactors_flowchart(), "Enforcers": self.enforcers_flowchart(), "Means": self.means_flowchart(), "Repeaters": self.repeaters_flowchart(), "Rejecters": self.rejecters_flowchart(), "Accepters": self.accepters_flowchart() } # Create main frame self.main_frame = tk.Frame(self.root) self.main_frame.pack(padx=20, pady=20) # Create selection screen self.create_selection_screen() def create_selection_screen(self): # Clear main frame for widget in self.main_frame.winfo_children(): widget.destroy() tk.Label(self.main_frame, text="Choose Moralithic Method", font=("Arial", 14)).pack(pady=10) for flowchart_name in self.flowcharts.keys(): tk.Button(self.main_frame, text=flowchart_name, command=lambda name=flowchart_name: self.start_flowchart(name)).pack(pady=5) def start_flowchart(self, flowchart_name): self.flowchart = flowchart_name self.current_code = None self.current_question = list(self.flowcharts[flowchart_name].keys())[0] self.show_question() def show_question(self): # Clear main frame for widget in self.main_frame.winfo_children(): widget.destroy() if self.current_question is None: self.create_selection_screen() return question_data = self.flowcharts[self.flowchart][self.current_question] question_text = question_data["text"] options = question_data["options"] tk.Label(self.main_frame, text=question_text, font=("Arial", 14)).pack(pady=10) # Create buttons for options for option, next_step in options.items(): tk.Button(self.main_frame, text=option, command=lambda opt=option, step=next_step: self.handle_choice(opt, step)).pack(pady=5) # Back button tk.Button(self.main_frame, text="Back to Selection", command=self.create_selection_screen).pack(pady=10) def handle_choice(self, option, next_step): # Update current code if self.current_code is None: self.current_code = next_step["code"] else: self.current_code = next_step["code"] if next_step["type"] == "question": self.current_question = next_step["next"] self.show_question() else: messagebox.showinfo("Result", next_step["result"]) self.current_question = None self.show_question() def source_flowchart(self): return { "Q1": { "text": "so?", "options": { "Yes": {"code": "SO01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "in or ex?", "options": { "in": {"code": "SO02", "type": "question", "next": "Q3a"}, "ex": {"code": "SO03", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ca or uc?", "options": { "ca": {"code": "SO04", "type": "question", "next": "Q4a"}, "uc": {"code": "SO05", "type": "question", "next": "Q4b"} } }, "Q3b": { "text": "au or na?", "options": { "au": {"code": "SO06", "type": "question", "next": "Q4c"}, "na": {"code": "SO07", "type": "question", "next": "Q4d"} } }, "Q4a": { "text": "se or ns?", "options": { "se": {"code": "SO09", "type": "question", "next": "Q5b"}, "ns": {"code": "SO08", "type": "question", "next": "Q5a"} } }, "Q4b": { "text": "mo or im?", "options": { "mo": {"code": "SO10", "type": "question", "next": "Q5c"}, "im": {"code": "SO11", "type": "end", "result": "The source in question is an immoral uncaused intrinsic code of the existence: SO11."} } }, "Q4c": { "text": "mo or im?", "options": { "mo": {"code": "SO12", "type": "question", "next": "Q5d"}, "im": {"code": "SO13", "type": "end", "result": "The source in question is an immoral authoritative extrinsic source: SO13."} } }, "Q4d": { "text": "mo or im?", "options": { "mo": {"code": "SO14", "type": "question", "next": "Q5e"}, "im": {"code": "SO15", "type": "end", "result": "The source in question is an immoral non-authoritative extrinsic source: SO15."} } }, "Q5a": { "text": "mo or im?", "options": { "mo": {"code": "SO16", "type": "question", "next": "Q6a"}, "im": {"code": "SO17", "type": "end", "result": "The source in question is an immoral non-sentiently caused intrinsic law of the universe: SO17."} } }, "Q5b": { "text": "mo or im?", "options": { "mo": {"code": "SO18", "type": "question", "next": "Q6b"}, "im": {"code": "SO19", "type": "end", "result": "The source in question is an immoral sentiently caused intrinsic law of the universe: SO19."} } }, "Q5c": { "text": "en or ne?", "options": { "en": {"code": "SO20", "type": "question", "next": "Q6c"}, "ne": {"code": "SO21", "type": "question", "next": "Q6d"} } }, "Q5d": { "text": "ob or su?", "options": { "ob": {"code": "SO22", "type": "question", "next": "Q6f"}, "su": {"code": "SO23", "type": "question", "next": "Q6e"} } }, "Q5e": { "text": "ob or su?", "options": { "ob": {"code": "SO24", "type": "question", "next": "Q6h"}, "su": {"code": "SO25", "type": "question", "next": "Q6g"} } }, "Q6a": { "text": "en or ne?", "options": { "en": {"code": "SO26", "type": "question", "next": "Q7a"}, "ne": {"code": "SO27", "type": "question", "next": "Q7b"} } }, "Q6b": { "text": "en or ne?", "options": { "en": {"code": "SO28", "type": "question", "next": "Q7c"}, "ne": {"code": "SO29", "type": "question", "next": "Q7d"} } }, "Q6c": { "text": "sp or un?", "options": { "sp": {"code": "SO30", "type": "end", "result": "The source in question is a specifically sourcing enforced moral uncaused intrinsic code of the existence: SO30."}, "un": {"code": "SO31", "type": "end", "result": "The source in question is an unspecifically sourcing enforced moral uncaused intrinsic code of the existence: SO31."} } }, "Q6d": { "text": "sp or un?", "options": { "sp": {"code": "SO32", "type": "end", "result": "The source in question is a specifically sourcing non-enforced moral uncaused intrinsic code of the existence: SO32."}, "un": {"code": "SO33", "type": "end", "result": "The source in question is an unspecifically sourcing non-enforced moral uncaused intrinsic code of the existence: SO33."} } }, "Q6e": { "text": "en or ne?", "options": { "en": {"code": "SO34", "type": "question", "next": "Q7e"}, "ne": {"code": "SO35", "type": "question", "next": "Q7f"} } }, "Q6f": { "text": "en or ne?", "options": { "en": {"code": "SO36", "type": "question", "next": "Q7g"}, "ne": {"code": "SO37", "type": "question", "next": "Q7h"} } }, "Q6g": { "text": "en or ne?", "options": { "en": {"code": "SO38", "type": "question", "next": "Q7i"}, "ne": {"code": "SO39", "type": "question", "next": "Q7j"} } }, "Q6h": { "text": "en or ne?", "options": { "en": {"code": "SO40", "type": "question", "next": "Q7k"}, "ne": {"code": "SO41", "type": "question", "next": "Q7l"} } }, "Q7a": { "text": "sp or un?", "options": { "sp": {"code": "SO42", "type": "end", "result": "The source in question is a specifically sourcing enforced moral non-sentiently caused intrinsic law of the universe: SO42."}, "un": {"code": "SO43", "type": "end", "result": "The source in question is an unspecifically sourcing enforced moral non-sentiently caused intrinsic law of the universe: SO43."} } }, "Q7b": { "text": "sp or un?", "options": { "sp": {"code": "SO44", "type": "end", "result": "The source in question is a specifically sourcing non-enforced moral non-sentiently caused intrinsic law of the universe: SO44."}, "un": {"code": "SO45", "type": "end", "result": "The source in question is an unspecifically sourcing non-enforced moral non-sentiently caused intrinsic law of the universe: SO45."} } }, "Q7c": { "text": "sp or un?", "options": { "sp": {"code": "SO46", "type": "end", "result": "The source in question is a specifically sourcing enforced moral sentiently caused intrinsic law of the universe: SO46."}, "un": {"code": "SO47", "type": "end", "result": "The source in question is an unspecifically sourcing enforced moral sentiently caused intrinsic law of the universe: SO47."} } }, "Q7d": { "text": "sp or un?", "options": { "sp": {"code": "SO48", "type": "end", "result": "The source in question is a specifically sourcing non-enforced moral sentiently caused intrinsic law of the universe: SO48."}, "un": {"code": "SO49", "type": "end", "result": "The source in question is an unspecifically sourcing non-enforced moral sentiently caused intrinsic law of the universe: SO49."} } }, "Q7e": { "text": "is or es?", "options": { "is": {"code": "SO51", "type": "end", "result": "The source in question is an internally stating enforcing objective moral authoritative extrinsic source: SO51."}, "es": {"code": "SO50", "type": "question", "next": "Q8a"} } }, "Q7f": { "text": "is or es?", "options": { "is": {"code": "SO53", "type": "end", "result": "The source in question is an internally stating non-enforcing objective moral authoritative extrinsic source: SO53."}, "es": {"code": "SO52", "type": "question", "next": "Q8b"} } }, "Q7g": { "text": "is or es?", "options": { "is": {"code": "SO55", "type": "end", "result": "The source in question is an internally stating enforcing subjective moral authoritative extrinsic source: SO55."}, "es": {"code": "SO54", "type": "question", "next": "Q8c"} } }, "Q7h": { "text": "is or es?", "options": { "is": {"code": "SO57", "type": "end", "result": "The source in question is an internally stating non-enforcing subjective moral authoritative extrinsic source: SO57."}, "es": {"code": "SO56", "type": "question", "next": "Q8d"} } }, "Q7i": { "text": "sp or un?", "options": { "sp": {"code": "SO58", "type": "end", "result": "The source in question is a specifically sourcing enforcing objective moral non-authoritative extrinsic source: SO58."}, "un": {"code": "SO59", "type": "end", "result": "The source in question is an unspecifically sourcing enforcing objective moral non-authoritative extrinsic source: SO59."} } }, "Q7j": { "text": "sp or un?", "options": { "sp": {"code": "SO60", "type": "end", "result": "The source in question is a specifically sourcing non-enforcing objective moral non-authoritative extrinsic source: SO60."}, "un": {"code": "SO61", "type": "end", "result": "The source in question is an unspecifically sourcing non-enforcing objective moral non-authoritative extrinsic source: SO61."} } }, "Q7k": { "text": "sp or un?", "options": { "sp": {"code": "SO62", "type": "end", "result": "The source in question is a specifically sourcing enforcing subjective moral non-authoritative extrinsic source: SO62."}, "un": {"code": "SO63", "type": "end", "result": "The source in question is an unspecifically sourcing enforcing subjective moral non-authoritative extrinsic source: SO63."} } }, "Q7l": { "text": "sp or un?", "options": { "sp": {"code": "SO64", "type": "end", "result": "The source in question is a specifically sourcing non-enforcing subjective moral non-authoritative extrinsic source: SO64."}, "un": {"code": "SO65", "type": "end", "result": "The source in question is an unspecifically sourcing non-enforcing subjective moral non-authoritative extrinsic source: SO65."} } }, "Q8a": { "text": "sp or un?", "options": { "sp": {"code": "SO66", "type": "end", "result": "The source in question is a specifically sourcing externally stating enforcing objective moral authoritative extrinsic source: SO66."}, "un": {"code": "SO67", "type": "end", "result": "The source in question is an unspecifically sourcing externally stating enforcing objective moral authoritative extrinsic source: SO67."} } }, "Q8b": { "text": "sp or un?", "options": { "sp": {"code": "SO68", "type": "end", "result": "The source in question is a specifically sourcing externally stating non-enforcing objective moral authoritative extrinsic source: SO68."}, "un": {"code": "SO69", "type": "end", "result": "The source in question is an unspecifically sourcing externally stating non-enforcing objective moral authoritative extrinsic source: SO69."} } }, "Q8c": { "text": "sp or un?", "options": { "sp": {"code": "SO70", "type": "end", "result": "The source in question is a specifically sourcing externally stating enforcing subjective moral authoritative extrinsic source: SO70."}, "un": {"code": "SO71", "type": "end", "result": "The source in question is an unspecifically sourcing externally stating enforcing subjective moral authoritative extrinsic source: SO71."} } }, "Q8d": { "text": "sp or un?", "options": { "sp": {"code": "SO72", "type": "end", "result": "The source in question is a specifically sourcing externally stating non-enforcing subjective moral authoritative extrinsic source: SO72."}, "un": {"code": "SO73", "type": "end", "result": "The source in question is an unspecifically sourcing externally stating non-enforcing subjective moral authoritative extrinsic source: SO73."} } } } def statement_flowchart(self): return { "Q1": { "text": "st?", "options": { "Yes": {"code": "ST01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "in or ex?", "options": { "in": {"code": "ST02", "type": "question", "next": "Q3a"}, "ex": {"code": "ST03", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ca or uc?", "options": { "ca": {"code": "ST04", "type": "question", "next": "Q4a"}, "uc": {"code": "ST05", "type": "question", "next": "Q4b"} } }, "Q3b": { "text": "au or na?", "options": { "au": {"code": "ST06", "type": "question", "next": "Q4c"}, "na": {"code": "ST07", "type": "question", "next": "Q4d"} } }, "Q4a": { "text": "se or ns?", "options": { "se": {"code": "ST09", "type": "question", "next": "Q5b"}, "ns": {"code": "ST08", "type": "question", "next": "Q5a"} } }, "Q4b": { "text": "mo or im?", "options": { "mo": {"code": "ST10", "type": "question", "next": "Q5c"}, "im": {"code": "ST11", "type": "end", "result": "The statement in question is an immoral uncaused intrinsic statement: ST11."} } }, "Q4c": { "text": "mo, nm or im?", "options": { "mo": {"code": "ST13", "type": "question", "next": "Q5d"}, "nm": {"code": "ST12", "type": "end", "result": "The statement in question is a non-moral authoritative extrinsic statement: ST12."}, "im": {"code": "ST14", "type": "end", "result": "The statement in question is an immoral authoritative extrinsic statement: ST14."} } }, "Q4d": { "text": "mo or im?", "options": { "mo": {"code": "ST15", "type": "question", "next": "Q5e"}, "im": {"code": "ST16", "type": "end", "result": "The statement in question is an immoral non-authoritative extrinsic statement: ST16."} } }, "Q5a": { "text": "mo or im?", "options": { "mo": {"code": "ST17", "type": "question", "next": "Q6a"}, "im": {"code": "ST18", "type": "end", "result": "The statement in question is an immoral non-sentiently caused intrinsic statement: ST18."} } }, "Q5b": { "text": "mo or im?", "options": { "mo": {"code": "ST19", "type": "question", "next": "Q6b"}, "im": {"code": "ST20", "type": "end", "result": "The statement in question is an immoral sentiently caused intrinsic statement: ST20."} } }, "Q5c": { "text": "en or ne?", "options": { "en": {"code": "ST21", "type": "question", "next": "Q6c"}, "ne": {"code": "ST22", "type": "question", "next": "Q6d"} } }, "Q5d": { "text": "ob or su?", "options": { "ob": {"code": "ST23", "type": "question", "next": "Q6f"}, "su": {"code": "ST24", "type": "question", "next": "Q6e"} } }, "Q5e": { "text": "ob or su?", "options": { "ob": {"code": "ST25", "type": "question", "next": "Q6h"}, "su": {"code": "ST26", "type": "question", "next": "Q6g"} } }, "Q6a": { "text": "en or ne?", "options": { "en": {"code": "ST27", "type": "question", "next": "Q7a"}, "ne": {"code": "ST28", "type": "question", "next": "Q7b"} } }, "Q6b": { "text": "en or ne?", "options": { "en": {"code": "ST29", "type": "question", "next": "Q7c"}, "ne": {"code": "ST30", "type": "question", "next": "Q7d"} } }, "Q6c": { "text": "sp or un?", "options": { "sp": {"code": "ST31", "type": "end", "result": "The statement in question is a specifically sourced enforced moral uncaused intrinsic statement: ST31."}, "un": {"code": "ST32", "type": "end", "result": "The statement in question is a unspecifically sourced enforced moral uncaused intrinsic statement: ST32."} } }, "Q6d": { "text": "sp or un?", "options": { "sp": {"code": "ST33", "type": "end", "result": "The statement in question is a specifically sourced non-enforced moral uncaused intrinsic statement: ST33."}, "un": {"code": "ST34", "type": "end", "result": "The statement in question is a unspecifically sourced non-enforced moral uncaused intrinsic statement: ST34."} } }, "Q6e": { "text": "en or ne?", "options": { "en": {"code": "ST35", "type": "question", "next": "Q7e"}, "ne": {"code": "ST36", "type": "question", "next": "Q7f"} } }, "Q6f": { "text": "en or ne?", "options": { "en": {"code": "ST37", "type": "question", "next": "Q7g"}, "ne": {"code": "ST38", "type": "question", "next": "Q7h"} } }, "Q6g": { "text": "en or ne?", "options": { "en": {"code": "ST39", "type": "question", "next": "Q7i"}, "ne": {"code": "ST40", "type": "question", "next": "Q7j"} } }, "Q6h": { "text": "en or ne?", "options": { "en": {"code": "ST41", "type": "question", "next": "Q7k"}, "ne": {"code": "ST42", "type": "question", "next": "Q7l"} } }, "Q7a": { "text": "sp or un?", "options": { "sp": {"code": "ST43", "type": "end", "result": "The statement in question is a specifically sourced enforced moral non-sentiently caused intrinsic statement: ST43."}, "un": {"code": "ST44", "type": "end", "result": "The statement in question is a unspecifically sourced enforced moral non-sentiently caused intrinsic statement: ST44."} } }, "Q7b": { "text": "sp or un?", "options": { "sp": {"code": "ST45", "type": "end", "result": "The statement in question is a specifically sourced non-enforced moral non-sentiently caused intrinsic statement: ST45."}, "un": {"code": "ST46", "type": "end", "result": "The statement in question is a unspecifically sourced non-enforced moral non-sentiently caused intrinsic statement: ST46."} } }, "Q7c": { "text": "sp or un?", "options": { "sp": {"code": "ST47", "type": "end", "result": "The statement in question is a specifically sourced enforced moral sentiently caused intrinsic statement: ST47."}, "un": {"code": "ST48", "type": "end", "result": "The statement in question is a unspecifically sourced enforced moral sentiently caused intrinsic statement: ST48."} } }, "Q7d": { "text": "sp or un?", "options": { "sp": {"code": "ST49", "type": "end", "result": "The statement in question is a specifically sourced non-enforced moral sentiently caused intrinsic statement: ST49."}, "un": {"code": "ST50", "type": "end", "result": "The statement in question is a unspecifically sourced non-enforced moral sentiently caused intrinsic statement: ST50."} } }, "Q7e": { "text": "is or es?", "options": { "is": {"code": "ST52", "type": "end", "result": "The statement in question is an internally stated enforced objective moral authoritative extrinsic statement: ST52."}, "es": {"code": "ST51", "type": "question", "next": "Q8a"} } }, "Q7f": { "text": "is or es?", "options": { "is": {"code": "ST54", "type": "end", "result": "The statement in question is an internally stated non-enforced objective moral authoritative extrinsic statement: ST54."}, "es": {"code": "ST53", "type": "question", "next": "Q8b"} } }, "Q7g": { "text": "is or es?", "options": { "is": {"code": "ST56", "type": "end", "result": "The statement in question is an internally stated enforced subjective moral authoritative extrinsic statement: ST56."}, "es": {"code": "ST55", "type": "question", "next": "Q8c"} } }, "Q7h": { "text": "is or es?", "options": { "is": {"code": "ST58", "type": "end", "result": "The statement in question is an internally stated non-enforced subjective moral authoritative extrinsic statement: ST58."}, "es": {"code": "ST57", "type": "question", "next": "Q8d"} } }, "Q7i": { "text": "sp or un?", "options": { "sp": {"code": "ST59", "type": "end", "result": "The statement in question is a specifically sourced enforced objective moral non-authoritative extrinsic statement: ST59."}, "un": {"code": "ST60", "type": "end", "result": "The statement in question is a unspecifically sourced enforced objective moral non-authoritative extrinsic statement: ST60."} } }, "Q7j": { "text": "sp or un?", "options": { "sp": {"code": "ST61", "type": "end", "result": "The statement in question is a specifically sourced non-enforced objective moral non-authoritative extrinsic statement: ST61."}, "un": {"code": "ST62", "type": "end", "result": "The statement in question is a unspecifically sourced non-enforced objective moral non-authoritative extrinsic statement: ST62."} } }, "Q7k": { "text": "sp or un?", "options": { "sp": {"code": "ST63", "type": "end", "result": "The statement in question is a specifically sourced enforced subjective moral non-authoritative extrinsic statement: ST63."}, "un": {"code": "ST64", "type": "end", "result": "The statement in question is a unspecifically sourced enforced subjective moral non-authoritative extrinsic statement: ST64."} } }, "Q7l": { "text": "sp or un?", "options": { "sp": {"code": "ST65", "type": "end", "result": "The statement in question is a specifically sourced non-enforced subjective moral non-authoritative extrinsic statement: ST65."}, "un": {"code": "ST66", "type": "end", "result": "The statement in question is a unspecifically sourced non-enforced subjective moral non-authoritative extrinsic statement: ST66."} } }, "Q8a": { "text": "sp or un?", "options": { "sp": {"code": "ST67", "type": "end", "result": "The statement in question is a specifically sourced externally stated enforced objective moral authoritative extrinsic statement: ST67."}, "un": {"code": "ST68", "type": "end", "result": "The statement in question is a unspecifically sourced externally stated enforced objective moral authoritative extrinsic statement: ST68."} } }, "Q8b": { "text": "sp or un?", "options": { "sp": {"code": "ST69", "type": "end", "result": "The statement in question is a specifically sourced externally stated non-enforced objective moral authoritative extrinsic statement: ST69."}, "un": {"code": "ST70", "type": "end", "result": "The statement in question is a unspecifically sourced externally stated non-enforced objective moral authoritative extrinsic statement: ST70."} } }, "Q8c": { "text": "sp or un?", "options": { "sp": {"code": "ST71", "type": "end", "result": "The statement in question is a specifically sourced externally stated enforced subjective moral authoritative extrinsic statement: ST71."}, "un": {"code": "ST72", "type": "end", "result": "The statement in question is a unspecifically sourced externally stated enforced subjective moral authoritative extrinsic statement: ST72."} } }, "Q8d": { "text": "sp or un?", "options": { "sp": {"code": "ST73", "type": "end", "result": "The statement in question is a specifically sourced externally stated non-enforced subjective moral authoritative extrinsic statement: ST73."}, "un": {"code": "ST74", "type": "end", "result": "The statement in question is a unspecifically sourced externally stated non-enforced subjective moral authoritative extrinsic statement: ST74."} } } } def value_flowchart(self): return { "Q1": { "text": "vl?", "options": { "Yes": {"code": "VL01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "in or ex?", "options": { "in": {"code": "VL02", "type": "question", "next": "Q3a"}, "ex": {"code": "VL03", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ca or uc?", "options": { "ca": {"code": "VL04", "type": "question", "next": "Q4a"}, "uc": {"code": "VL05", "type": "question", "next": "Q4b"} } }, "Q3b": { "text": "au or na?", "options": { "au": {"code": "VL06", "type": "question", "next": "Q4c"}, "na": {"code": "VL07", "type": "question", "next": "Q4d"} } }, "Q4a": { "text": "se or ns?", "options": { "se": {"code": "VL09", "type": "question", "next": "Q5b"}, "ns": {"code": "VL08", "type": "question", "next": "Q5a"} } }, "Q4b": { "text": "mo or im?", "options": { "mo": {"code": "VL10", "type": "question", "next": "Q5c"}, "im": {"code": "VL11", "type": "end", "result": "The value in question is an immoral uncaused intrinsic value: VL11."} } }, "Q4c": { "text": "mo, nm or im?", "options": { "mo": {"code": "VL13", "type": "question", "next": "Q5d"}, "nm": {"code": "VL12", "type": "end", "result": "The value in question is a non-moral authoritative extrinsic value: VL12."}, "im": {"code": "VL14", "type": "end", "result": "The value in question is an immoral authoritative extrinsic value: VL14."} } }, "Q4d": { "text": "mo or im?", "options": { "mo": {"code": "VL15", "type": "question", "next": "Q5e"}, "im": {"code": "VL16", "type": "end", "result": "The value in question is an immoral non-authoritative extrinsic value: VL16."} } }, "Q5a": { "text": "mo or im?", "options": { "mo": {"code": "VL17", "type": "question", "next": "Q6a"}, "im": {"code": "VL18", "type": "end", "result": "The value in question is an immoral non-sentiently caused intrinsic value: VL18."} } }, "Q5b": { "text": "mo or im?", "options": { "mo": {"code": "VL19", "type": "question", "next": "Q6b"}, "im": {"code": "VL20", "type": "end", "result": "The value in question is an immoral sentiently caused intrinsic value: VL20."} } }, "Q5c": { "text": "en or ne?", "options": { "en": {"code": "VL21", "type": "question", "next": "Q6c"}, "ne": {"code": "VL22", "type": "question", "next": "Q6d"} } }, "Q5d": { "text": "ob or su?", "options": { "ob": {"code": "VL23", "type": "question", "next": "Q6f"}, "su": {"code": "VL24", "type": "question", "next": "Q6e"} } }, "Q5e": { "text": "ob or su?", "options": { "ob": {"code": "VL25", "type": "question", "next": "Q6h"}, "su": {"code": "VL26", "type": "question", "next": "Q6g"} } }, "Q6a": { "text": "en or ne?", "options": { "en": {"code": "VL27", "type": "question", "next": "Q7a"}, "ne": {"code": "VL28", "type": "question", "next": "Q7b"} } }, "Q6b": { "text": "en or ne?", "options": { "en": {"code": "VL29", "type": "question", "next": "Q7c"}, "ne": {"code": "VL30", "type": "question", "next": "Q7d"} } }, "Q6c": { "text": "sp or un?", "options": { "sp": {"code": "VL31", "type": "end", "result": "The value in question is a specifically sourced enforced moral uncaused intrinsic value: VL31."}, "un": {"code": "VL32", "type": "end", "result": "The value in question is a unspecifically sourced enforced moral uncaused intrinsic value: VL32."} } }, "Q6d": { "text": "sp or un?", "options": { "sp": {"code": "VL33", "type": "end", "result": "The value in question is a specifically sourced non-enforced moral uncaused intrinsic value: VL33."}, "un": {"code": "VL34", "type": "end", "result": "The value in question is a unspecifically sourced non-enforced moral uncaused intrinsic value: VL34."} } }, "Q6e": { "text": "en or ne?", "options": { "en": {"code": "VL35", "type": "question", "next": "Q7e"}, "ne": {"code": "VL36", "type": "question", "next": "Q7f"} } }, "Q6f": { "text": "en or ne?", "options": { "en": {"code": "VL37", "type": "question", "next": "Q7g"}, "ne": {"code": "VL38", "type": "question", "next": "Q7h"} } }, "Q6g": { "text": "en or ne?", "options": { "en": {"code": "VL39", "type": "question", "next": "Q7i"}, "ne": {"code": "VL40", "type": "question", "next": "Q7j"} } }, "Q6h": { "text": "en or ne?", "options": { "en": {"code": "VL41", "type": "question", "next": "Q7k"}, "ne": {"code": "VL42", "type": "question", "next": "Q7l"} } }, "Q7a": { "text": "sp or un?", "options": { "sp": {"code": "VL43", "type": "end", "result": "The value in question is a specifically sourced enforced moral non-sentiently caused intrinsic value: VL43."}, "un": {"code": "VL44", "type": "end", "result": "The value in question is a unspecifically sourced enforced moral non-sentiently caused intrinsic value: VL44."} } }, "Q7b": { "text": "sp or un?", "options": { "sp": {"code": "VL45", "type": "end", "result": "The value in question is a specifically sourced non-enforced moral non-sentiently caused intrinsic value: VL45."}, "un": {"code": "VL46", "type": "end", "result": "The value in question is a unspecifically sourced non-enforced moral non-sentiently caused intrinsic value: VL46."} } }, "Q7c": { "text": "sp or un?", "options": { "sp": {"code": "VL47", "type": "end", "result": "The value in question is a specifically sourced enforced moral sentiently caused intrinsic value: VL47."}, "un": {"code": "VL48", "type": "end", "result": "The value in question is a unspecifically sourced enforced moral sentiently caused intrinsic value: VL48."} } }, "Q7d": { "text": "sp or un?", "options": { "sp": {"code": "VL49", "type": "end", "result": "The value in question is a specifically sourced non-enforced moral sentiently caused intrinsic value: VL49."}, "un": {"code": "VL50", "type": "end", "result": "The value in question is a unspecifically sourced non-enforced moral sentiently caused intrinsic value: VL50."} } }, "Q7e": { "text": "is or es?", "options": { "is": {"code": "VL52", "type": "end", "result": "The value in question is an internally stated enforced objective moral authoritative extrinsic value: VL52."}, "es": {"code": "VL51", "type": "question", "next": "Q8a"} } }, "Q7f": { "text": "is or es?", "options": { "is": {"code": "VL54", "type": "end", "result": "The value in question is an internally stated non-enforced objective moral authoritative extrinsic value: VL54."}, "es": {"code": "VL53", "type": "question", "next": "Q8b"} } }, "Q7g": { "text": "is or es?", "options": { "is": {"code": "VL56", "type": "end", "result": "The value in question is an internally stated enforced subjective moral authoritative extrinsic value: VL56."}, "es": {"code": "VL55", "type": "question", "next": "Q8c"} } }, "Q7h": { "text": "is or es?", "options": { "is": {"code": "VL58", "type": "end", "result": "The value in question is an internally stated non-enforced subjective moral authoritative extrinsic value: VL58."}, "es": {"code": "VL57", "type": "question", "next": "Q8d"} } }, "Q7i": { "text": "sp or un?", "options": { "sp": {"code": "VL59", "type": "end", "result": "The value in question is a specifically sourced enforced objective moral non-authoritative extrinsic value: VL59."}, "un": {"code": "VL60", "type": "end", "result": "The value in question is a unspecifically sourced enforced objective moral non-authoritative extrinsic value: VL60."} } }, "Q7j": { "text": "sp or un?", "options": { "sp": {"code": "VL61", "type": "end", "result": "The value in question is a specifically sourced non-enforced objective moral non-authoritative extrinsic value: VL61."}, "un": {"code": "VL62", "type": "end", "result": "The value in question is a unspecifically sourced non-enforced objective moral non-authoritative extrinsic value: VL62."} } }, "Q7k": { "text": "sp or un?", "options": { "sp": {"code": "VL63", "type": "end", "result": "The value in question is a specifically sourced enforced subjective moral non-authoritative extrinsic value: VL63."}, "un": {"code": "VL64", "type": "end", "result": "The value in question is a unspecifically sourced enforced subjective moral non-authoritative extrinsic value: VL64."} } }, "Q7l": { "text": "sp or un?", "options": { "sp": {"code": "VL65", "type": "end", "result": "The value in question is a specifically sourced non-enforced subjective moral non-authoritative extrinsic value: VL65."}, "un": {"code": "VL66", "type": "end", "result": "The value in question is a unspecifically sourced non-enforced subjective moral non-authoritative extrinsic value: VL66."} } }, "Q8a": { "text": "sp or un?", "options": { "sp": {"code": "VL67", "type": "end", "result": "The value in question is a specifically sourced externally stated enforced objective moral authoritative extrinsic value: VL67."}, "un": {"code": "VL68", "type": "end", "result": "The value in question is a unspecifically sourced externally stated enforced objective moral authoritative extrinsic value: VL68."} } }, "Q8b": { "text": "sp or un?", "options": { "sp": {"code": "VL69", "type": "end", "result": "The value in question is a specifically sourced externally stated non-enforced objective moral authoritative extrinsic value: VL69."}, "un": {"code": "VL70", "type": "end", "result": "The value in question is a unspecifically sourced externally stated non-enforced objective moral authoritative extrinsic value: VL70."} } }, "Q8c": { "text": "sp or un?", "options": { "sp": {"code": "VL71", "type": "end", "result": "The value in question is a specifically sourced externally stated enforced subjective moral authoritative extrinsic value: VL71."}, "un": {"code": "VL72", "type": "end", "result": "The value in question is a unspecifically sourced externally stated enforced subjective moral authoritative extrinsic value: VL72."} } }, "Q8d": { "text": "sp or un?", "options": { "sp": {"code": "VL73", "type": "end", "result": "The value in question is a specifically sourced externally stated non-enforced subjective moral authoritative extrinsic value: VL73."}, "un": {"code": "VL74", "type": "end", "result": "The value in question is a unspecifically sourced externally stated non-enforced subjective moral authoritative extrinsic value: VL74."} } } } def displayments_flowchart(self): return { "Q1": { "text": "dp?", "options": { "Yes": {"code": "DP01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "st or mo?", "options": { "mo": {"code": "DP03", "type": "end", "result": "The displayment in question is a moving displayment: DP03."}, "st": {"code": "DP02", "type": "end", "result": "The displayment in question is a stationary displayment: DP02."} } } } def non_interactors_flowchart(self): return { "Q1": { "text": "ni?", "options": { "Yes": {"code": None, "type": "end", "next": None}, "No": {"code": "NI01", "type": "question", "next": "Q2"} } }, "Q2": { "text": "aw or ua?", "options": { "aw": {"code": "NI03", "type": "question", "next": "Q3a"}, "ua": {"code": "NI02", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ta or ut?", "options": { "ta": {"code": "NI04", "type": "end", "result": "The non-interactor in question is a targeted aware non-interactor: NI04."}, "ut": {"code": "NI05", "type": "end", "result": "The non-interactor in question is an untargeted aware non-interactor: NI05."} } }, "Q3b": { "text": "ta or ut?", "options": { "ta": {"code": "NI06", "type": "end", "result": "The non-interactor in question is a targeted unaware non-interactor: NI06."}, "ut": {"code": "NI07", "type": "end", "result": "The non-interactor in question is an untargeted unaware non-interactor: NI07."} } } } def enforcers_flowchart(self): return { "Q1": { "text": "ef?", "options": { "Yes": {"code": "EF01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "is et or nt?", "options": { "et": {"code": "EF02", "type": "question", "next": "Q3a"}, "nt": {"code": "EF03", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ss or os?", "options": { "ss": {"code": "EF04", "type": "question", "next": "Q4a"}, "os": {"code": "EF05", "type": "question", "next": "Q4b"} } }, "Q3b": { "text": "ss or os?", "options": { "ss": {"code": "EF06", "type": "question", "next": "Q4c"}, "os": {"code": "EF07", "type": "question", "next": "Q4d"} } }, "Q4a": { "text": "fr or ct?", "options": { "fr": {"code": "EF08", "type": "question", "next": "Q5a"}, "ct": {"code": "EF09", "type": "question", "next": "Q5b"} } }, "Q4b": { "text": "fr or ct?", "options": { "fr": {"code": "EF10", "type": "question", "next": "Q5c"}, "ct": {"code": "EF11", "type": "question", "next": "Q5d"} } }, "Q4c": { "text": "fr or ct?", "options": { "fr": {"code": "EF12", "type": "question", "next": "Q5e"}, "ct": {"code": "EF13", "type": "question", "next": "Q5f"} } }, "Q4d": { "text": "fr or ct?", "options": { "fr": {"code": "EF14", "type": "question", "next": "Q5g"}, "ct": {"code": "EF15", "type": "question", "next": "Q5h"} } }, "Q5a": { "text": "ag or sg?", "options": { "ag": {"code": "EF16", "type": "question", "next": "Q6a"}, "sg": {"code": "EF17", "type": "question", "next": "Q6b"} } }, "Q5b": { "text": "ag or sg?", "options": { "ag": {"code": "EF18", "type": "question", "next": "Q6c"}, "sg": {"code": "EF19", "type": "question", "next": "Q6d"} } }, "Q5c": { "text": "ag or sg?", "options": { "ag": {"code": "EF20", "type": "question", "next": "Q6e"}, "sg": {"code": "EF21", "type": "question", "next": "Q6f"} } }, "Q5d": { "text": "ag or sg?", "options": { "ag": {"code": "EF22", "type": "question", "next": "Q6g"}, "sg": {"code": "EF23", "type": "question", "next": "Q6h"} } }, "Q5e": { "text": "ag or sg?", "options": { "ag": {"code": "EF24", "type": "question", "next": "Q6i"}, "sg": {"code": "EF25", "type": "question", "next": "Q6j"} } }, "Q5f": { "text": "ag or sg?", "options": { "ag": {"code": "EF26", "type": "question", "next": "Q6k"}, "sg": {"code": "EF27", "type": "question", "next": "Q6l"} } }, "Q5g": { "text": "ag or sg?", "options": { "ag": {"code": "EF28", "type": "question", "next": "Q6m"}, "sg": {"code": "EF29", "type": "question", "next": "Q6n"} } }, "Q5h": { "text": "ag or sg?", "options": { "ag": {"code": "EF30", "type": "question", "next": "Q6o"}, "sg": {"code": "EF31", "type": "question", "next": "Q6p"} } }, "Q6a": { "text": "ta or ut?", "options": { "ta": {"code": "EF32", "type": "end", "result": "The enforcer in question is a targeted all-enforcing former self-sourced entitive enforcer: EF32."}, "ut": {"code": "EF33", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing former self-sourced entitive enforcer: EF33."} } }, "Q6b": { "text": "ta or ut?", "options": { "ta": {"code": "EF34", "type": "end", "result": "The enforcer in question is a targeted some-enforcing former self-sourced entitive enforcer: EF34."}, "ut": {"code": "EF35", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing former self-sourced entitive enforcer: EF35."} } }, "Q6c": { "text": "ta or ut?", "options": { "ta": {"code": "EF36", "type": "end", "result": "The enforcer in question is a targeted all-enforcing current self-sourced entitive enforcer: EF36."}, "ut": {"code": "EF37", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing current self-sourced entitive enforcer: EF37."} } }, "Q6d": { "text": "ta or ut?", "options": { "ta": {"code": "EF38", "type": "end", "result": "The enforcer in question is a targeted some-enforcing current self-sourced entitive enforcer: EF38."}, "ut": {"code": "EF39", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing current self-sourced entitive enforcer: EF39."} } }, "Q6e": { "text": "ta or ut?", "options": { "ta": {"code": "EF40", "type": "end", "result": "The enforcer in question is a targeted all-enforcing former other-sourced entitive enforcer: EF40."}, "ut": {"code": "EF41", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing former other-sourced entitive enforcer: EF41."} } }, "Q6f": { "text": "ta or ut?", "options": { "ta": {"code": "EF42", "type": "end", "result": "The enforcer in question is a targeted some-enforcing former other-sourced entitive enforcer: EF42."}, "ut": {"code": "EF43", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing former other-sourced entitive enforcer: EF43."} } }, "Q6g": { "text": "ta or ut?", "options": { "ta": {"code": "EF44", "type": "end", "result": "The enforcer in question is a targeted all-enforcing current other-sourced entitive enforcer: EF44."}, "ut": {"code": "EF45", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing current other-sourced entitive enforcer: EF45."} } }, "Q6h": { "text": "ta or ut?", "options": { "ta": {"code": "EF46", "type": "end", "result": "The enforcer in question is a targeted some-enforcing current other-sourced entitive enforcer: EF46."}, "ut": {"code": "EF47", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing current other-sourced entitive enforcer: EF47."} } }, "Q6i": { "text": "ta or ut?", "options": { "ta": {"code": "EF48", "type": "end", "result": "The enforcer in question is a targeted all-enforcing former self-sourced non-entitive enforcer: EF48."}, "ut": {"code": "EF49", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing former self-sourced non-entitive enforcer: EF49."} } }, "Q6j": { "text": "ta or ut?", "options": { "ta": {"code": "EF50", "type": "end", "result": "The enforcer in question is a targeted some-enforcing former self-sourced non-entitive enforcer: EF50."}, "ut": {"code": "EF51", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing former self-sourced non-entitive enforcer: EF51."} } }, "Q6k": { "text": "ta or ut?", "options": { "ta": {"code": "EF52", "type": "end", "result": "The enforcer in question is a targeted all-enforcing current self-sourced non-entitive enforcer: EF52."}, "ut": {"code": "EF53", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing current self-sourced non-entitive enforcer: EF53."} } }, "Q6l": { "text": "ta or ut?", "options": { "ta": {"code": "EF54", "type": "end", "result": "The enforcer in question is a targeted some-enforcing current self-sourced non-entitive enforcer: EF54."}, "ut": {"code": "EF55", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing current self-sourced non-entitive enforcer: EF55."} } }, "Q6m": { "text": "ta or ut?", "options": { "ta": {"code": "EF56", "type": "end", "result": "The enforcer in question is a targeted all-enforcing former other-sourced non-entitive enforcer: EF56."}, "ut": {"code": "EF57", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing former other-sourced non-entitive enforcer: EF57."} } }, "Q6n": { "text": "ta or ut?", "options": { "ta": {"code": "EF58", "type": "end", "result": "The enforcer in question is a targeted some-enforcing former other-sourced non-entitive enforcer: EF58."}, "ut": {"code": "EF59", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing former other-sourced non-entitive enforcer: EF59."} } }, "Q6o": { "text": "ta or ut?", "options": { "ta": {"code": "EF60", "type": "end", "result": "The enforcer in question is a targeted all-enforcing current other-sourced non-entitive enforcer: EF60."}, "ut": {"code": "EF61", "type": "end", "result": "The enforcer in question is an untargeted all-enforcing current other-sourced non-entitive enforcer: EF61."} } }, "Q6p": { "text": "ta or ut?", "options": { "ta": {"code": "EF62", "type": "end", "result": "The enforcer in question is a targeted some-enforcing current other-sourced non-entitive enforcer: EF62."}, "ut": {"code": "EF63", "type": "end", "result": "The enforcer in question is an untargeted some-enforcing current other-sourced non-entitive enforcer: EF63."} } } } def means_flowchart(self): return { "Q1": { "text": "me?", "options": { "Yes": {"code": None, "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "np or ph?", "options": { "ph": {"code": "ME02", "type": "end", "result": "The mean in question is a physical mean: ME02."}, "np": {"code": "ME03", "type": "end", "result": "The mean in question is a non-physical mean: ME03."} } } } def repeaters_flowchart(self): return { "Q1": { "text": "rp?", "options": { "Yes": {"code": "RP01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "ml or mf?", "options": { "mf": {"code": "RP03", "type": "question", "next": "Q3b"}, "ml": {"code": "RP02", "type": "question", "next": "Q3a"} } }, "Q3a": { "text": "ta or ut?", "options": { "ta": {"code": "RP04", "type": "end", "result": "The repeater in question is a targeted mindless repeater: RP04."}, "ut": {"code": "RP05", "type": "end", "result": "The repeater in question is an untargeted mindless repeater: RP05."} } }, "Q3b": { "text": "ta or ut?", "options": { "ta": {"code": "RP06", "type": "end", "result": "The repeater in question is a targeted mindful repeater: RP06."}, "ut": {"code": "RP07", "type": "end", "result": "The repeater in question is an untargeted mindful repeater: RP07."} } } } def rejecters_flowchart(self): return { "Q1": { "text": "re?", "options": { "Yes": {"code": "RE01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "pr or co?", "options": { "co": {"code": "RE03", "type": "question", "next": "Q3a"}, "pr": {"code": "RE02", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ss or os?", "options": { "ss": {"code": "RE06", "type": "question", "next": "Q4a"}, "os": {"code": "RE07", "type": "question", "next": "Q4b"} } }, "Q3b": { "text": "ss or os?", "options": { "ss": {"code": "RE04", "type": "question", "next": "Q4c"}, "os": {"code": "RE05", "type": "question", "next": "Q4d"} } }, "Q4a": { "text": "ta or ut?", "options": { "ta": {"code": "RE08", "type": "end", "result": "The rejecter in question is a targeted self-sourced partial rejecter: RE08."}, "ut": {"code": "RE09", "type": "end", "result": "The rejecter in question is an untargeted self-sourced partial rejecter: RE09."} } }, "Q4b": { "text": "ta or ut?", "options": { "ta": {"code": "RE10", "type": "end", "result": "The rejecter in question is a targeted other-sourced partial rejecter: RE10."}, "ut": {"code": "RE11", "type": "end", "result": "The rejecter in question is an untargeted other-sourced partial rejecter: RE11."} } }, "Q4c": { "text": "ta or ut?", "options": { "ta": {"code": "RE12", "type": "end", "result": "The rejecter in question is a targeted self-sourced complete rejecter: RE12."}, "ut": {"code": "RE13", "type": "end", "result": "The rejecter in question is an untargeted self-sourced complete rejecter: RE13."} } }, "Q4d": { "text": "ta or ut?", "options": { "ta": {"code": "RE14", "type": "end", "result": "The rejecter in question is a targeted other-sourced complete rejecter: RE14."}, "ut": {"code": "RE15", "type": "end", "result": "The rejecter in question is an untargeted other-sourced complete rejecter: RE15."} } } } def accepters_flowchart(self): return { "Q1": { "text": "ac?", "options": { "Yes": {"code": "AC01", "type": "question", "next": "Q2"}, "No": {"code": None, "type": "end", "next": None} } }, "Q2": { "text": "pa or ac?", "options": { "ac": {"code": "AC03", "type": "question", "next": "Q3a"}, "pa": {"code": "AC02", "type": "question", "next": "Q3b"} } }, "Q3a": { "text": "ss or os?", "options": { "ss": {"code": "AC06", "type": "question", "next": "Q4a"}, "os": {"code": "AC07", "type": "question", "next": "Q4b"} } }, "Q3b": { "text": "ss or os?", "options": { "ss": {"code": "AC04", "type": "question", "next": "Q4c"}, "os": {"code": "AC05", "type": "question", "next": "Q4d"} } }, "Q4a": { "text": "ta or ut?", "options": { "ta": {"code": "AC08", "type": "end", "result": "The accepter in question is a targeted self-sourced passive accepter: AC08."}, "ut": {"code": "AC09", "type": "end", "result": "The accepter in question is an untargeted self-sourced passive accepter: AC09."} } }, "Q4b": { "text": "ta or ut?", "options": { "ta": {"code": "AC10", "type": "end", "result": "The accepter in question is a targeted passive other-sourced accepter: AC10."}, "ut": {"code": "AC11", "type": "end", "result": "The accepter in question is an untargeted other-sourced passive accepter: AC11."} } }, "Q4c": { "text": "ta or ut?", "options": { "ta": {"code": "AC12", "type": "end", "result": "The accepter in question is a targeted self-sourced active accepter: AC12."}, "ut": {"code": "AC13", "type": "end", "result": "The accepter in question is an untargeted self-sourced active accepter: AC13."} } }, "Q4d": { "text": "ta or ut?", "options": { "ta": {"code": "AC14", "type": "end", "result": "The accepter in question is a targeted other-sourced active accepter: AC14."}, "ut": {"code": "AC15", "type": "end", "result": "The accepter in question is an untargeted other-sourced active accepter: AC15."} } } } if __name__ == "__main__": root = tk.Tk() app = MoralithicBasecategorizer(root) root.mainloop()