OSDN Git Service

add peta model_manifest
[pettanr/pettanr.git] / public / manifest.json
index 1cafc04..95be46c 100644 (file)
@@ -5,7 +5,7 @@
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_author": {\r
           }\r
         },\r
         "show": {\r
-          "type": "show",\r
-          "name": "show"\r
+          "type": "show"\r
         },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_author": {\r
         },\r
         "count_by_panel": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
@@ -43,7 +48,7 @@
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_panel": {\r
         "by_scroll": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_panel": {\r
         },\r
         "count_by_scroll": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_author": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_author": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_comic": {\r
             "list_name": "play"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_author": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_story": {\r
         "by_sheet": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_story": {\r
         },\r
         "count_by_sheet": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_story": {\r
             "list_name": "play"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_story": {\r
         },\r
         "count_by_author": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_sheet": {\r
         "by_panel": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_sheet": {\r
         },\r
         "count_by_panel": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_scroll": {\r
         "by_speech_balloon_template": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_scroll": {\r
         },\r
         "count_by_speech_balloon_template": {\r
           "type": "count"\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_panel": {\r
         "by_author": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_panel": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_panel": {\r
         "by_author": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_panel": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_writing_format": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_writing_format": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         }\r
       }\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_panel": {\r
         "by_author": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_panel": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_panel": {\r
         "by_author": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_panel": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         }\r
       }\r
     },\r
-    "pictures": {},\r
+    "pictures": {\r
+      "actions": {\r
+        "show": {\r
+          "type": "show"\r
+        }\r
+      }\r
+    },\r
     "resource_pictures": {\r
       "actions": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
+        "by_original_picture": {\r
+          "type": "list"\r
+        },\r
         "by_license": {\r
           "type": "list"\r
         },\r
         "by_artist": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_license": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         }\r
       }\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_system_picture": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_system_picture": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         }\r
       }\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "by_license_group": {\r
         "by_system_picture": {\r
           "type": "list"\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "count_by_license_group": {\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "scrolls": {\r
             "list_name": "ground_colors"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
         "resource_pictures": {\r
             "list_name": "resource_pictures"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
+        },\r
+        "new": {\r
+          "type": "new"\r
+        },\r
+        "edit": {\r
+          "type": "edit"\r
         }\r
       }\r
     },\r
         "index": {\r
           "type": "list",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         },\r
+        "show": {\r
+          "type": "show"\r
+        },\r
         "count": {\r
           "type": "count",\r
           "args": {\r
-            "list_name": "public_list"\r
+            "list_name": "public"\r
           }\r
         }\r
       }\r
           "type": "list",\r
           "args": {\r
             "item_name": "scroll",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "scroll_panels": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "scroll_panel",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "comics": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "comic",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "stories": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "story",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "story_sheets": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "story_sheet",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "sheets": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "sheet",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "sheet_panels": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "sheet_panel",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "panels": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "panel",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "panel_pictures": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "panel_picture",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "speech_balloons": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "speech_balloon",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "speeches": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "speech",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "balloons": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "balloon",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "ground_pictures": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "ground_picture",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "ground_colors": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "ground_color",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "original_pictures": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "original_picture",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         },\r
         "resource_pictures": {\r
           "type": "list",\r
           "args": {\r
             "item_name": "resource_picture",\r
-            "list_name": "private_list"\r
+            "list_name": "private"\r
           }\r
         }\r
       }\r
   },\r
   "models": {\r
     "scroll": {\r
-      "class_name": "Scroll",\r
-      "table_name": "scrolls",\r
       "associations": {\r
         "belongs_to": {\r
-          "author": {\r
-            "id_column": "author_id"\r
-          }\r
+          "author": {}\r
         },\r
         "has_many": {\r
-          "scroll_panels": {\r
-            "foreign_key": "scroll_id",\r
-            "model_name": "scroll_panel"\r
-          },\r
+          "scroll_panels": {},\r
           "panels": {\r
-            "through": "scroll_panel",\r
-            "foreign_key": "scroll_id",\r
-            "model_name": "panel"\r
+            "through": "scroll_panel"\r
           }\r
         }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "title": {\r
           "type": "text",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_author": {\r
           "type": "filter",\r
-          "args": {\r
-            "filter_item_name": "author",\r
-            "filter_key": "author_id"\r
-          }\r
+          "args": {}\r
         },\r
         "by_panel": {\r
-          "type": "through_filter"\r
+          "type": "through_filter",\r
+          "args": {\r
+            "through": "scroll_panels"\r
+          }\r
         },\r
         "play": {\r
-          "type": "play"\r
+          "type": "play",\r
+          "args": {\r
+            "filter_item_name": "scroll",\r
+            "filter_model_name": "scroll_panel",\r
+            "filter_key": "scroll_id"\r
+          }\r
         }\r
       }\r
     },\r
     "scroll_panel": {\r
-      "class_name": "ScrollPanel",\r
-      "table_name": "scroll_panels",\r
       "associations": {\r
         "belongs_to": {\r
-          "panel": {\r
-            "id_column": "panel_id"\r
-          },\r
-          "scroll": {\r
-            "id_column": "scroll_id"\r
-          }\r
+          "panel": {},\r
+          "scroll": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "scroll_id": {\r
           "type": "number",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "scroll"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_scroll": {\r
       }\r
     },\r
     "comic": {\r
-      "class_name": "Comic",\r
-      "table_name": "comics",\r
       "associations": {\r
         "belongs_to": {\r
-          "author": {\r
-            "id_column": "author_id"\r
-          }\r
+          "author": {}\r
         },\r
         "has_many": {\r
-          "stories": {\r
-            "foreign_key": "comic_id",\r
-            "model_name": "story"\r
-          }\r
-        },\r
-        "has_many_through": {}\r
+          "stories": {}\r
+        }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "title": {\r
           "type": "text",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_author": {\r
       }\r
     },\r
     "story": {\r
-      "class_name": "Story",\r
-      "table_name": "stories",\r
       "associations": {\r
         "belongs_to": {\r
-          "comic": {\r
-            "id_column": "comic_id"\r
-          }\r
+          "comic": {}\r
         },\r
         "has_many": {\r
-          "story_sheets": {\r
-            "foreign_key": "story_id",\r
-            "model_name": "story_sheet"\r
-          },\r
+          "story_sheets": {},\r
           "sheets": {\r
-            "through": "story_sheets",\r
-            "foreign_key": "story_id",\r
-            "model_name": "sheet"\r
+            "through": "story_sheets"\r
           }\r
         }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "comic_id": {\r
           "type": "number",\r
           "rules": {\r
               "select_item_name": "story_visible_items"\r
             }\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "comic"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_comic": {\r
           "type": "filter"\r
         },\r
         "by_sheet": {\r
-          "type": "through_filter"\r
+          "type": "through_filter",\r
+          "args": {\r
+            "through": "story_sheets"\r
+          }\r
         },\r
         "by_author": {\r
-          "type": "element_filter"\r
+          "type": "foreign_filter"\r
         },\r
         "play": {\r
           "type": "play"\r
       }\r
     },\r
     "story_sheet": {\r
-      "class_name": "StorySheet",\r
-      "table_name": "story_sheets",\r
       "associations": {\r
         "belongs_to": {\r
-          "story": {\r
-            "id_column": "story_id"\r
-          },\r
-          "sheet": {\r
-            "id_column": "sheet_id"\r
-          }\r
+          "story": {},\r
+          "sheet": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "story_id": {\r
           "type": "number",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "story"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_story": {\r
       }\r
     },\r
     "sheet": {\r
-      "class_name": "Sheet",\r
-      "table_name": "sheets",\r
       "associations": {\r
         "belongs_to": {\r
-          "author": {\r
-            "id_column": "author_id"\r
-          }\r
+          "author": {}\r
         },\r
         "has_many": {\r
-          "story_sheets": {\r
-            "foreign_key": "story_id",\r
-            "model_name": "story_sheet"\r
-          },\r
+          "story_sheets": {},\r
           "stories": {\r
-            "through": "story_sheets",\r
-            "foreign_key": "sheet_id",\r
-            "model_name": "story"\r
-          },\r
-          "sheet_panels": {\r
-            "foreign_key": "sheet_id",\r
-            "model_name": "sheet_panel"\r
+            "through": "story_sheets"\r
           },\r
+          "sheet_panels": {},\r
           "panels": {\r
-            "through": "sheet_panels",\r
-            "foreign_key": "sheet_id",\r
-            "model_name": "panel"\r
+            "through": "sheet_panels"\r
           }\r
         }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "caption": {\r
           "type": "text",\r
           "rules": {}\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_story": {\r
-          "type": "through_filter"\r
+          "type": "through_filter",\r
+          "args": {\r
+            "through": "story_sheets"\r
+          }\r
         },\r
         "by_panel": {\r
-          "type": "through_filter"\r
+          "type": "through_filter",\r
+          "args": {\r
+            "through": "sheet_panels"\r
+          }\r
         },\r
         "by_author": {\r
           "type": "filter"\r
       }\r
     },\r
     "sheet_panel": {\r
-      "class_name": "SheetPanel",\r
-      "table_name": "sheet_panels",\r
       "associations": {\r
         "belongs_to": {\r
-          "sheet": {\r
-            "id_column": "sheet_id"\r
-          },\r
-          "panel": {\r
-            "id_column": "panel_id"\r
-          }\r
+          "sheet": {},\r
+          "panel": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "sheet_id": {\r
           "type": "number",\r
           "rules": {\r
           "rules": {\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "sheet"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_sheet": {\r
       }\r
     },\r
     "panel": {\r
-      "class_name": "Panel",\r
-      "table_name": "panels",\r
+      "peta": {\r
+        "type": "root",\r
+        "args": {\r
+          "element_tree_name": "panel"\r
+        }\r
+      },\r
       "associations": {\r
         "belongs_to": {\r
-          "author": {\r
-            "id_column": "author_id"\r
-          }\r
+          "author": {}\r
         },\r
         "has_many": {\r
-          "scroll_panels": {\r
-            "foreign_key": "panel_id",\r
-            "model_name": "scroll_panel"\r
-          },\r
+          "scroll_panels": {},\r
           "scrolls": {\r
-            "through": "scroll_panels",\r
-            "foreign_key": "panel_id",\r
-            "model_name": "scroll"\r
-          },\r
-          "sheet_panels": {\r
-            "foreign_key": "panel_id",\r
-            "model_name": "sheet_panel"\r
+            "through": "scroll_panels"\r
           },\r
+          "sheet_panels": {},\r
           "sheets": {\r
-            "through": "sheet_panels",\r
-            "foreign_key": "panel_id",\r
-            "model_name": "sheet"\r
-          },\r
-          "panel_pictures": {\r
-            "foreign_key": "panel_id",\r
-            "model_name": "panel_picture"\r
-          },\r
-          "speech_balloons": {\r
-            "foreign_key": "panel_id",\r
-            "model_name": "speech_balloon"\r
+            "through": "sheet_panels"\r
           },\r
-          "ground_pictures": {\r
-            "foreign_key": "panel_id",\r
-            "model_name": "ground_picture"\r
-          },\r
-          "ground_colors": {\r
-            "foreign_key": "panel_id",\r
-            "model_name": "ground_color"\r
-          }\r
+          "panel_pictures": {},\r
+          "speech_balloons": {},\r
+          "ground_pictures": {},\r
+          "ground_colors": {}\r
         }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "width": {\r
           "type": "number",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_scroll": {\r
-          "type": "through_filter"\r
+          "type": "through_filter",\r
+          "args": {\r
+            "through": "scroll_panels"\r
+          }\r
         },\r
         "by_sheet": {\r
-          "type": "through_filter"\r
+          "type": "through_filter",\r
+          "args": {\r
+            "through": "sheet_panels"\r
+          }\r
         },\r
         "by_author": {\r
           "type": "filter"\r
       }\r
     },\r
     "panel_picture": {\r
-      "class_name": "PanelPicture",\r
-      "table_name": "panel_pictures",\r
       "associations": {\r
         "belongs_to": {\r
-          "panel": {\r
-            "id_column": "panel_id"\r
-          }\r
+          "panel": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "panel_id": {\r
           "type": "number",\r
           "rules": {\r
             "number": true,\r
             "min": 0\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "panel",\r
+        "panel": "panel"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_panel": {\r
           "type": "filter"\r
         },\r
         "by_author": {\r
-          "type": "element_filter"\r
+          "type": "foreign_filter"\r
         }\r
       }\r
     },\r
     "speech_balloon": {\r
-      "class_name": "SpeechBalloon",\r
-      "table_name": "speech_balloons",\r
-      "extend": "classname",\r
+      "extend_column_name": "classname",\r
       "associations": {\r
         "belongs_to": {\r
-          "panel": {\r
-            "id_column": "panel_id"\r
-          }\r
+          "panel": {}\r
         },\r
         "has_many": {},\r
         "has_one": {\r
-          "balloon": {\r
-            "foreign_key": "speech_balloon_id",\r
-            "model_name": "balloon"\r
-          },\r
-          "speech": {\r
-            "foreign_key": "speech_balloon_id",\r
-            "model_name": "speech"\r
-          }\r
+          "balloon": {},\r
+          "speech": {}\r
         }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "panel_id": {\r
           "type": "number",\r
           "rules": {\r
         "caption": {\r
           "type": "text",\r
           "rules": {}\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "panel",\r
+        "panel": "panel"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_panel": {\r
           "type": "filter"\r
         },\r
         "by_author": {\r
-          "type": "element_filter"\r
+          "type": "foreign_filter"\r
         }\r
       }\r
     },\r
     "balloon": {\r
-      "class_name": "Balloon",\r
-      "table_name": "balloons",\r
       "associations": {\r
         "belongs_to": {\r
-          "speech_balloon": {\r
-            "id_column": "speech_balloon_id"\r
-          },\r
-          "system_picture": {\r
-            "id_column": "system_picture_id"\r
-          }\r
+          "speech_balloon": {},\r
+          "system_picture": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "speech_balloon_id": {\r
           "type": "number",\r
           "rules": {\r
         "settings": {\r
           "type": "text",\r
           "rules": {}\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "speech_balloon",\r
+        "panel": "speech_balloon"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_panel": {\r
           "type": "filter"\r
         },\r
         "by_author": {\r
-          "type": "element_filter"\r
+          "type": "foreign_filter"\r
         }\r
       }\r
     },\r
     "speech": {\r
-      "class_name": "Speech",\r
-      "table_name": "speeches",\r
       "associations": {\r
         "belongs_to": {\r
-          "speech_balloon": {\r
-            "id_column": "speech_balloon_id"\r
-          },\r
-          "writing_format": {\r
-            "id_column": "writing_format_id"\r
-          }\r
+          "speech_balloon": {},\r
+          "writing_format": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
+        "speech_balloon_id": {\r
           "type": "number",\r
-          "primary_key": 1,\r
           "rules": {\r
             "number": true\r
           }\r
         },\r
-        "speech_balloon_id": {\r
-          "type": "number",\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
-        "writing_format_id": {\r
+        "writing_format_id": {\r
           "type": "number",\r
           "source": {\r
             "type": "model"\r
         "settings": {\r
           "type": "text",\r
           "rules": {}\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "speech_balloon",\r
+        "panel": "speech_balloon"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
         "by_speech_balloon": {\r
       }\r
     },\r
     "ground_picture": {\r
-      "class_name": "GroundPicture",\r
-      "table_name": "ground_pictures",\r
       "associations": {\r
         "belongs_to": {\r
-          "panel": {\r
-            "id_column": "panel_id"\r
-          }\r
+          "panel": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "panel_id": {\r
           "type": "number",\r
           "rules": {\r
             "number": true,\r
             "min": 0\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "panel",\r
+        "panel": "panel"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_panel": {\r
           "type": "filter"\r
         },\r
         "by_author": {\r
-          "type": "element_filter"\r
+          "type": "foreign_filter"\r
         }\r
       }\r
     },\r
     "ground_color": {\r
-      "class_name": "GroundColor",\r
-      "table_name": "ground_colors",\r
       "associations": {\r
         "belongs_to": {\r
-          "panel": {\r
-            "id_column": "panel_id"\r
-          }\r
+          "panel": {}\r
         },\r
         "has_many": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "panel_id": {\r
           "type": "number",\r
           "rules": {\r
             "number": true,\r
             "min": 0\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
+      "tree": {\r
+        "owner": "panel",\r
+        "panel": "panel"\r
+      },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
         "by_panel": {\r
           "type": "filter"\r
         },\r
         "by_author": {\r
-          "type": "element_filter"\r
+          "type": "foreign_filter"\r
         }\r
       }\r
     },\r
     "original_picture": {\r
-      "class_name": "OriginalPicture",\r
-      "table_name": "original_pictures",\r
       "associations": {\r
         "belongs_to": {\r
-          "artist": {\r
-            "id_column": "artist_id"\r
-          }\r
+          "artist": {}\r
         },\r
         "has_many": {\r
-          "pictures": {\r
-            "foreign_key": "original_picture_id",\r
-            "model_name": "picture"\r
-          }\r
+          "pictures": {}\r
         },\r
         "has_one": {\r
-          "resource_picture": {\r
-            "foreign_key": "original_picture_id",\r
-            "model_name": "resource_picture"\r
-          }\r
+          "resource_picture": {}\r
         }\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "ext": {\r
           "type": "text",\r
           "rules": {\r
         },\r
         "stopped_at": {\r
           "type": "datetime"\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         }\r
       }\r
     },\r
     "picture": {\r
-      "class_name": "Picture",\r
-      "table_name": "pictures",\r
       "associations": {\r
         "belongs_to": {\r
-          "license": {\r
-            "id_column": "license_id"\r
-          },\r
-          "artist": {\r
-            "id_column": "artist_id"\r
-          }\r
+          "license": {},\r
+          "artist": {}\r
         },\r
         "has_many": {},\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "original_picture_id": {\r
           "type": "number",\r
           "rules": {\r
           "rules": {\r
             "required": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       }\r
     },\r
     "resource_picture": {\r
-      "class_name": "ResourcePicture",\r
-      "table_name": "resource_pictures",\r
       "associations": {\r
         "belongs_to": {\r
-          "original_picture": {\r
-            "id_column": "original_picture_id"\r
-          },\r
-          "license": {\r
-            "id_column": "license_id"\r
-          },\r
-          "artist": {\r
-            "id_column": "artist_id"\r
-          }\r
+          "original_picture": {},\r
+          "license": {},\r
+          "artist": {}\r
         },\r
         "has_many": {},\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "original_picture_id": {\r
           "type": "number",\r
           "rules": {\r
           "rules": {\r
             "required": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
-        "private_list": {\r
+        "private": {\r
           "type": "private"\r
         },\r
+        "by_original_picture": {\r
+          "type": "filter"\r
+        },\r
         "by_license": {\r
           "type": "filter"\r
         },\r
       }\r
     },\r
     "speech_balloon_template": {\r
-      "class_name": "SpeechBalloonTemplate",\r
-      "table_name": "speech_balloon_templates",\r
+      "extend_column_name": "classname",\r
       "associations": {\r
         "belongs_to": {\r
-          "system_picture": {\r
-            "id_column": "system_picture_id"\r
-          }\r
+          "system_picture": {}\r
         },\r
         "has_many": {\r
-          "speech_balloons": {\r
-            "foreign_key": "speech_balloon_template_id",\r
-            "model_name": "speech_balloon"\r
-          },\r
+          "speech_balloons": {},\r
           "panels": {\r
-            "through": "speech_balloons",\r
-            "foreign_key": "speech_balloon_template_id",\r
-            "model_name": "panel"\r
+            "through": "speech_balloons"\r
           }\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "name": {\r
           "type": "text",\r
           "rules": {\r
           "rules": {\r
             "required": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
         "select_items": {\r
       }\r
     },\r
     "writing_format": {\r
-      "class_name": "WritingFormat",\r
-      "table_name": "writing_formats",\r
+      "extend_column_name": "classname",\r
       "associations": {\r
         "belongs_to": {\r
-          "system_picture": {\r
-            "id_column": "system_picture_id"\r
-          }\r
+          "system_picture": {}\r
         },\r
         "has_many": {\r
-          "speeches": {\r
-            "foreign_key": "writing_format_id",\r
-            "model_name": "speech"\r
-          }\r
+          "speeches": {}\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "name": {\r
           "type": "text",\r
           "rules": {\r
           "rules": {\r
             "required": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
         "select_items": {\r
       }\r
     },\r
     "license_group": {\r
-      "class_name": "LicenseGroup",\r
-      "table_name": "license_groups",\r
+      "extend_column_name": "classname",\r
       "associations": {\r
         "belongs_to": {},\r
         "has_many": {\r
-          "licenses": {\r
-            "foreign_key": "license_group_id",\r
-            "model_name": "license"\r
-          }\r
+          "licenses": {}\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "name": {\r
           "type": "text",\r
           "rules": {\r
           "rules": {\r
             "required": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
         "select_items": {\r
       }\r
     },\r
     "license": {\r
-      "class_name": "License",\r
-      "table_name": "licenses",\r
       "associations": {\r
         "belongs_to": {\r
-          "license_group": {\r
-            "id_column": "license_group_id"\r
-          },\r
-          "system_picture": {\r
-            "id_column": "system_picture_id"\r
-          }\r
+          "license_group": {},\r
+          "system_picture": {}\r
         },\r
         "has_many": {\r
-          "resource_pictures": {\r
-            "foreign_key": "license_id",\r
-            "model_name": "resource_picture"\r
-          }\r
+          "resource_pictures": {}\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "license_group_id": {\r
           "type": "number",\r
           "rules": {\r
         "credit_pictures": {\r
           "type": "text",\r
           "rules": {}\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         },\r
         "by_license_group": {\r
       }\r
     },\r
     "author": {\r
-      "class_name": "Author",\r
-      "table_name": "authors",\r
       "associations": {\r
         "belongs_to": {},\r
         "has_many": {\r
-          "scrolls": {\r
-            "foreign_key": "author_id",\r
-            "model_name": "scroll"\r
-          },\r
-          "comics": {\r
-            "foreign_key": "author_id",\r
-            "model_name": "comic"\r
-          },\r
-          "stories": {\r
-            "foreign_key": "author_id",\r
-            "model_name": "story"\r
-          },\r
-          "sheets": {\r
-            "foreign_key": "author_id",\r
-            "model_name": "sheet"\r
-          },\r
-          "panels": {\r
-            "foreign_key": "author_id",\r
-            "model_name": "panel"\r
-          }\r
+          "scrolls": {},\r
+          "comics": {},\r
+          "stories": {},\r
+          "sheets": {},\r
+          "panels": {}\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "name": {\r
           "type": "text",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         }\r
       }\r
     },\r
     "artist": {\r
-      "class_name": "Artist",\r
-      "table_name": "artists",\r
       "associations": {\r
         "belongs_to": {},\r
         "has_many": {\r
-          "resource_pictures": {\r
-            "foreign_key": "artist_id",\r
-            "model_name": "resource_picture"\r
-          }\r
+          "resource_pictures": {}\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "name": {\r
           "type": "text",\r
           "rules": {\r
             "required": true,\r
             "number": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         }\r
       }\r
     },\r
     "system_picture": {\r
-      "class_name": "SystemPicture",\r
-      "table_name": "system_pictures",\r
       "associations": {\r
         "belongs_to": {},\r
         "has_many": {\r
-          "balloons": {\r
-            "foreign_key": "system_picture_id",\r
-            "model_name": "balloon"\r
-          },\r
-          "balloon_templates": {\r
-            "foreign_key": "system_picture_id",\r
-            "model_name": "balloon_template"\r
-          },\r
-          "licenses": {\r
-            "foreign_key": "system_picture_id",\r
-            "model_name": "license"\r
-          }\r
+          "balloons": {},\r
+          "speech_balloon_templates": {},\r
+          "licenses": {}\r
         },\r
         "has_one": {}\r
       },\r
       "attributes": {\r
-        "id": {\r
-          "type": "number",\r
-          "primary_key": 1,\r
-          "rules": {\r
-            "number": true\r
-          }\r
-        },\r
         "ext": {\r
           "type": "text",\r
           "rules": {\r
           "rules": {\r
             "required": true\r
           }\r
-        },\r
-        "created_at": {\r
-          "type": "datetime"\r
-        },\r
-        "updated_at": {\r
-          "type": "datetime"\r
         }\r
       },\r
       "lists": {\r
-        "public_list": {\r
+        "public": {\r
           "type": "public"\r
         }\r
       }\r
           "SquareSpeechBalloon": "square_speech_balloon"\r
         }\r
       },\r
+      "speech_balloons": {\r
+        "resource_items": {\r
+          "CircleSpeechBalloon": "circle_speech_balloon",\r
+          "PlainSpeechBalloon": "plain_speech_balloon",\r
+          "SquareSpeechBalloon": "square_speech_balloon"\r
+        }\r
+      },\r
       "writing_formats": {\r
         "has_route": 0,\r
         "resource_items": {\r
   "locals": {\r
     "profilers": {\r
       "scroll": {\r
-        "lists": {\r
-          "scroll_panels.by_scroll": {\r
-            "model_name": "scroll_panel",\r
-            "list_name": "by_scroll"\r
-          },\r
-          "panels.by_scroll": {\r
-            "model_name": "panel",\r
-            "list_name": "by_scroll"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "title",\r
           "description",\r
           "visible",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
         }\r
       },\r
       "scroll_panel": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "scroll_id",\r
           "panel_id",\r
           "t",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "scroll",\r
             "panel"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "comic": {\r
-        "lists": {\r
-          "stories.by_comic": {\r
-            "model_name": "story",\r
-            "list_name": "by_comic"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "title",\r
           "description",\r
           "visible",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
         }\r
       },\r
       "story": {\r
-        "lists": {\r
-          "story_sheets.by_story": {\r
-            "model_name": "story_sheet",\r
-            "list_name": "by_story"\r
-          },\r
-          "sheets.by_story": {\r
-            "model_name": "sheet",\r
-            "list_name": "by_story"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "comic_id",\r
           "title",\r
           "description",\r
           "t",\r
-          "visible",\r
-          "created_at",\r
-          "updated_at"\r
+          "visible"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
         }\r
       },\r
       "story_sheet": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "story_id",\r
           "sheet_id",\r
           "t",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "story",\r
             "sheet"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "sheet": {\r
-        "lists": {\r
-          "story_sheets.by_sheet": {\r
-            "model_name": "story_sheet",\r
-            "list_name": "by_sheet"\r
-          },\r
-          "stories.by_sheet": {\r
-            "model_name": "story",\r
-            "list_name": "by_sheet"\r
-          },\r
-          "sheet_panels.by_sheet": {\r
-            "model_name": "sheet_panel",\r
-            "list_name": "by_sheet"\r
-          },\r
-          "panels.by_sheet": {\r
-            "model_name": "panel",\r
-            "list_name": "by_sheet"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "caption",\r
           "width",\r
           "height",\r
           "visible",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
         }\r
       },\r
       "sheet_panel": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "sheet_id",\r
           "panel_id",\r
           "x",\r
           "y",\r
           "z",\r
           "t",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "sheet",\r
             "panel"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "panel": {\r
-        "lists": {\r
-          "scroll_panels.by_panel": {\r
-            "model_name": "scroll_panel",\r
-            "list_name": "by_panel"\r
-          },\r
-          "scrolls.by_panel": {\r
-            "model_name": "scroll",\r
-            "list_name": "by_panel"\r
-          },\r
-          "sheet_panels.by_panel": {\r
-            "model_name": "sheet_panel",\r
-            "list_name": "by_panel"\r
-          },\r
-          "sheets.by_panel": {\r
-            "model_name": "sheet",\r
-            "list_name": "by_panel"\r
-          },\r
-          "panel_pictures.by_panel": {\r
-            "model_name": "panel_picture",\r
-            "list_name": "by_panel"\r
-          },\r
-          "speech_balloons.by_panel": {\r
-            "model_name": "speech_balloon",\r
-            "list_name": "by_panel"\r
-          },\r
-          "ground_pictures.by_panel": {\r
-            "model_name": "ground_picture",\r
-            "list_name": "by_panel"\r
-          },\r
-          "ground_colors.by_panel": {\r
-            "model_name": "ground_color",\r
-            "list_name": "by_panel"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "width",\r
           "height",\r
           "border",\r
           "caption",\r
           "publish",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
         }\r
       },\r
       "panel_picture": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "panel_id",\r
           "picture_id",\r
           "caption",\r
           "height",\r
           "link",\r
           "z",\r
-          "t",\r
-          "created_at",\r
-          "updated_at"\r
+          "t"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "panel"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "speech_balloon": {\r
-        "lists": {\r
-          "balloon.by_speech_balloon": {\r
-            "model_name": "balloon",\r
-            "list_name": "by_speech_balloon"\r
-          },\r
-          "speech.by_speech_balloon": {\r
-            "model_name": "speech",\r
-            "list_name": "by_speech_balloon"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "panel_id",\r
           "speech_balloon_template_id",\r
           "classname",\r
           "z",\r
           "t",\r
           "settings",\r
-          "caption",\r
-          "created_at",\r
-          "updated_at"\r
+          "caption"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "panel"\r
           ],\r
-          "has_many": [],\r
           "has_one": [\r
             "balloon.by_speech_balloon",\r
             "speech.by_speech_balloon"\r
         }\r
       },\r
       "speech": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "speech_balloon_id",\r
           "writing_format_id",\r
           "content",\r
           "width",\r
           "height",\r
           "quotes",\r
-          "settings",\r
-          "created_at",\r
-          "updated_at"\r
+          "settings"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "speech_balloon",\r
             "writing_format"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "balloon": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "speech_balloon_id",\r
           "system_picture_id",\r
           "x",\r
           "width",\r
           "height",\r
           "r",\r
-          "settings",\r
-          "created_at",\r
-          "updated_at"\r
+          "settings"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "speech_balloon",\r
             "system_picture"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "ground_picture": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "panel_id",\r
           "picture_id",\r
           "caption",\r
           "x",\r
           "y",\r
           "z",\r
-          "t",\r
-          "created_at",\r
-          "updated_at"\r
+          "t"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "panel"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "ground_color": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "panel_id",\r
           "caption",\r
           "code",\r
           "xy",\r
           "wh",\r
           "z",\r
-          "t",\r
-          "created_at",\r
-          "updated_at"\r
+          "t"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "panel"\r
-          ],\r
-          "has_many": []\r
+          ]\r
         }\r
       },\r
       "original_picture": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "ext",\r
           "width",\r
           "height",\r
           "md5",\r
           "uploaded_at",\r
           "published_at",\r
-          "stopped_at",\r
-          "created_at",\r
-          "updated_at"\r
+          "stopped_at"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "artist"\r
           ],\r
-          "has_many": [],\r
           "has_one": [\r
-            "resource_picture"\r
+            "resource_picture.by_original_picture"\r
           ]\r
         }\r
       },\r
       "picture": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "original_picture_id",\r
           "revision",\r
           "ext",\r
           "artist_name",\r
           "credit",\r
           "settings",\r
-          "classname",\r
-          "created_at",\r
-          "updated_at"\r
+          "classname"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "license",\r
             "artist"\r
-          ],\r
-          "has_many": [],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "resource_picture": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "original_picture_id",\r
           "revision",\r
           "ext",\r
           "credit",\r
           "settings",\r
           "picture_id",\r
-          "classname",\r
-          "created_at",\r
-          "updated_at"\r
+          "classname"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "original_picture",\r
             "license",\r
             "artist"\r
-          ],\r
-          "has_many": [],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "speech_balloon_template": {\r
-        "lists": {},\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "name",\r
           "classname",\r
           "caption",\r
           "t",\r
           "system_picture_id",\r
-          "settings",\r
-          "created_at",\r
-          "updated_at"\r
+          "settings"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
             "system_picture"\r
-          ],\r
-          "has_many": [],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "writing_format": {\r
-        "lists": {\r
-          "speeches.by_writing_format": {\r
-            "model_name": "speech",\r
-            "list_name": "by_writing_format"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "name",\r
           "classname",\r
           "caption",\r
           "system_picture_id",\r
-          "settings",\r
-          "created_at",\r
-          "updated_at"\r
+          "settings"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
           ],\r
           "has_many": [\r
             "speeches.by_writing_format"\r
-          ],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "license_group": {\r
-        "lists": {\r
-          "licenses.by_license_group": {\r
-            "model_name": "license",\r
-            "list_name": "by_license_group"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "name",\r
           "classname",\r
           "caption",\r
-          "url",\r
-          "created_at",\r
-          "updated_at"\r
+          "url"\r
         ],\r
         "associations": {\r
-          "belongs_to": [],\r
           "has_many": [\r
             "licenses.by_license_group"\r
-          ],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "license": {\r
-        "lists": {\r
-          "resource_pictures.by_license": {\r
-            "model_name": "resource_picture",\r
-            "list_name": "by_license"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "license_group_id",\r
           "name",\r
           "caption",\r
           "system_picture_id",\r
           "url",\r
           "settings",\r
-          "credit_pictures",\r
-          "created_at",\r
-          "updated_at"\r
+          "credit_pictures"\r
         ],\r
         "associations": {\r
           "belongs_to": [\r
           ],\r
           "has_many": [\r
             "resource_pictures.by_license"\r
-          ],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "author": {\r
-        "lists": {\r
-          "scrolls.by_author": {\r
-            "model_name": "scroll",\r
-            "list_name": "by_author"\r
-          },\r
-          "comics.by_author": {\r
-            "model_name": "comic",\r
-            "list_name": "by_author"\r
-          },\r
-          "stories.by_author": {\r
-            "model_name": "story",\r
-            "list_name": "by_author"\r
-          },\r
-          "panels.by_author": {\r
-            "model_name": "panel",\r
-            "list_name": "by_author"\r
-          },\r
-          "panel_pictures.by_author": {\r
-            "model_name": "panel_picture",\r
-            "list_name": "by_author"\r
-          },\r
-          "speech_balloons.by_author": {\r
-            "model_name": "speech_balloon",\r
-            "list_name": "by_author"\r
-          },\r
-          "ground_pictures.by_author": {\r
-            "model_name": "ground_picture",\r
-            "list_name": "by_author"\r
-          },\r
-          "ground_colors.by_author": {\r
-            "model_name": "ground_color",\r
-            "list_name": "by_author"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "name",\r
-          "user_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "user_id"\r
         ],\r
         "associations": {\r
-          "belongs_to": [],\r
           "has_many": [\r
             "scrolls.by_author",\r
             "comics.by_author",\r
             "speech_balloons.by_author",\r
             "ground_pictures.by_author",\r
             "ground_colors.by_author"\r
-          ],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "artist": {\r
-        "lists": {\r
-          "resource_pictures.by_artist": {\r
-            "model_name": "resource_picture",\r
-            "list_name": "by_artist"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "name",\r
-          "author_id",\r
-          "created_at",\r
-          "updated_at"\r
+          "author_id"\r
         ],\r
         "associations": {\r
-          "belongs_to": [],\r
           "has_many": [\r
             "resource_pictures.by_artist"\r
-          ],\r
-          "has_one": []\r
+          ]\r
         }\r
       },\r
       "system_picture": {\r
-        "lists": {\r
-          "speech_balloon_templates.by_system_picture": {\r
-            "model_name": "speech_balloon_template",\r
-            "list_name": "by_system_picture"\r
-          },\r
-          "licenses.by_system_picture": {\r
-            "model_name": "license",\r
-            "list_name": "by_system_picture"\r
-          }\r
-        },\r
-        "columns": [\r
-          "id",\r
+        "column_names": [\r
           "ext",\r
           "width",\r
           "height",\r
           "filesize",\r
-          "md5",\r
-          "created_at",\r
-          "updated_at"\r
+          "md5"\r
         ],\r
         "associations": {\r
-          "belongs_to": [],\r
           "has_many": [\r
-            "speech_balloon_templates.by_system_picture",\r
             "licenses.by_system_picture"\r
-          ],\r
-          "has_one": []\r
+          ]\r
         }\r
       }\r
     },\r
         }\r
       }\r
     },\r
-    "lists": {\r
+    "list_groups": {\r
       "scroll": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_author": {\r
-          "where": "author",\r
-          "includes": "author_id"\r
-        },\r
-        "by_panel": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "through": "scroll_panels",\r
-            "filter_key": "panel_id"\r
-          }\r
-        },\r
-        "play": {\r
-          "type": "play",\r
-          "args": {\r
-            "model": "scroll_panel",\r
-            "filter_key": "scroll_id"\r
-          }\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_author": {},\r
+          "by_panel": {},\r
+          "play": {}\r
         }\r
       },\r
       "scroll_panel": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_scroll": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "scroll",\r
-            "filter_key": "scroll_id"\r
-          }\r
-        },\r
-        "by_panel": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "filter_key": "panel_id"\r
-          }\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_scroll": {},\r
+          "by_panel": {}\r
         }\r
       },\r
       "comic": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_author": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_author": {}\r
         }\r
       },\r
       "story": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_comic": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "comic",\r
-            "filter_key": "comic_id"\r
-          }\r
-        },\r
-        "by_sheet": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "sheet",\r
-            "through": "story_sheets",\r
-            "filter_key": "sheet_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "type": "element_filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
-        },\r
-        "play": {\r
-          "type": "play",\r
-          "args": {\r
-            "model": "story_sheet",\r
-            "filter_key": "story_id"\r
-          }\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_comic": {},\r
+          "by_sheet": {},\r
+          "by_author": {},\r
+          "play": {}\r
         }\r
       },\r
       "story_sheet": {\r
-        "public_list": {\r
-          "type": "public"\r
-        },\r
-        "private_list": {\r
-          "type": "private"\r
-        },\r
-        "by_story": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "story",\r
-            "filter_key": "story_id"\r
-          }\r
-        },\r
-        "by_sheet": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "sheet",\r
-            "filter_key": "sheet_id"\r
-          }\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_story": {},\r
+          "by_sheet": {}\r
         }\r
       },\r
       "sheet": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_story": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "story",\r
-            "through": "story_sheets",\r
-            "filter_key": "story_id"\r
-          }\r
-        },\r
-        "by_panel": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "through": "sheet_panels",\r
-            "filter_key": "panel_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
-        },\r
-        "play": {\r
-          "type": "play",\r
-          "args": {\r
-            "model": "sheet_panel",\r
-            "filter_key": "sheet_id"\r
-          }\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_story": {},\r
+          "by_panel": {},\r
+          "by_author": {},\r
+          "play": {}\r
         }\r
       },\r
       "sheet_panel": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_sheet": {\r
-          "type": "filter",\r
-          "args": {\r
-            "association_name": "sheet_panels",\r
-            "from": "sheet",\r
-            "filter_key": "sheet_id"\r
-          }\r
-        },\r
-        "by_panel": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "filter_key": "panel_id"\r
-          }\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_sheet": {},\r
+          "by_panel": {}\r
         }\r
       },\r
       "panel": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_scroll": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "scroll",\r
-            "through": "scroll_panels",\r
-            "filter_key": "scroll_id"\r
-          }\r
-        },\r
-        "by_sheet": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "sheet",\r
-            "through": "sheet_panels",\r
-            "filter_key": "sheet_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
-        },\r
-        "by_speech_balloon_template": {\r
-          "type": "through_filter",\r
-          "args": {\r
-            "from": "speech_balloon_template",\r
-            "through": "speech_balloons",\r
-            "filter_key": "speech_balloon_template_id"\r
-          }\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_scroll": {},\r
+          "by_sheet": {},\r
+          "by_author": {},\r
+          "by_speech_balloon_template": {}\r
         }\r
       },\r
       "panel_picture": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_panel": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "filter_key": "panel_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "where": "by_author_where",\r
-          "includes": "by_author_includes"\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_panel": {},\r
+          "by_author": {}\r
         }\r
       },\r
       "speech_balloon": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_panel": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "filter_key": "panel_id"\r
-          }\r
-        },\r
-        "by_speech_balloon_template": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "speech_balloon_template",\r
-            "filter_key": "speech_balloon_template_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "type": "element_filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_panel": {},\r
+          "by_speech_balloon_template": {},\r
+          "by_author": {}\r
         }\r
       },\r
       "speech": {\r
-        "public_list": {},\r
-        "by_speech_balloon": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "speech_balloon",\r
-            "includes": {\r
-              "speech_balloon": {\r
-                "panel": {}\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "by_speech_balloon": {},\r
+          "by_writing_format": {}\r
+        }\r
+      },\r
+      "balloon": {\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "by_speech_balloon": {}\r
+        }\r
+      },\r
+      "ground_picture": {\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_panel": {},\r
+          "by_author": {}\r
+        }\r
+      },\r
+      "ground_color": {\r
+        "tree_name": "owner",\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_panel": {},\r
+          "by_author": {}\r
+        }\r
+      },\r
+      "original_picture": {\r
+        "lists": {\r
+          "private": {}\r
+        }\r
+      },\r
+      "picture": {},\r
+      "resource_picture": {\r
+        "lists": {\r
+          "public": {},\r
+          "private": {},\r
+          "by_original_picture": {},\r
+          "by_license": {},\r
+          "by_artist": {}\r
+        }\r
+      },\r
+      "speech_balloon_template": {\r
+        "lists": {\r
+          "public": {},\r
+          "select_items": {}\r
+        }\r
+      },\r
+      "writing_format": {\r
+        "lists": {\r
+          "public": {},\r
+          "select_items": {},\r
+          "by_system_picture": {}\r
+        }\r
+      },\r
+      "license_group": {\r
+        "lists": {\r
+          "public": {},\r
+          "select_items": {}\r
+        }\r
+      },\r
+      "license": {\r
+        "lists": {\r
+          "public": {},\r
+          "by_license_group": {},\r
+          "by_system_picture": {}\r
+        }\r
+      },\r
+      "author": {\r
+        "lists": {\r
+          "public": {}\r
+        }\r
+      },\r
+      "artist": {\r
+        "lists": {\r
+          "public": {}\r
+        }\r
+      },\r
+      "system_picture": {\r
+        "lists": {\r
+          "public": {}\r
+        }\r
+      }\r
+    },\r
+    "forms": {\r
+      "base": {\r
+        "scroll": {\r
+          "fields": {\r
+            "title": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "description": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text_area"\r
+                }\r
+              }\r
+            },\r
+            "visible": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "select"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "author_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "title",\r
+            "description",\r
+            "visible",\r
+            "id",\r
+            "author_id"\r
+          ]\r
+        },\r
+        "scroll_panel": {\r
+          "fields": {\r
+            "scroll_id": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "panel_id": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "t": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "scroll_id",\r
+            "panel_id",\r
+            "t",\r
+            "id"\r
+          ]\r
+        },\r
+        "comic": {\r
+          "fields": {\r
+            "title": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "description": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text_area"\r
+                }\r
+              }\r
+            },\r
+            "visible": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "select"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "author_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "title",\r
+            "description",\r
+            "visible",\r
+            "id",\r
+            "author_id"\r
+          ]\r
+        },\r
+        "story": {\r
+          "fields": {\r
+            "comic_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "title": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "description": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text_area"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "visible": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "select"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "t": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "author_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "comic_id",\r
+            "title",\r
+            "description",\r
+            "visible",\r
+            "t",\r
+            "id",\r
+            "author_id"\r
+          ]\r
+        },\r
+        "story_sheet": {\r
+          "fields": {\r
+            "story_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "sheet_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "t": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "story_id",\r
+            "sheet_id",\r
+            "t",\r
+            "id"\r
+          ]\r
+        },\r
+        "sheet": {\r
+          "fields": {\r
+            "caption": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "width": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "height": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "visible": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "select"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "author_id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "caption",\r
+            "width",\r
+            "height",\r
+            "visible",\r
+            "id",\r
+            "author_id"\r
+          ]\r
+        },\r
+        "sheet_panel": {\r
+          "fields": {\r
+            "sheet_id": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "panel_id": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "x": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                }\r
+              }\r
+            },\r
+            "y": {\r
+              "args": {\r
+                "tag": {\r
+                  "type": "number"\r
+                },\r
+                "row_break": true\r
+              }\r
+            },\r
+            "z": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
               }\r
             },\r
-            "filter_key": "speech_balloon_id"\r
-          }\r
-        },\r
-        "by_writing_format": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "writing_format",\r
-            "filter_key": "writing_format_id"\r
-          }\r
-        }\r
-      },\r
-      "balloon": {\r
-        "public_list": {},\r
-        "by_speech_balloon": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "speech_balloon",\r
-            "includes": {\r
-              "speech_balloon": {\r
-                "panel": {}\r
+            "t": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
               }\r
             },\r
-            "filter_key": "speech_balloon_id"\r
-          }\r
-        }\r
-      },\r
-      "ground_picture": {\r
-        "public_list": {},\r
-        "private_list": {\r
-          "type": "private"\r
-        },\r
-        "by_panel": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "filter_key": "panel_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "type": "element_filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
-        }\r
-      },\r
-      "ground_color": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_panel": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "panel",\r
-            "filter_key": "panel_id"\r
-          }\r
-        },\r
-        "by_author": {\r
-          "type": "element_filter",\r
-          "args": {\r
-            "from": "author",\r
-            "filter_key": "author_id"\r
-          }\r
-        }\r
-      },\r
-      "original_picture": {\r
-        "private_list": {}\r
-      },\r
-      "picture": {},\r
-      "resource_picture": {\r
-        "public_list": {},\r
-        "private_list": {},\r
-        "by_license": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "license",\r
-            "filter_key": "license_id"\r
-          }\r
-        },\r
-        "by_artist": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "artist",\r
-            "filter_key": "artist_id"\r
-          }\r
-        }\r
-      },\r
-      "speech_balloon_template": {\r
-        "public_list": {},\r
-        "select_items": {\r
-          "type": "system_resource"\r
-        }\r
-      },\r
-      "writing_format": {\r
-        "public_list": {},\r
-        "select_items": {\r
-          "type": "system_resource"\r
-        },\r
-        "by_system_picture": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "system_picture",\r
-            "filter_key": "system_picture_id"\r
-          }\r
-        }\r
-      },\r
-      "license_group": {\r
-        "public_list": {},\r
-        "select_items": {\r
-          "type": "system_resource"\r
-        }\r
-      },\r
-      "license": {\r
-        "public_list": {},\r
-        "by_license_group": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "license_group",\r
-            "filter_key": "license_group_id"\r
-          }\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "sheet_id",\r
+            "panel_id",\r
+            "x",\r
+            "y",\r
+            "z",\r
+            "t",\r
+            "id"\r
+          ]\r
         },\r
-        "by_system_picture": {\r
-          "type": "filter",\r
-          "args": {\r
-            "from": "system_picture",\r
-            "filter_key": "system_picture_id"\r
-          }\r
-        }\r
-      },\r
-      "author": {\r
-        "public_list": {}\r
-      },\r
-      "artist": {\r
-        "public_list": {}\r
-      },\r
-      "system_picture": {\r
-        "public_list": {}\r
-      }\r
-    },\r
-    "elements": [\r
-      {\r
-        "name": "panel_picture",\r
-        "path_name": "panel_pictures",\r
-        "parts": []\r
-      },\r
-      {\r
-        "name": "speech_balloon",\r
-        "path_name": "circle_speech_balloon/speech_balloons",\r
-        "parts": [\r
-          "balloon",\r
-          "speech"\r
-        ]\r
-      },\r
-      {\r
-        "name": "ground_picture",\r
-        "path_name": "ground_pictures",\r
-        "parts": []\r
-      },\r
-      {\r
-        "name": "ground_color",\r
-        "path_name": "ground_colors",\r
-        "parts": []\r
-      }\r
-    ],\r
-    "forms": {\r
-      "base": {\r
         "panel": {\r
           "fields": {\r
             "caption": {\r
               "args": {\r
-                "column": "caption",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "text"\r
                 },\r
             },\r
             "width": {\r
               "args": {\r
-                "column": "width",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "height": {\r
               "args": {\r
-                "column": "height",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "row_break": true\r
               }\r
             },\r
             "border": {\r
               "args": {\r
-                "column": "border",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "publish": {\r
               "args": {\r
-                "column": "publish",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "select"\r
                 },\r
             },\r
             "id": {\r
               "args": {\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "author_id": {\r
               "args": {\r
-                "column": "author_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
           "fields": {\r
             "caption": {\r
               "args": {\r
-                "column": "caption",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "text"\r
                 },\r
             },\r
             "x": {\r
               "args": {\r
-                "column": "x",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "y": {\r
               "args": {\r
-                "column": "y",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "row_break": true\r
               }\r
             },\r
             "width": {\r
               "args": {\r
-                "column": "width",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "helpers": {\r
                   "size": {\r
                     "type": "size",\r
                     "args": {\r
-                      "path": "panels/size_helper",\r
-                      "class": "panel_picture_width_tool"\r
+                      "dom_class": "panel_picture_width_tool"\r
                     }\r
                   }\r
                 },\r
             },\r
             "height": {\r
               "args": {\r
-                "column": "height",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "helpers": {\r
                   "size": {\r
                     "type": "size",\r
                     "args": {\r
-                      "path": "panels/size_helper",\r
-                      "class": "panel_picture_height_tool"\r
+                      "dom_class": "panel_picture_height_tool"\r
                     }\r
                   }\r
                 },\r
             },\r
             "link": {\r
               "args": {\r
-                "column": "link",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "text"\r
                 },\r
             },\r
             "id": {\r
               "args": {\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "panel_id": {\r
               "args": {\r
-                "column": "panel_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "picture_id": {\r
               "args": {\r
-                "column": "picture_id",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "hidden"\r
                 },\r
                 "helpers": {\r
                   "popup": {\r
-                    "type": "size",\r
+                    "type": "popup",\r
                     "args": {\r
-                      "path": "panels/popup_helper",\r
                       "source": "pictures"\r
                     }\r
                   }\r
             },\r
             "z": {\r
               "args": {\r
-                "column": "z",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "t": {\r
               "args": {\r
-                "column": "t",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
           "fields": {\r
             "speech_balloon.id": {\r
               "args": {\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "speech_balloon.panel_id": {\r
               "args": {\r
-                "column": "panel_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "speech_balloon.speech_balloon_template_id": {\r
               "args": {\r
-                "column": "speech_balloon_template_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "speech_balloon.caption": {\r
               "args": {\r
-                "column": "caption",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "text"\r
                 },\r
             },\r
             "speech_balloon.z": {\r
               "args": {\r
-                "column": "z",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "speech_balloon.t": {\r
               "args": {\r
-                "column": "t",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "speech_balloon.classname": {\r
               "args": {\r
-                "column": "classname",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "speech_balloon.settings": {\r
               "args": {\r
-                "column": "settings",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "balloon.id": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "balloon.speech_balloon_id": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "speech_balloon_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "balloon.system_picture_id": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "system_picture_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "balloon.r": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "r",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "helpers": {\r
                   "tail_angle": {\r
                     "type": "size",\r
-                    "args": {\r
-                      "path": "panels/tail_angle_helper"\r
-                    }\r
+                    "args": {}\r
                   }\r
                 },\r
                 "row_break": true\r
             "balloon.x": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "x",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "balloon.y": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "y",\r
                 "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "row_break": true\r
               }\r
             "balloon.width": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "width",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "balloon.height": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "height",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "row_break": true\r
               }\r
             "balloon.settings": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "settings",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.id": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.speech_balloon_id": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "speech_balloon_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.x": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "x",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.y": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "y",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.width": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "width",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.height": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "height",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "speech.writing_format_id": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "writing_format_id",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "select"\r
                 }\r
             "speech.font_size": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "font_size",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "select"\r
                 },\r
             "speech.text_align": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "text_align",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "select"\r
                 }\r
             "speech.quotes": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "quotes",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "text",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "text"\r
                 }\r
               }\r
             },\r
             "speech.content": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "content",\r
                 "label": {\r
-                  "row_break": true\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
                 },\r
                 "tag": {\r
                   "type": "text_area",\r
                   "args": {\r
-                    "size": "45x5"\r
+                    "options": {\r
+                      "size": "45x5"\r
+                    }\r
                   }\r
                 }\r
               }\r
             "speech.fore_color": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "fore_color",\r
                 "label": {\r
                   "row_break": true\r
                 },\r
                 },\r
                 "helpers": {\r
                   "color": {\r
-                    "type": "size",\r
+                    "type": "color",\r
                     "args": {\r
-                      "path": "panels/color_helper",\r
                       "wrapper": "speech-fore_color-wrap"\r
                     }\r
                   }\r
             "speech.settings": {\r
               "type": "part",\r
               "args": {\r
-                "model": "speech",\r
-                "part": "speech",\r
-                "column": "settings",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
           "fields": {\r
             "id": {\r
               "args": {\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "panel_id": {\r
               "args": {\r
-                "column": "panel_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "picture_id": {\r
               "args": {\r
-                "column": "picture_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "caption": {\r
               "args": {\r
-                "column": "caption",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "text"\r
                 },\r
             },\r
             "repeat": {\r
               "args": {\r
-                "column": "repeat",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "select",\r
                   "args": {\r
             },\r
             "x": {\r
               "args": {\r
-                "column": "x",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "y": {\r
               "args": {\r
-                "column": "y",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "row_break": true\r
               }\r
             },\r
             "z": {\r
               "args": {\r
-                "column": "z",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "t": {\r
               "args": {\r
-                "column": "t",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
           "fields": {\r
             "id": {\r
               "args": {\r
-                "column": "id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "panel_id": {\r
               "args": {\r
-                "column": "panel_id",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "caption": {\r
               "args": {\r
-                "column": "caption",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "text"\r
                 },\r
             },\r
             "code": {\r
               "args": {\r
-                "column": "code",\r
                 "label": {\r
-                  "row_break": true\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
                 },\r
                 "tag": {\r
                   "type": "hidden"\r
                 },\r
                 "helpers": {\r
                   "color": {\r
-                    "type": "size",\r
+                    "type": "color",\r
                     "args": {\r
-                      "path": "panels/color_helper",\r
                       "wrapper": "ground_color-code-wrap"\r
                     }\r
                   }\r
             },\r
             "orientation": {\r
               "args": {\r
-                "column": "orientation",\r
-                "label": {},\r
                 "tag": {\r
                   "type": "select"\r
                 },\r
             },\r
             "xy": {\r
               "args": {\r
-                "column": "xy",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 }\r
               }\r
             },\r
             "wh": {\r
               "args": {\r
-                "column": "wh",\r
-                "label": {},\r
                 "tag": {\r
-                  "type": "number",\r
-                  "args": {\r
-                    "size": 5\r
-                  }\r
+                  "type": "number"\r
                 },\r
                 "row_break": true\r
               }\r
             },\r
             "z": {\r
               "args": {\r
-                "column": "z",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             },\r
             "t": {\r
               "args": {\r
-                "column": "t",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "z",\r
             "t"\r
           ]\r
+        },\r
+        "author": {\r
+          "fields": {\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "name": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text"\r
+                },\r
+                "row_break": true\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "id",\r
+            "name"\r
+          ]\r
+        },\r
+        "artist": {\r
+          "fields": {\r
+            "id": {\r
+              "args": {\r
+                "label": {\r
+                  "type": "none"\r
+                },\r
+                "tag": {\r
+                  "type": "hidden"\r
+                }\r
+              }\r
+            },\r
+            "name": {\r
+              "args": {\r
+                "label": {\r
+                  "args": {\r
+                    "row_break": true\r
+                  }\r
+                },\r
+                "tag": {\r
+                  "type": "text"\r
+                },\r
+                "row_break": true\r
+              }\r
+            }\r
+          },\r
+          "field_names": [\r
+            "id",\r
+            "name"\r
+          ]\r
         }\r
       },\r
       "extend": {\r
             "balloon.r": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "r",\r
                 "label": {\r
                   "type": "none"\r
                 },\r
             "balloon.r": {\r
               "type": "part",\r
               "args": {\r
-                "model": "balloon",\r
-                "part": "balloon",\r
-                "column": "r",\r
                 "label": {\r
                   "type": "none"\r
                 },\r