code: def create_tags_from_dict(cls, tag_dict):
          
          tag_list_common = []
          tag_list_misconception = []
          tag_list_organisational = []
          for tag in tag_dict:
              try:
                  id = tag_dict[tag]["id"]
                  name = tag_dict[tag]["name"]
                  visible = tag_dict[tag]["visible"]
                  description = tag_dict[tag]["description"]
                  type = tag_dict[tag]["type"]
                  
                  if type == 2:
                      tag_list_organisational.insert(int(tag), Tag(id, name, description, visible, type))
                  elif type == 1:
                      tag_list_misconception.insert(int(tag), Tag(id, name, description, visible, type))
                  else:
                      tag_list_common.insert(int(tag), Tag(id, name, description, visible, type))
              except KeyError:
                  pass
          return tag_list_common, tag_list_misconception, tag_list_organisational
docs: Build a tuple of list of Tag objects based on the tag_dict.
              The tuple contains 3 lists.
              - The first list contains skill tags
              - The second list contains misconception tags
              - The third list contains category tags