Skip to content

Instantly share code, notes, and snippets.

@davidshinn
Last active August 29, 2015 14:21
Show Gist options
  • Save davidshinn/1eef5ae0573a8470cec4 to your computer and use it in GitHub Desktop.
Save davidshinn/1eef5ae0573a8470cec4 to your computer and use it in GitHub Desktop.
KBAI: Inspect Objects
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Visually inspect KBAI ProblemSet and Ravens objects"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This code provides a function that recursively inspects any object\n",
"and will replace any of the custom objects defined in the KBAI project files\n",
"with dicts and their related values, to ease inspection"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from pprint import pprint"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from ProblemSet import ProblemSet\n",
"from RavensFigure import RavensFigure\n",
"from RavensObject import RavensObject\n",
"from RavensProblem import RavensProblem"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"def get_attributes_recursively(obj):\n",
" \"\"\"Returns recursively all objects under obj with the KBAI defined objects\n",
" replaced with a dict of key, value pairs.\n",
" \"\"\"\n",
" if isinstance(obj, (ProblemSet, RavensFigure, RavensObject, RavensProblem)):\n",
" return {attribute: get_attributes_recursively(item) for attribute, item in obj.__dict__.iteritems()}\n",
" elif isinstance(obj, list):\n",
" return [get_attributes_recursively(obj_item) for obj_item in obj]\n",
" elif isinstance(obj, dict):\n",
" return {key: get_attributes_recursively(obj[key]) for key in obj}\n",
" else:\n",
" return obj"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Show a whole problem set"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'name': 'Basic Problems B',\n",
" 'problems': [{'answerReceived': False,\n",
" 'correctAnswer': 2,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'fill': 'yes',\n",
" 'shape': 'pentagon',\n",
" 'size': 'very large'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'fill': 'yes',\n",
" 'shape': 'triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'fill': 'yes',\n",
" 'shape': 'star',\n",
" 'size': 'very large'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'fill': 'yes',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-01\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-01',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 5,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'g': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'g'},\n",
" 'h': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'inside': 'g',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'i': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'i'},\n",
" 'j': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'inside': 'i',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'j'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'k': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'k'},\n",
" 'l': {'attributes': {'fill': 'yes',\n",
" 'inside': 'k',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'l'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'m': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'm'},\n",
" 'n': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'm',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'n'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'o': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'o'},\n",
" 'p': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'o',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'p'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'f': {'attributes': {'fill': 'yes',\n",
" 'inside': 'q',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'f'},\n",
" 'q': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'q'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'a'},\n",
" 'b': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'a',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'c': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'c'},\n",
" 'd': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'c',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'e': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'e'},\n",
" 'f': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'e',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-02',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 1,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'angle': '180',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'angle': '0',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'angle': '270',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-03\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-03',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 3,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'angle': '135',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'angle': '225',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'angle': '315',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'angle': '180',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'angle': '90',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'angle': '135',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'angle': '315',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-04\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-04',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 4,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'alignment': 'bottom-left',\n",
" 'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'alignment': 'bottom-left',\n",
" 'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'alignment': 'bottom-right',\n",
" 'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'alignment': 'top-left',\n",
" 'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'alignment': 'top-left',\n",
" 'angle': '90',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'alignment': 'top-right',\n",
" 'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'alignment': 'bottom-right',\n",
" 'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'alignment': 'bottom-left',\n",
" 'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'alignment': 'top-right',\n",
" 'angle': '180',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-05\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-05',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 5,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'g': {'attributes': {'above': 'h',\n",
" 'angle': '90',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'g'},\n",
" 'h': {'attributes': {'angle': '270',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'i': {'attributes': {'above': 'j',\n",
" 'angle': '90',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'i'},\n",
" 'j': {'attributes': {'angle': '270',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'j'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'k': {'attributes': {'above': 'l',\n",
" 'angle': '90',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'k'},\n",
" 'l': {'attributes': {'angle': '270',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'l'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'m': {'attributes': {'above': 'n',\n",
" 'angle': '180',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'm'},\n",
" 'n': {'attributes': {'angle': '0',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'n'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'o': {'attributes': {'above': 'p',\n",
" 'angle': '180',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'o'},\n",
" 'p': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'p'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'q': {'attributes': {'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'huge'},\n",
" 'name': 'q'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'above': 'b',\n",
" 'angle': '90',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'a'},\n",
" 'b': {'attributes': {'angle': '270',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'c': {'attributes': {'above': 'd',\n",
" 'angle': '90',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'c'},\n",
" 'd': {'attributes': {'angle': '90',\n",
" 'fill': 'yes',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'e': {'attributes': {'above': 'f',\n",
" 'angle': '180',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'e'},\n",
" 'f': {'attributes': {'angle': '0',\n",
" 'fill': 'no',\n",
" 'shape': 'right triangle',\n",
" 'size': 'huge'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-06\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-06',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 6,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'angle': '135',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'angle': '225',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'angle': '315',\n",
" 'fill': 'no',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'angle': '135',\n",
" 'fill': 'no',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'angle': '225',\n",
" 'fill': 'no',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'angle': '135',\n",
" 'fill': 'yes',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'angle': '315',\n",
" 'fill': 'no',\n",
" 'shape': 'pac-man',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-07\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-07',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 6,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'fill': 'left-half',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'fill': 'left-half',\n",
" 'shape': 'square',\n",
" 'size': 'huge'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'fill': 'right-half',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'fill': 'top-half',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'fill': 'bottom-half',\n",
" 'shape': 'square',\n",
" 'size': 'huge'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'fill': 'right-half',\n",
" 'shape': 'square',\n",
" 'size': 'huge'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'right-half',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'fill': 'right-half',\n",
" 'shape': 'square',\n",
" 'size': 'huge'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'fill': 'right-half',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-08\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-08',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 5,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'d': {'attributes': {'fill': 'yes',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'e': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'f': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'g': {'attributes': {'fill': 'yes',\n",
" 'shape': 'diamond',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'h': {'attributes': {'fill': 'yes',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'i': {'attributes': {'fill': 'no',\n",
" 'shape': 'diamond',\n",
" 'size': 'very large'},\n",
" 'name': 'i'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'a'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'b': {'attributes': {'fill': 'yes',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'c': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-09\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-09',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 3,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'g': {'attributes': {'fill': 'no',\n",
" 'inside': 'h',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'g'},\n",
" 'h': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'h'},\n",
" 't': {'attributes': {'fill': 'no',\n",
" 'inside': 'h,g',\n",
" 'shape': 'square',\n",
" 'size': 'medium'},\n",
" 'name': 't'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'i': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'i'},\n",
" 'j': {'attributes': {'fill': 'yes',\n",
" 'inside': 'i',\n",
" 'shape': 'square',\n",
" 'size': 'very small'},\n",
" 'name': 'j'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'k': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'k'},\n",
" 'l': {'attributes': {'fill': 'no',\n",
" 'inside': 'k',\n",
" 'shape': 'square',\n",
" 'size': 'medium'},\n",
" 'name': 'l'},\n",
" 'u': {'attributes': {'fill': 'yes',\n",
" 'inside': 'k,l',\n",
" 'shape': 'square',\n",
" 'size': 'very small'},\n",
" 'name': 'u'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'m': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'medium'},\n",
" 'name': 'm'},\n",
" 'n': {'attributes': {'fill': 'yes',\n",
" 'inside': 'm',\n",
" 'shape': 'square',\n",
" 'size': 'very small'},\n",
" 'name': 'n'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'o': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'o'},\n",
" 'p': {'attributes': {'fill': 'no',\n",
" 'inside': 'o',\n",
" 'shape': 'square',\n",
" 'size': 'medium'},\n",
" 'name': 'p'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'q': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'q'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'no',\n",
" 'inside': 'b',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'a'},\n",
" 'b': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'c': {'attributes': {'fill': 'no',\n",
" 'inside': 'd',\n",
" 'shape': 'square',\n",
" 'size': 'medium'},\n",
" 'name': 'c'},\n",
" 'd': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'e': {'attributes': {'fill': 'no',\n",
" 'inside': 'f',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'e'},\n",
" 'f': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'f'},\n",
" 's': {'attributes': {'fill': 'yes',\n",
" 'inside': 'f,e',\n",
" 'shape': 'square',\n",
" 'size': 'very small'},\n",
" 'name': 's'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-10\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-10',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 1,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'g': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'g'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'i': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'i'},\n",
" 'j': {'attributes': {'fill': 'yes',\n",
" 'inside': 'i',\n",
" 'shape': 'diamond',\n",
" 'size': 'very small'},\n",
" 'name': 'j'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'k': {'attributes': {'fill': 'no',\n",
" 'overlaps': 'l',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'k'},\n",
" 'l': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'l'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'m': {'attributes': {'fill': 'no',\n",
" 'overlaps': 'r',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'm'},\n",
" 'n': {'attributes': {'fill': 'yes',\n",
" 'inside': 'm,r',\n",
" 'shape': 'diamond',\n",
" 'size': 'very small'},\n",
" 'name': 'n'},\n",
" 'r': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'r'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'o': {'attributes': {'fill': 'no',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'o'},\n",
" 'p': {'attributes': {'fill': 'yes',\n",
" 'inside': 'o',\n",
" 'shape': 'diamond',\n",
" 'size': 'very small'},\n",
" 'name': 'p'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'q': {'attributes': {'fill': 'no',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'q'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'no',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'a'},\n",
" 'b': {'attributes': {'fill': 'yes',\n",
" 'inside': 'a',\n",
" 'shape': 'diamond',\n",
" 'size': 'very small'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'c': {'attributes': {'fill': 'no',\n",
" 'shape': 'heart',\n",
" 'size': 'very large'},\n",
" 'name': 'c'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'e': {'attributes': {'fill': 'no',\n",
" 'shape': 'octagon',\n",
" 'size': 'very large'},\n",
" 'name': 'e'},\n",
" 'f': {'attributes': {'fill': 'yes',\n",
" 'inside': 'e',\n",
" 'shape': 'diamond',\n",
" 'size': 'very small'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-11\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-11',\n",
" 'problemType': '2x2'},\n",
" {'answerReceived': False,\n",
" 'correctAnswer': 1,\n",
" 'figures': {'1': {'name': '1',\n",
" 'objects': {'l': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'l'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'m': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'm'},\n",
" 'n': {'attributes': {'fill': 'no',\n",
" 'inside': 'm',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'n'},\n",
" 'o': {'attributes': {'fill': 'no',\n",
" 'inside': 'm,n',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'o'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'p': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'p'},\n",
" 'q': {'attributes': {'fill': 'no',\n",
" 'inside': 'p',\n",
" 'shape': 'circle',\n",
" 'size': 'medium'},\n",
" 'name': 'q'},\n",
" 'r': {'attributes': {'fill': 'no',\n",
" 'inside': 'p,q',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'r'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'s': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 's'},\n",
" 't': {'attributes': {'fill': 'no',\n",
" 'inside': 's',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 't'},\n",
" 'u': {'attributes': {'fill': 'no',\n",
" 'inside': 's,t',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'u'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'v': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'v'},\n",
" 'w': {'attributes': {'fill': 'no',\n",
" 'inside': 'v',\n",
" 'shape': 'circle',\n",
" 'size': 'medium'},\n",
" 'name': 'w'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'1': {'attributes': {'fill': 'no',\n",
" 'inside': 'x,y,z',\n",
" 'shape': 'circle',\n",
" 'size': 'medium'},\n",
" 'name': '1'},\n",
" '2': {'attributes': {'fill': 'no',\n",
" 'inside': 'x,y,z,1',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': '2'},\n",
" 'x': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'x'},\n",
" 'y': {'attributes': {'fill': 'no',\n",
" 'inside': 'x',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'y'},\n",
" 'z': {'attributes': {'fill': 'no',\n",
" 'inside': 'x,y',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'z'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'a'},\n",
" 'b': {'attributes': {'fill': 'no',\n",
" 'inside': 'a',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'b'},\n",
" 'c': {'attributes': {'fill': 'no',\n",
" 'inside': 'a,b',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'c'},\n",
" 'd': {'attributes': {'fill': 'no',\n",
" 'inside': 'a,b,c',\n",
" 'shape': 'circle',\n",
" 'size': 'medium'},\n",
" 'name': 'd'},\n",
" 'e': {'attributes': {'fill': 'no',\n",
" 'inside': 'a,b,c,d',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'e'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'f': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'f'},\n",
" 'g': {'attributes': {'fill': 'no',\n",
" 'inside': 'f',\n",
" 'shape': 'circle',\n",
" 'size': 'medium'},\n",
" 'name': 'g'},\n",
" 'h': {'attributes': {'fill': 'no',\n",
" 'inside': 'f,g',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'i': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'huge'},\n",
" 'name': 'i'},\n",
" 'j': {'attributes': {'fill': 'no',\n",
" 'inside': 'i',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'j'},\n",
" 'k': {'attributes': {'fill': 'no',\n",
" 'inside': 'i,j',\n",
" 'shape': 'circle',\n",
" 'size': 'large'},\n",
" 'name': 'k'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-12\\\\C.PNG'}},\n",
" 'givenAnswer': -1,\n",
" 'hasVerbal': True,\n",
" 'hasVisual': True,\n",
" 'name': 'Basic Problem B-12',\n",
" 'problemType': '2x2'}]}\n"
]
}
],
"source": [
"pprint(get_attributes_recursively(ProblemSet('Basic Problems B')))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Show the figures attribute in one problem "
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'1': {'name': '1',\n",
" 'objects': {'g': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'g'},\n",
" 'h': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'inside': 'g',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'h'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\1.PNG'},\n",
" '2': {'name': '2',\n",
" 'objects': {'i': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'i'},\n",
" 'j': {'attributes': {'angle': '45',\n",
" 'fill': 'yes',\n",
" 'inside': 'i',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'j'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\2.PNG'},\n",
" '3': {'name': '3',\n",
" 'objects': {'k': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'k'},\n",
" 'l': {'attributes': {'fill': 'yes',\n",
" 'inside': 'k',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'l'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\3.PNG'},\n",
" '4': {'name': '4',\n",
" 'objects': {'m': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'm'},\n",
" 'n': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'm',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'n'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\4.PNG'},\n",
" '5': {'name': '5',\n",
" 'objects': {'o': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'o'},\n",
" 'p': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'o',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'p'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\5.PNG'},\n",
" '6': {'name': '6',\n",
" 'objects': {'f': {'attributes': {'fill': 'yes',\n",
" 'inside': 'q',\n",
" 'shape': 'circle',\n",
" 'size': 'small'},\n",
" 'name': 'f'},\n",
" 'q': {'attributes': {'fill': 'no',\n",
" 'shape': 'square',\n",
" 'size': 'very large'},\n",
" 'name': 'q'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\6.PNG'},\n",
" 'A': {'name': 'A',\n",
" 'objects': {'a': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'a'},\n",
" 'b': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'a',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'b'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\A.PNG'},\n",
" 'B': {'name': 'B',\n",
" 'objects': {'c': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'c'},\n",
" 'd': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'c',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'd'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\B.PNG'},\n",
" 'C': {'name': 'C',\n",
" 'objects': {'e': {'attributes': {'fill': 'no',\n",
" 'shape': 'circle',\n",
" 'size': 'very large'},\n",
" 'name': 'e'},\n",
" 'f': {'attributes': {'angle': '0',\n",
" 'fill': 'yes',\n",
" 'inside': 'e',\n",
" 'shape': 'plus',\n",
" 'size': 'small'},\n",
" 'name': 'f'}},\n",
" 'visualFilename': 'Problems\\\\Basic Problems B\\\\Basic Problem B-02\\\\C.PNG'}}\n"
]
}
],
"source": [
"pprint(get_attributes_recursively(ProblemSet('Basic Problems B').problems[1].figures))"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.8"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment