diff --git a/.gitignore b/.gitignore
index 4d29575..ede4de6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,3 +21,14 @@
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+
+# database contents
+/dl-limit-items.csv
+/public/database/items.json
+/public/database/file
+/public/documents/images
+/public/documents/*.json
+/src/database/assets/*.json
+/src/credits/assets/*.json
+/src/d3forum/assets/*.json
+/src/pico/assets/*.json
diff --git a/etc/common.inc.php b/etc/common.inc.php
new file mode 100644
index 0000000..04b355c
--- /dev/null
+++ b/etc/common.inc.php
@@ -0,0 +1,197 @@
+ $v) {
+ if (is_string($v)) {
+ $v = $textutil->html_numeric_entities($v);
+ $v = mb_decode_numericentity($v, array(0x0, 0x10000, 0, 0xfffff), 'UTF-8');
+ $data[$k] = \Normalizer::normalize(trim($v), \Normalizer::FORM_C);
+ } elseif (null === $v) {
+ $data[$k] = '';
+ }
+ }
+ }
+
+ public static function convertToInt(&$data, $keys, $zerofill = false)
+ {
+ foreach ($keys as $key) {
+ if (isset($data[$key])) {
+ $data[$key] = '' === $data[$key] ? ($zerofill ? 0 : null) : (int) $data[$key];
+ }
+ }
+ }
+
+ public static function dropColumn(&$data, $keys)
+ {
+ foreach ($keys as $key) {
+ if (isset($data[$key])) {
+ unset($data[$key]);
+ }
+ }
+ }
+
+ public static function fileCopy($from, $to)
+ {
+ system('rsync -aq '.escapeshellarg($from).' '.escapeshellarg($to), $ret);
+
+ return 0 === $ret;
+ }
+
+ public static function fixHtml($text)
+ {
+ static $config = [
+ //'clean' => true,
+ 'hide-comments' => true,
+ 'indent' => true,
+ 'output-xhtml' => true,
+ 'preserve-entities' => true,
+ 'show-body-only' => true,
+ 'wrap' => 0,
+ 'input-encoding' => 'utf8',
+ 'output-encoding' => 'utf8',
+ 'output-bom' => false,
+ ];
+ $text = tidy_repair_string($text, $config);
+ $text = preg_replace('/
]*)>((?:\s*]*>.*<\/caption>)?\s*)]*)>/Us', '\2', $text);
+ $text = preg_replace('/<\/tr>(\s*)<\/table>/s', '
\1
', $text);
+
+ return $text;
+ }
+
+ public static function tableExists($name)
+ {
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $sql = <<< SQL
+SELECT 1
+ FROM `${prefix}_${name}`
+ LIMIT 1
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ return false;
+ }
+ $xoopsDB->freeRecordSet($res);
+
+ return true;
+ }
+
+ public static function makeDirectory(string $dirname)
+ {
+ $path = MYDUMPTOOL_OUTPUTDIR.('' !== $dirname ? '/'.$dirname : '');
+ if (!is_dir($path)) {
+ if (!@mkdir($path)) {
+ exit('Failed to create directory: '.$path.PHP_EOL);
+ }
+ }
+ }
+
+ public static function saveJson(string $fname, $data)
+ {
+ $path = MYDUMPTOOL_OUTPUTDIR.'/'.$fname;
+ if (false === file_put_contents($path, json_encode($data, JSON_UNESCAPED_UNICODE))) {
+ exit('Failed to save json file: '.$path.PHP_EOL);
+ }
+ }
+
+ public static function fileDownload($url, $fpath)
+ {
+ $fp = fopen($fpath, 'w');
+ if (false === $fp) {
+ exit('Failed to open file: '.$fpath.PHP_EOL);
+ }
+ $curl = curl_init();
+ curl_setopt($curl, CURLOPT_URL, $url);
+ curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
+ curl_setopt($curl, CURLOPT_AUTOREFERER, true);
+ curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
+ curl_setopt($curl, CURLOPT_FAILONERROR, true);
+ curl_setopt($curl, CURLOPT_FILE, $fp);
+ curl_setopt($curl, CURLOPT_TIMEOUT, 5);
+ $ret = curl_exec($curl);
+ fclose($fp);
+ if (false === $ret) {
+ exit('Failed to download file, unexpected error: '.$url.PHP_EOL);
+ }
+ $code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
+ if (200 !== $code) {
+ exit('Failed to download file, invalid status code('.$code.'): '.$url.PHP_EOL);
+ }
+ curl_close($curl);
+
+ return true;
+ }
+
+ public static function getMimeType($fpath)
+ {
+ $finfo = finfo_open(FILEINFO_MIME);
+ $mime = finfo_file($finfo, $fpath);
+ finfo_close($finfo);
+ $mime = preg_replace('/(;.*)$/', '', $mime);
+
+ return $mime;
+ }
+}
diff --git a/etc/config.inc.php b/etc/config.inc.php
new file mode 100644
index 0000000..84fa82e
--- /dev/null
+++ b/etc/config.inc.php
@@ -0,0 +1,9 @@
+prefix();
+
+$table = 'nipfcredits_organization';
+if (!MyDumpTool::tableExists($table)) {
+ exit('credits module not found'.PHP_EOL);
+}
+MyDumpTool::makeDirectory('src/credits');
+MyDumpTool::makeDirectory('src/credits/assets');
+
+// organization
+$organization = [];
+$sql = <<< SQL
+SELECT
+ `o`.*
+ FROM `${prefix}_nipfcredits_organization` AS `o`
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ $organization = $row;
+}
+$xoopsDB->freeRecordSet($res);
+$organization['com_email'] = str_replace('@', ' (at) ', $organization['com_email']);
+$organization['com_url'] = XOOPS_URL;
+$organization['institute'] = 'Neuroinformatics Unit, RIKEN Center for Brain Science';
+$organization['url'] = 'https://www.ni.riken.jp/';
+$organization['email'] = 'office (at) ni.riken.jp';
+$organization['address'] = 'Hirosawa 2-1, Wako, Saitama, 351-0198 Japan';
+$organization['tel'] = '+81 48 (462) 1111';
+
+// member
+$member = [];
+$sql = <<< SQL
+SELECT
+ `m`.*
+ FROM `${prefix}_nipfcredits_member` AS `m`
+ ORDER BY `m`.`weight`
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ $member[] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+$opage = getOrganizationPage($organization, $member);
+//var_dump($opage);
+
+// pages
+$pages = [];
+$sql = <<< SQL
+SELECT
+ `p`.*
+ FROM `${prefix}_nipfcredits_page` AS `p`
+ ORDER BY `p`.`weight`
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ myDumpTool::convertToInt($row, ['pid', 'weight', 'lastupdate']);
+ $content = replaceOrganization($row['content'], $organization);
+ $content = MyDumpTool::fixHtml($content);
+ $row['content'] = $content;
+ MyDumpTool::dropColumn($row, ['weight']);
+ $pages[] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+//var_dump($pages);
+
+$data = [
+ 'organization' => $opage,
+ 'pages' => $pages,
+];
+MyDumpTool::saveJson('src/credits/assets/credits.json', $data);
+
+function replaceOrganization($text, $org)
+{
+ $textutil = xoonips_getutility('text');
+ $map = [
+ '{COMMITTEE_NAME}' => $textutil->html_special_chars($org['committee']),
+ '{COMMITTEE_EMAIL}' => ''.$textutil->html_special_chars($org['com_email']).'(committee email has been closed)',
+ '{INSTITUTE_NAME}' => $textutil->html_special_chars($org['institute']),
+ '{INSTITUTE_URL}' => $textutil->html_special_chars($org['url']),
+ '{INSTITUTE_EMAIL}' => $textutil->html_special_chars($org['email']),
+ '{INSTITUTE_ADDRESS}' => $textutil->html_special_chars($org['address']),
+ '{INSTITUTE_TEL}' => $textutil->html_special_chars($org['tel']),
+ '{PLATFORM_URL}' => XOOPS_URL,
+ ];
+
+ return str_replace(array_keys($map), $map, $text);
+}
+
+function getOrganizationPage($org, $member)
+{
+ $textutil = xoonips_getutility('text');
+ $members = [];
+ foreach ($member as $m) {
+ $members[] = ' '.$textutil->html_special_chars($m['name'].' : '.$m['division']).'';
+ }
+ $members = implode("\n", $members);
+ $committee = $textutil->html_special_chars($org['committee']);
+ $institute = $textutil->html_special_chars($org['institute']);
+ $address = $textutil->html_special_chars($org['address']);
+ $url = $textutil->html_special_chars($org['url']);
+ $html = <<< HTML
+${committee}
+
+HTML;
+
+ return $html;
+}
diff --git a/etc/dumpD3Forum.php b/etc/dumpD3Forum.php
new file mode 100644
index 0000000..940d05d
--- /dev/null
+++ b/etc/dumpD3Forum.php
@@ -0,0 +1,162 @@
+prefix();
+
+ $moduleHandler = xoops_gethandler('module');
+ $module = $moduleHandler->getByDirname($d3forum);
+ $moduleConfigHandler = xoops_gethandler('config');
+ $moduleConfig = $moduleConfigHandler->getConfigsByDirname($d3forum);
+
+ $table = $d3forum.'_categories';
+ if (!MyDumpTool::tableExists($table)) {
+ exit('d3forum('.$d3forum.') module not found'.PHP_EOL);
+ }
+
+ $gidGuest = XOOPS_GROUP_ANONYMOUS;
+
+ // get anonymous readable categories
+ $categories = [];
+ $sql = <<< SQL
+SELECT
+ `c`.*
+ FROM `${prefix}_${d3forum}_categories` AS `c`
+ INNER JOIN `${prefix}_${d3forum}_category_access` AS `ca` ON `c`.`cat_id`=`ca`.`cat_id`
+ WHERE `ca`.`groupid`=${gidGuest}
+ GROUP BY `c`.`cat_id`
+ ORDER BY `c`.`cat_order_in_tree` ASC, `c`.`cat_weight` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, ['cat_id', 'pid', 'cat_topics_count', 'cat_posts_count', 'cat_last_post_id', 'cat_last_post_time', 'cat_topics_count_in_tree', 'cat_posts_count_in_tree', 'cat_last_post_id_in_tree', 'cat_last_post_time_in_tree', 'cat_depth_in_tree', 'cat_order_in_tree', 'cat_weight']);
+ $row['cat_path_in_tree'] = unserialize($row['cat_path_in_tree']);
+ $row['cat_options'] = unserialize($row['cat_options']);
+ $categories[] = $row;
+ }
+ $xoopsDB->freeRecordSet($res);
+ //var_dump($categories);
+
+ // get anonymous readable forums
+ $forums = [];
+ $sql = <<< SQL
+SELECT
+ `f`.*
+ FROM `${prefix}_${d3forum}_forums` AS `f`
+ INNER JOIN `${prefix}_${d3forum}_forum_access` AS `fa` ON `f`.`forum_id`=`fa`.`forum_id`
+ INNER JOIN `${prefix}_${d3forum}_category_access` AS `ca` ON `f`.`cat_id`=`ca`.`cat_id`
+ WHERE `fa`.`groupid`=${gidGuest}
+ AND `ca`.`groupid`=${gidGuest}
+ GROUP BY `f`.`forum_id`
+ ORDER BY `f`.`cat_id` ASC, `f`.`forum_weight` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, ['forum_id', 'cat_id', 'forum_topics_count', 'forum_posts_count', 'forum_last_post_id', 'forum_last_post_time', 'forum_weight'], true);
+ $row['forum_options'] = unserialize($row['forum_options']);
+ $forums[] = $row;
+ }
+ $xoopsDB->freeRecordSet($res);
+ //var_dump($forums);
+
+ // get anonymous readable topics
+ $topics = [];
+ $sql = <<< SQL
+SELECT
+ `t`.*,
+ `uf`.`name` AS `topic_first_uid_name`, `uf`.`uname` AS `topic_first_uid_uname`,
+ `ul`.`name` AS `topic_last_uid_name`, `ul`.`uname` AS `topic_last_uid_uname`
+ FROM `${prefix}_${d3forum}_topics` AS `t`
+ INNER JOIN `${prefix}_${d3forum}_forums` AS `f` ON `t`.`forum_id`=`f`.`forum_id`
+ INNER JOIN `${prefix}_${d3forum}_forum_access` AS `fa` ON `f`.`forum_id`=`fa`.`forum_id`
+ INNER JOIN `${prefix}_${d3forum}_category_access` AS `ca` ON `f`.`cat_id`=`ca`.`cat_id`
+ LEFT JOIN `${prefix}_users` AS `uf` ON `t`.`topic_first_uid`=`uf`.`uid`
+ LEFT JOIN `${prefix}_users` AS `ul` ON `t`.`topic_last_uid`=`ul`.`uid`
+ WHERE `fa`.`groupid`=${gidGuest}
+ AND `ca`.`groupid`=${gidGuest}
+ GROUP BY `t`.`topic_id`
+ ORDER BY `t`.`forum_id` ASC, `t`.`topic_id` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, ['topic_id', 'forum_id', 'topic_first_uid', 'topic_first_post_id', 'topic_first_post_time', 'topic_last_uid', 'topic_last_post_id', 'topic_last_post_time', 'topic_views', 'topic_posts_count', 'topic_locked', 'topic_sticky', 'topic_solved', 'topic_invisible', 'topic_votes_sum', 'topic_votes_count'], true);
+ $topics[] = $row;
+ }
+ $xoopsDB->freeRecordSet($res);
+ //var_dump($topics);
+
+ // get anonymous readable posts
+ $posts = [];
+ $sql = <<< SQL
+SELECT
+ `p`.*,
+ `u`.`name` AS `uid_name`, `u`.`uname` AS `uid_uname`, `u`.`rank` AS `uid_rank`, `u`.`posts` AS `uid_posts`
+ FROM `${prefix}_${d3forum}_posts` AS `p`
+ INNER JOIN `${prefix}_${d3forum}_topics` AS `t` ON `p`.`topic_id`=`t`.`topic_id`
+ INNER JOIN `${prefix}_${d3forum}_forums` AS `f` ON `t`.`forum_id`=`f`.`forum_id`
+ INNER JOIN `${prefix}_${d3forum}_forum_access` AS `fa` ON `f`.`forum_id`=`fa`.`forum_id`
+ INNER JOIN `${prefix}_${d3forum}_category_access` AS `ca` ON `f`.`cat_id`=`ca`.`cat_id`
+ LEFT JOIN `${prefix}_users` AS `u` ON `p`.`uid`=`u`.`uid`
+ WHERE `fa`.`groupid`=${gidGuest}
+ AND `ca`.`groupid`=${gidGuest}
+ GROUP BY `p`.`post_id`
+ ORDER BY `t`.`topic_id` ASC, `p`.`post_id` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, ['post_id', 'pid', 'topic_id', 'post_time', 'modified_time', 'uid', 'uid_hidden', 'html', 'smiley', 'xcode', 'br', 'number_entity', 'special_entity', 'icon', 'attachsig', 'invisible', 'approval', 'votes_sum', 'votes_count', 'depth_in_tree', 'order_in_tree', 'uid_rank', 'uid_posts'], true);
+ MyDumpTool::dropColumn($row, ['guest_email', 'guest_url', 'guest_pass_md5', 'guest_trip']);
+ $posts[] = $row;
+ }
+ $xoopsDB->freeRecordSet($res);
+ //var_dump($posts);
+ var_dump(count($posts));
+
+ $moduleinfo = [
+ 'name' => $module->get('name'),
+ 'dirname' => $d3forum,
+ 'message' => $moduleConfig['top_message'],
+ ];
+ MyDumpTool::decode($moduleinfo);
+
+ $data = [
+ 'module' => $moduleinfo,
+ 'categories' => $categories,
+ 'forums' => $forums,
+ 'topics' => $topics,
+ 'posts' => $posts,
+ ];
+
+ $contents[] = $data;
+}
diff --git a/etc/dumpPico.php b/etc/dumpPico.php
new file mode 100644
index 0000000..3dd61c2
--- /dev/null
+++ b/etc/dumpPico.php
@@ -0,0 +1,135 @@
+prefix();
+ $table = $pico.'_contents';
+ if (!MyDumpTool::tableExists($table)) {
+ exit('pico('.$pico.') module not found'.PHP_EOL);
+ }
+ MyDumpTool::makeDirectory('public/'.$pico);
+ MyDumpTool::makeDirectory('public/'.$pico.'/images');
+ $moduleHandler = xoops_gethandler('module');
+ $module = $moduleHandler->getByDirname($pico);
+ $moduleConfigHandler = xoops_gethandler('config');
+ $moduleConfig = $moduleConfigHandler->getConfigsByDirname($pico);
+ $permObj = PicoPermission::getInstance();
+ $perms = $permObj->getPermissions($pico);
+ $categoryHandler = new PicoCategoryHandler($pico, $perms);
+ $contentHandler = new PicoContentHandler($pico);
+ $cats = $categoryHandler->getAllCategories();
+ $confContents = [];
+ $confCategories = [];
+ foreach ($cats as $cat) {
+ $catData = $cat->getData();
+ $modConfig = $cat->getOverriddenModConfig();
+ $link = pico_common_make_category_link4html($modConfig, $catData, $pico);
+ MyDumpTool::decode($catData);
+ $confCategories[] = [
+ 'id' => $catData['id'],
+ 'title' => $catData['cat_title'],
+ 'desc' => (string) $catData['cat_desc'],
+ 'pid' => (int) $catData['pid'],
+ 'weight' => (int) $catData['cat_weight'],
+ 'link' => $link,
+ ];
+ $contents = $contentHandler->getCategoryContents($cat);
+ foreach ($contents as $content) {
+ $data = $content->getData();
+ $link = pico_common_make_content_link4html($modConfig , $data);
+ MyDumpTool::decode($data);
+ $content = MyDumpTool::fixHtml($data['body_cached']);
+ $imageId = 1;
+ $content = preg_replace_callback('/
]*)src="(.*)"([^>]*)\/>/Us', function ($matches) use (&$imageId, $pico, $data, $link) {
+ $url = $matches[2];
+ if (!preg_match('/^http/', $url)) {
+ $xpath = dirname($link);
+ $url = XOOPS_URL.'/modules/'.$pico.'/'.$xpath.'/'.$url;
+ }
+ $fname = '/'.$pico.'/images/'.$data['id'].'_'.$imageId.'.dat';
+ $fpath = MYDUMPTOOL_OUTPUTDIR.'/public'.$fname;
+ MyDumpTool::fileDownload($url, $fpath);
+ $mime = MyDumpTool::getMimeType($fpath);
+ switch ($mime) {
+ case 'image/gif':
+ $fpath_ = preg_replace('/.dat$/', '.gif', $fpath);
+ $fname = preg_replace('/.dat$/', '.gif', $fname);
+ rename($fpath, $fpath_);
+ $fpath = $fpath_;
+ break;
+ case 'image/png':
+ $fpath_ = preg_replace('/.dat$/', '.png', $fpath);
+ $fname = preg_replace('/.dat$/', '.png', $fname);
+ rename($fpath, $fpath_);
+ $fpath = $fpath_;
+ break;
+ case 'image/jpeg':
+ $fpath = preg_replace('/.dat$/', '.jpeg', $fpath);
+ $fname = preg_replace('/.dat$/', '.jpeg', $fname);
+ rename($fpath, $fpath_);
+ $fpath = $fpath_;
+ break;
+ default:
+ exit('unknown mime type '.$mime.' found: '.$fname.' from '.$url.PHP_EOL);
+ }
+ ++$imageId;
+
+ return '
';
+ }, $content);
+ $item = [
+ 'id' => $data['id'],
+ 'title' => $data['subject_raw'],
+ 'content' => $content,
+ ];
+ MyDumpTool::saveJson('public/'.$pico.'/'.$data['id'].'.json', $item);
+ $confContents[] = [
+ 'id' => $item['id'],
+ 'title' => $data['subject_raw'],
+ 'cat_id' => (int) $data['cat_id'],
+ 'weight' => (int) $data['weight'],
+ 'link' => $link,
+ ];
+ }
+ }
+ $moduleinfo = [
+ 'name' => $module->get('name'),
+ 'dirname' => $pico,
+ 'message' => $moduleConfig['top_message'],
+ 'show_menuinmoduletop' => (int) $moduleConfig['show_menuinmoduletop'],
+ 'show_listasindex' => (int) $moduleConfig['show_listasindex'],
+ 'show_breadcrumbs' => (int) $moduleConfig['show_breadcrumbs'],
+ 'show_pagenavi' => (int) $moduleConfig['show_pagenavi'],
+ ];
+ MyDumpTool::decode($moduleinfo);
+ $config[] = [
+ 'module' => $moduleinfo,
+ 'categories' => $confCategories,
+ 'contents' => $confContents,
+ ];
+}
diff --git a/etc/dumpXooNIps.php b/etc/dumpXooNIps.php
new file mode 100644
index 0000000..003afe9
--- /dev/null
+++ b/etc/dumpXooNIps.php
@@ -0,0 +1,1160 @@
+prefix();
+
+$table = 'xoonips_item_basic';
+if (!MyDumpTool::tableExists($table)) {
+ exit('xoonips module not found'.PHP_EOL);
+}
+MyDumpTool::makeDirectory('src/database');
+MyDumpTool::makeDirectory('src/database/assets');
+MyDumpTool::makeDirectory('public/database');
+MyDumpTool::makeDirectory('public/database/file');
+
+// Recent Contents
+$sql = <<< SQL
+SELECT
+ `ib`.`item_id`, `ib`.`doi`, `ib`.`last_update_date`,
+ GROUP_CONCAT(DISTINCT `it`.`title` ORDER BY `it`.`title_id` ASC SEPARATOR '\n') AS `title`
+ FROM `${prefix}_xoonips_ranking_new_item` AS `ri`
+ INNER JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `ri`.`item_id`=`ib`.`item_id`
+ INNER JOIN `${prefix}_xoonips_index_item_link` AS `iil` ON `ib`.`item_id`=`iil`.`item_id`
+ INNER JOIN `${prefix}_xoonips_item_title` AS `it` ON `ib`.`item_id`=`it`.`item_id`
+ WHERE `iil`.`certify_state`=2
+ GROUP BY `ib`.`item_id`
+ ORDER BY `ib`.`last_update_date` DESC
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+$ranking = [];
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('item_id', 'last_update_date'));
+ $ranking[] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+MyDumpTool::saveJson('src/database/assets/recent-contents.json', $ranking);
+unset($ranking);
+
+// Rankings
+$ranking = [];
+$rankingLimit = defined('XOONIPS_RANNKING_LIMIT') ? XOONIPS_RANNKING_LIMIT : 10;
+// - most accessed items
+$ranking['accessed'] = [];
+$sql = <<< SQL
+SELECT
+ `ib`.`item_id`, `ib`.`doi`,
+ GROUP_CONCAT(DISTINCT `it`.`title` ORDER BY `it`.`title_id` ASC SEPARATOR '\n') AS `title`,
+ `vi`.`count`
+ FROM `${prefix}_xoonips_ranking_viewed_item` AS `vi`
+ INNER JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `vi`.`item_id`=`ib`.`item_id`
+ INNER JOIN `${prefix}_xoonips_item_title` AS `it` ON `ib`.`item_id`=`it`.`item_id`
+ INNER JOIN `${prefix}_xoonips_index_item_link` AS `iil` ON `ib`.`item_id`=`iil`.`item_id`
+ WHERE `iil`.`certify_state`=2
+ GROUP BY `ib`.`item_id`
+ ORDER BY `vi`.`count` DESC
+ LIMIT ${rankingLimit}
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('item_id', 'count'));
+ $ranking['accessed'][] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+// - most accessed items
+$ranking['downloaded'] = [];
+$sql = <<< SQL
+SELECT
+ `ib`.`item_id`, `ib`.`doi`,
+ GROUP_CONCAT(DISTINCT `it`.`title` ORDER BY `it`.`title_id` ASC SEPARATOR '\n') AS `title`,
+ `di`.`count`
+ FROM `${prefix}_xoonips_ranking_downloaded_item` AS `di`
+ INNER JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `di`.`item_id`=`ib`.`item_id`
+ INNER JOIN `${prefix}_xoonips_item_title` AS `it` ON `ib`.`item_id`=`it`.`item_id`
+ INNER JOIN `${prefix}_xoonips_index_item_link` AS `iil` ON `ib`.`item_id`=`iil`.`item_id`
+ WHERE `iil`.`certify_state`=2
+ GROUP BY `ib`.`item_id`
+ ORDER BY `di`.`count` DESC
+ LIMIT ${rankingLimit}
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('item_id', 'count'));
+ $ranking['downloaded'][] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+// - most contributed users
+$ranking['contributed'] = [];
+$sql = <<< SQL
+SELECT
+ `u`.`uid`, `u`.`uname`, `u`.`name`, COUNT(`cu`.`item_id`) AS `count`
+ FROM `${prefix}_xoonips_ranking_contributing_user` AS `cu`
+ INNER JOIN `${prefix}_users` AS `u` ON `cu`.`uid`=`u`.`uid`
+ GROUP BY `u`.`uid`
+ ORDER BY `count` DESC
+ LIMIT ${rankingLimit}
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('uid', 'count'));
+ $ranking['contributed'][] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+// - most searched keywords
+$ranking['searched'] = [];
+$sql = <<< SQL
+SELECT
+ `sk`.`keyword`, `sk`.`count`
+ FROM `${prefix}_xoonips_ranking_searched_keyword` AS `sk`
+ ORDER BY `sk`.`count` DESC
+ LIMIT ${rankingLimit}
+SQL;
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('count'));
+ $ranking['searched'][] = $row;
+}
+$xoopsDB->freeRecordSet($res);
+MyDumpTool::saveJson('src/database/assets/rankings.json', $ranking);
+unset($ranking);
+
+// get public index with certified item count
+$sql = <<< SQL
+SELECT
+ `idx`.*,
+ `it`.`title`,
+ (SELECT COUNT(*)
+ FROM `${prefix}_xoonips_index_item_link` AS `iil`
+ INNER JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `iil`.`item_id`=`ib`.`item_id`
+ WHERE `iil`.`index_id`=`idx`.`index_id` AND `iil`.`certify_state`=2
+ ) AS `num_items`
+ FROM `${prefix}_xoonips_index` AS `idx`
+ INNER JOIN `${prefix}_xoonips_item_title` AS `it` ON `idx`.`index_id`=`it`.`item_id`
+ WHERE `it`.`title_id`=0
+ AND `idx`.`open_level`=1
+SQL;
+
+$limitItems = array();
+$limitFiles = array();
+
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+$tree = array();
+$root = array();
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ $tree[$row['index_id']] = $row;
+ $root[$row['parent_index_id']][$row['sort_number']] = $row['index_id'];
+}
+$xoopsDB->freeRecordSet($res);
+foreach ($root as &$node) {
+ ksort($node);
+}
+unset($node);
+
+$data[] = getTreeNode($tree, $root, 3);
+MyDumpTool::saveJson('src/database/assets/tree.json', $data);
+unset($data, $root);
+
+// get simpf link data
+$simpflink = parseSimPFLinkFile();
+$simpfurls = [];
+
+// get public items
+$sql = <<< SQL
+SELECT
+ `ib`.*,
+ GROUP_CONCAT(DISTINCT `it`.`title` ORDER BY `it`.`title_id` ASC SEPARATOR '\n') AS `title`,
+ `ity`.`display_name` AS `item_type_display_name`, `ity`.`name` AS `item_type_name`,
+ `u`.`uname`, `u`.`name`, `u`.`email`
+ FROM `${prefix}_xoonips_item_basic` AS `ib`
+ INNER JOIN `${prefix}_xoonips_item_title` AS `it` ON `ib`.`item_id`=`it`.`item_id`
+ INNER JOIN `${prefix}_xoonips_item_type` AS `ity` ON `ib`.`item_type_id`=`ity`.`item_type_id`
+ INNER JOIN `${prefix}_xoonips_index_item_link` AS `iil` ON `ib`.`item_id`=`iil`.`item_id`
+ INNER JOIN `${prefix}_xoonips_index` AS `idx` ON `iil`.`index_id`=`idx`.`index_id`
+ LEFT JOIN `${prefix}_users` AS `u` ON `ib`.`uid`=`u`.`uid`
+ WHERE `ity`.`display_name` != 'Index'
+ AND `iil`.`certify_state`=2
+ AND `idx`.`open_level`=1
+ GROUP BY `ib`.`item_id`
+ ORDER BY `ib`.`item_id` ASC
+SQL;
+
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+$items = array();
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('item_id', 'item_type_id', 'uid', 'last_update_date', 'creation_date', 'publication_year', 'publication_month', 'publication_mday'));
+ $row['index'] = getIndexes($tree, $row['item_id']);
+ if (0 === count($row['index'])) {
+ // no public indexes found.
+ continue;
+ }
+ $row['changelog'] = getChangeLogs($row['item_id']);
+ $row['related_to'] = getRelatedTo($row['item_id']);
+ $row['keyword'] = getKeyword($row['item_id']);
+ $row['file'] = getFile($row['item_id']);
+ switch ($row['item_type_name']) {
+ case 'xnpbinder':
+ appendBinderInfo($row);
+ break;
+ case 'xnpbook':
+ appendBookInfo($row);
+ break;
+ case 'xnpconference':
+ appendConferenceInfo($row);
+ break;
+ case 'xnpdata':
+ appendDataInfo($row);
+ break;
+ case 'xnpfiles':
+ appendFilesInfo($row);
+ break;
+ case 'xnpmemo':
+ appendMemoInfo($row);
+ break;
+ case 'xnpmodel':
+ appendModelInfo($row);
+ break;
+ case 'xnppaper':
+ appendPaperInfo($row);
+ break;
+ case 'xnppresentation':
+ appendPresentationInfo($row);
+ break;
+ case 'xnpsimulator':
+ appendSimulatorInfo($row);
+ break;
+ case 'xnpstimulus':
+ appendStimulusInfo($row);
+ break;
+ case 'xnptool':
+ appendToolInfo($row);
+ break;
+ case 'xnpurl':
+ appendUrlInfo($row);
+ break;
+ case 'xnpnimgcenter':
+ appendNimgcenterInfo($row);
+ break;
+ default:
+ exit('Unsupported item type: '.$row['item_type_name']);
+ }
+ if (isset($row['attachment_dl_limit']) && $row['attachment_dl_limit']) {
+ $found = false;
+ foreach ($row['file'] as $file) {
+ if ('preview' !== $file['file_type_name']) {
+ $limitFiles[] = $file['file_id'];
+ $found = true;
+ }
+ }
+ if ($found) {
+ $limitItems[] = array(
+ 'uname' => $row['uname'],
+ 'name' => $row['name'],
+ 'email' => $row['email'],
+ 'item_id' => $row['item_id'],
+ 'doi' => $row['doi'],
+ );
+ }
+ }
+ MyDumpTool::dropColumn($row, ['email', 'item_type_id']);
+ if (isset($row['rights']) && isset($row['use_cc']) && isset($row['cc_commercial_use']) && isset($row['cc_modification']) && 1 == $row['use_cc']) {
+ $label = 'Creative Commons Attribution';
+ if (0 == $row['cc_commercial_use']) {
+ $label .= '-NonCommercial';
+ }
+ switch ($row['cc_modification']) {
+ case 0:
+ $label .= '-NoDerivatives';
+ break;
+ case 1:
+ $label .= '-ShareAlike';
+ break;
+ }
+ $label .= ' 4.0 International License.';
+ $row['rights'] = $label;
+ }
+ $items[] = $row;
+
+ $simpfurl = '';
+ if ('' != $row['doi'] && isset($simpflink['id'][$row['doi']])) {
+ $simpfurl = $simpflink['id'][$row['doi']];
+ } elseif (isset($simpflink['item_id'][$row['item_id']])) {
+ $simpfurl = $simpflink['item_id'][$row['item_id']];
+ }
+ if ('' !== $simpfurl) {
+ $simpfurls[] = [
+ 'id' => $row['item_id'],
+ 'url' => $simpfurl,
+ ];
+ }
+}
+$xoopsDB->freeRecordSet($res);
+MyDumpTool::saveJson('public/database/items.json', $items);
+if (!empty($simpfurls)) {
+ MyDumpTool::saveJson('src/database/assets/simpf-links.json', $simpfurls);
+}
+
+$fp = fopen(MYDUMPTOOL_OUTPUTDIR.'/dl-limit-items.csv', 'w');
+foreach ($limitItems as $row) {
+ $data = array(
+ $row['item_id'],
+ $row['uname'],
+ $row['name'],
+ $row['email'],
+ getItemUrl($row),
+ );
+ fputcsv($fp, $data);
+}
+fclose($fp);
+
+// get files
+$xconfig_handler = xoonips_getormhandler('xoonips', 'config');
+$fileutil = xoonips_getutility('file');
+
+$basePath = $xconfig_handler->getValue('upload_dir');
+$sql = <<< SQL
+SELECT
+ `f`.`file_id`, `f`.`item_id`, `f`.`original_file_name`,
+ `ft`.`name` AS `file_type_name`
+ FROM `${prefix}_xoonips_file` AS `f`
+ INNER JOIN `${prefix}_xoonips_file_type` AS `ft` ON `f`.`file_type_id`=`ft`.`file_type_id`
+ INNER JOIN `${prefix}_xoonips_index_item_link` AS `iil` ON `f`.`item_id`=`iil`.`item_id`
+ INNER JOIN `${prefix}_xoonips_index` AS `idx` ON `iil`.`index_id`=`idx`.`index_id`
+ WHERE `f`.`is_deleted`=0
+ AND `ft`.`name` NOT IN('readme' , 'license', 'rights')
+ AND `iil`.`certify_state`=2
+ AND `idx`.`open_level`=1
+ GROUP BY `f`.`file_id`
+ ORDER BY `f`.`file_id` ASC
+SQL;
+
+if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+}
+$filesDir = MYDUMPTOOL_OUTPUTDIR.'/public/database/file';
+while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('file_id', 'item_id'));
+ $file_id = $row['file_id'];
+ $item_id = $row['item_id'];
+ $file_name = $row['original_file_name'];
+ $file_type = $row['file_type_name'];
+ if (in_array($file_id, $limitFiles)) {
+ echo "download limit file found.. skip to copy.. item_id:$item_id, file_id:$file_id".PHP_EOL;
+ continue;
+ }
+ $file_dir = $filesDir.'/'.$file_id;
+ $src_file = $basePath.'/'.$file_id;
+ if (!is_dir($file_dir)) {
+ @mkdir($file_dir);
+ }
+ //if (!file_exists($file_dir.'/'.$file_name)) {
+ if (!MyDumpTool::fileCopy($src_file, $file_dir.'/'.$file_name)) {
+ echo 'failed to copy file: '.$basePath.'/'.$file_id.PHP_EOL;
+ }
+ $htaccess = $file_dir.'/.htaccess';
+ $xfilename = str_replace(' ', '\\ ', $file_name);
+ $data = "RewriteEngine On\nRewriteBase /database/file/$file_id\nRewriteCond %{REQUEST_FILENAME} !-f\nRewriteRule .* $xfilename [R=301,L]\n";
+ file_put_contents($htaccess, $data);
+ //}
+ if ('preview' == $file_type) {
+ $thumbnail_file = $file_dir.'.png';
+ if (!file_exists($thumbnail_file)) {
+ $mimetype = $fileutil->get_mimetype($src_file, $file_name);
+ $thumbnail = $fileutil->get_thumbnail($src_file, $mimetype);
+ if (null !== $thumbnail) {
+ file_put_contents($thumbnail_file, $thumbnail);
+ } else {
+ createThumbnail($src_file, $mimetype, $thumbnail_file);
+ }
+ }
+ }
+}
+$xoopsDB->freeRecordSet($res);
+
+// functions
+
+function getItemUrl($row)
+{
+ $url = XOONIPS_URL.'/detail.php?';
+ if ('' != $row['doi']) {
+ $url .= XNP_CONFIG_DOI_FIELD_PARAM_NAME.'='.$row['doi'];
+ } else {
+ $url .= 'item_id='.$row['item_id'];
+ }
+
+ return $url;
+}
+
+function getTreeNode($tree, $root, $index_id)
+{
+ $children = array();
+ if (isset($root[$index_id])) {
+ foreach ($root[$index_id] as $child_index_id) {
+ $children[] = getTreeNode($tree, $root, $child_index_id);
+ }
+ }
+
+ return array(
+ 'id' => (int) $tree[$index_id]['index_id'],
+ 'title' => $tree[$index_id]['title'],
+ 'num_of_items' => (int) $tree[$index_id]['num_items'],
+ 'children' => $children,
+ );
+}
+
+function getIndexes($tree, $item_id)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $sql = <<< SQL
+SELECT
+ `iil`.`index_id`
+ FROM `${prefix}_xoonips_index_item_link` AS `iil`
+ WHERE `iil`.`item_id`=$item_id
+ ORDER BY `iil`.`index_id`
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $indexes = array();
+ while ($row = $xoopsDB->fetchArray($res)) {
+ $index_id = $row['index_id'];
+ if (isset($tree[$index_id])) {
+ $idxes = array();
+ $idxes[] = $tree[$index_id]['title'];
+ $parent_id = $tree[$index_id]['parent_index_id'];
+ while (1 != $parent_id) {
+ $idxes[] = $tree[$parent_id]['title'];
+ $parent_id = $tree[$parent_id]['parent_index_id'];
+ }
+ $idxes[] = '';
+ $indexes[] = array(
+ 'index_id' => (int) $index_id,
+ 'title' => trim(implode(' / ', array_reverse($idxes))),
+ );
+ }
+ }
+ $xoopsDB->freeRecordSet($res);
+
+ return $indexes;
+}
+
+function getChangeLogs($item_id)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $sql = <<< SQL
+SELECT `log_date`, `log`
+ FROM `${prefix}_xoonips_changelog`
+ WHERE `item_id`=$item_id
+ ORDER BY `log_date` DESC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $ret = array();
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('log_date'));
+ $ret[] = $row;
+ }
+ $xoopsDB->freeRecordSet($res);
+
+ return $ret;
+}
+
+function getRelatedTo($item_id)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $sql = <<< SQL
+SELECT `item_id`
+ FROM `${prefix}_xoonips_related_to`
+ WHERE `parent_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $ret = array();
+ while ($row = $xoopsDB->fetchArray($res)) {
+ $ret[] = (int) $row['item_id'];
+ }
+ $xoopsDB->freeRecordSet($res);
+
+ return $ret;
+}
+
+function getKeyword($item_id)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xoonips_item_keyword`
+ WHERE `item_id`=$item_id
+ ORDER BY `keyword_id` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $ret = array();
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ $ret[] = $row['keyword'];
+ }
+ $xoopsDB->freeRecordSet($res);
+
+ return $ret;
+}
+
+function getFile($item_id)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $sql = <<< SQL
+SELECT `f`.`file_id`, `f`.`original_file_name`, `f`.`mime_type`, `f`.`file_size`, `f`.`caption`, `f`.`timestamp`,
+ `ft`.`name` AS `file_type_name`, `ft`.`display_name` AS `file_type_display_name`
+ FROM `${prefix}_xoonips_file` AS `f`
+ INNER JOIN `${prefix}_xoonips_file_type` AS `ft` ON `f`.`file_type_id`=`ft`.`file_type_id`
+ WHERE `item_id`=$item_id
+ AND `is_deleted`=0
+ ORDER BY `ft`.`name` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $ret = array();
+ while ($row = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($row);
+ MyDumpTool::convertToInt($row, array('file_id', 'file_size'));
+ $ret[] = $row;
+ }
+ $xoopsDB->freeRecordSet($res);
+
+ return $ret;
+}
+
+function appendBinderInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpbinder_item_detail`
+ WHERE `binder_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('binder_id'));
+ MyDumpTool::dropColumn($detail, ['binder_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendBookInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpbook_item_detail`
+ WHERE `book_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('book_id', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::convertToInt($detail, array('volume', 'number')); // for CBSN
+ MyDumpTool::dropColumn($detail, ['book_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpbook_author`
+ WHERE `book_id`=$item_id
+ ORDER BY `author_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['author'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['author'][] = $author['author'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendConferenceInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpconference_item_detail`
+ WHERE `conference_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('conference_id', 'conference_from_year', 'conference_from_month', 'conference_from_mday', 'conference_to_year', 'conference_to_month', 'conference_to_mday', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['conference_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpconference_author`
+ WHERE `conference_id`=$item_id
+ ORDER BY `author_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['author'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['author'][] = $author['author'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendDataInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpdata_item_detail`
+ WHERE `data_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('data_id', 'use_cc', 'cc_commercial_use', 'cc_modification', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['data_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpdata_experimenter`
+ WHERE `data_id`=$item_id
+ ORDER BY `experimenter_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['experimenter'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['experimenter'][] = $author['experimenter'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendFilesInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpfiles_item_detail`
+ WHERE `files_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('files_id'));
+ MyDumpTool::dropColumn($detail, ['files_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendMemoInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpmemo_item_detail`
+ WHERE `memo_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('memo_id'));
+ MyDumpTool::dropColumn($detail, ['memo_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendModelInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpmodel_item_detail`
+ WHERE `model_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('model_id', 'use_cc', 'cc_commercial_use', 'cc_modification', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['model_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpmodel_creator`
+ WHERE `model_id`=$item_id
+ ORDER BY `creator_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['creator'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['creator'][] = $author['creator'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendPaperInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnppaper_item_detail`
+ WHERE `paper_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('paper_id', 'volume', 'number'));
+ MyDumpTool::dropColumn($detail, ['paper_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnppaper_author`
+ WHERE `paper_id`=$item_id
+ ORDER BY `author_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['author'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['author'][] = $author['author'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendPresentationInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnppresentation_item_detail`
+ WHERE `presentation_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('presentation_id', 'use_cc', 'cc_commercial_use', 'cc_modification', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['presentation_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnppresentation_creator`
+ WHERE `presentation_id`=$item_id
+ ORDER BY `creator_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['creator'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['creator'][] = $author['creator'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendSimulatorInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpsimulator_item_detail`
+ WHERE `simulator_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('simulator_id', 'use_cc', 'cc_commercial_use', 'cc_modification', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['simulator_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpsimulator_developer`
+ WHERE `simulator_id`=$item_id
+ ORDER BY `developer_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['developer'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['developer'][] = $author['developer'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendStimulusInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpstimulus_item_detail`
+ WHERE `stimulus_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('stimulus_id', 'use_cc', 'cc_commercial_use', 'cc_modification', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['stimulus_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpstimulus_developer`
+ WHERE `stimulus_id`=$item_id
+ ORDER BY `developer_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['developer'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['developer'][] = $author['developer'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendToolInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnptool_item_detail`
+ WHERE `tool_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('tool_id', 'use_cc', 'cc_commercial_use', 'cc_modification', 'attachment_dl_limit', 'attachment_dl_notify'));
+ MyDumpTool::dropColumn($detail, ['tool_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnptool_developer`
+ WHERE `tool_id`=$item_id
+ ORDER BY `developer_order` ASC
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['developer'] = array();
+ while ($author = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($author);
+ $row['developer'][] = $author['developer'];
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendUrlInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpurl_item_detail`
+ WHERE `url_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ MyDumpTool::convertToInt($detail, array('url_id', 'url_count'));
+ MyDumpTool::dropColumn($detail, ['url_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function appendNimgcenterInfo(&$row)
+{
+ global $xoopsDB;
+ $prefix = $xoopsDB->prefix();
+ $item_id = $row['item_id'];
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpnimgcenter_item_detail`
+ WHERE `nimgcenter_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ while ($detail = $xoopsDB->fetchArray($res)) {
+ MyDumpTool::decode($detail);
+ $detail['coord_type_name'] = (0 === $detail['coord_type']) ? 'Talairach' : 'MNI';
+ MyDumpTool::dropColumn($detail, ['nimgcenter_id']);
+ $row += $detail;
+ }
+ $xoopsDB->freeRecordSet($res);
+ $sql = <<< SQL
+SELECT *
+ FROM `${prefix}_xnpnimgcenter_talairach_list`
+ WHERE `nimgcenter_id`=$item_id
+SQL;
+ if (!($res = $xoopsDB->query($sql))) {
+ var_dump($xoopsDB);
+ exit();
+ }
+ $row['coordinate'] = array();
+ while ($t = $xoopsDB->fetchArray($res)) {
+ $row['coordinate'][] = $t;
+ }
+ $xoopsDB->freeRecordSet($res);
+}
+
+function createThumbnail($inputFile, $mime_type, $outputFile)
+{
+ $finfo = finfo_open(FILEINFO_NONE);
+ $label = finfo_file($finfo, $inputFile);
+ finfo_close($finfo);
+ if (preg_match('/^([^\\/]*)\\/(.*)$/', $mime_type, $matches)) {
+ if ('audio' == $matches[1]) {
+ $img_type = 'audio';
+ } elseif ('image' == $matches[1]) {
+ $img_type = 'image';
+ } elseif ('video' == $matches[1]) {
+ $img_type = 'video';
+ } elseif ('text' == $matches[1]) {
+ $img_type = 'text';
+ } elseif ('application' == $matches[1]) {
+ $text_types = array('pdf', 'xml', 'msword', 'vnd.ms-excel');
+ $image_types = array('vnd.ms-powerpoint', 'postscript');
+ $audio_types = array('vnd.rn-realmedia');
+ if (in_array($matches[2], $text_types)) {
+ $img_type = 'text';
+ } elseif (in_array($matches[2], $audio_types)) {
+ $img_type = 'audio';
+ } elseif (in_array($matches[2], $image_types)) {
+ $img_type = 'image';
+ } else {
+ $img_type = 'application';
+ }
+ } else {
+ $img_type = 'unknown';
+ }
+ } else {
+ $img_type = 'unknown';
+ }
+ $img_file = XOOPS_ROOT_PATH.'/modules/xoonips/images/thumbnail_'.$img_type.'.png';
+ // create image resource
+ $w = 100;
+ $h = 100;
+ $im = imagecreatetruecolor($w, $h);
+ // label setting
+ $f = 2;
+ // font number
+ $lp = 5;
+ // label padding
+ $fw = imagefontwidth($f);
+ // font width
+ $fh = imagefontheight($f);
+ // font height
+ $fmaxlen = ($w - $lp * 2) / $fw;
+ // max label length
+ $labels = explode(',', $label);
+ $label = $labels[0];
+ $llen = strlen($label);
+ if ($llen > $fmaxlen) {
+ $label = substr($label, 0, $fmaxlen - 3);
+ $label .= '...';
+ $llen = strlen($label);
+ }
+ $lx = ($w - $llen * $fw) / 2;
+ $ly = $h - $fh - $lp;
+ // change alpha attributes and create transparent color
+ imageantialias($im, true);
+ imagealphablending($im, false);
+ imagesavealpha($im, true);
+ $transparent = imagecolorallocatealpha($im, 255, 255, 255, 0);
+ $col_white = imagecolorallocate($im, 255, 255, 255);
+ $col_gray = imagecolorallocate($im, 127, 127, 127);
+ $col_black = imagecolorallocate($im, 0, 0, 0);
+ // fill all area with transparent color
+ imagefill($im, 0, 0, $col_white);
+ imagealphablending($im, true);
+ $imicon = imagecreatefrompng($img_file);
+ imagecopy($im, $imicon, $w / 2 - 48 / 2, $h / 2 - 48 / 2, 0, 0, 48, 48);
+ imagepolygon($im, array(0, 0, $w - 1, 0, $w - 1, $h - 1, 0, $h - 1), 4, $col_gray);
+ if (0 != strlen($label)) {
+ imagestring($im, $f, $lx, $ly, $label, $col_black);
+ }
+ imagepng($im, $outputFile);
+ imagedestroy($imicon);
+ imagedestroy($im);
+
+ return true;
+}
+
+function parseSimPFLinkFile()
+{
+ global $XOONIPS_SIMPF_LINKFILE;
+ $xoops_url_path = parse_url(XOOPS_URL, PHP_URL_PATH);
+ $ret = [];
+ if (isset($XOONIPS_SIMPF_LINKFILE) && file_exists($XOONIPS_SIMPF_LINKFILE)) {
+ $lines = file($XOONIPS_SIMPF_LINKFILE);
+ foreach ($lines as $line) {
+ list($pfname, $pfurl, $simpfurl) = explode(',', $line);
+ if (preg_match('/^'.preg_quote(XOOPS_URL, '/').'/', $pfurl)) {
+ $pUrl = parse_url($pfurl);
+ if ($pUrl['path'] != $xoops_url_path.'/modules/xoonips/detail.php') {
+ echo 'not xoonips url found in simpf link file. URL:'.$pfurl.PHP_EOL;
+ continue;
+ }
+ if (preg_match('/(?:^|&)(id|item_id)=([^$&]+)/', $pUrl['query'], $matches)) {
+ $key = $matches[1];
+ $value = $matches[2];
+ $ret[$key][$value] = trim($simpfurl);
+ }
+ }
+ }
+ }
+
+ return $ret;
+}
diff --git a/etc/simpflink.csv b/etc/simpflink.csv
new file mode 100644
index 0000000..86cd994
--- /dev/null
+++ b/etc/simpflink.csv
@@ -0,0 +1,465 @@
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6045,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=25
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=909,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=27
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1648,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=28
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=913,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=29
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1623,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=30
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1620,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=32
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=896,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=33
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=2434,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=34
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=2441,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=35
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=5307,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=37
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?id=943,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=38
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=403,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=39
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=398,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=40
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=350,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=41
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=366,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=43
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=370,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=44
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=361,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=45
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=4449054b,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=46
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6110,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=47
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=7252867b,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=48
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6105,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=49
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=2861,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=50
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=16625198b,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=51
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6422,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=52
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=19281836b,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=53
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=7941380b,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=54
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6448,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=55
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6106,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=56
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1027,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=57
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1030,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=58
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1031,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=59
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1033,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=61
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1034,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=62
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1035,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=63
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1036,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=64
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1037,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=65
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1038,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=66
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1041,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=67
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1042,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=68
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1043,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=69
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1044,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=70
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1045,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=71
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1046,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=72
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1047,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=73
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1048,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=74
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1051,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=76
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1052,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=77
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1054,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=78
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1056,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=79
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1057,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=80
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1059,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=81
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1060,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=82
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1061,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=83
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1062,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=84
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1064,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=85
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1065,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=86
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1066,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=87
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1067,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=114
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1068,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=116
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1069,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=117
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1071,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=119
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1073,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=121
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1076,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=124
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1077,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=125
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1078,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=126
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1079,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=127
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=296,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=128
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=5586,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=129
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=297,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=130
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1080,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=131
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1081,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=132
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1082,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=133
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1084,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=134
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1085,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=135
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1086,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=136
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1087,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=137
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1088,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=138
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1089,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=139
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1098,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=140
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1099,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=141
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1100,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=142
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1101,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=143
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1102,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=144
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1103,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=145
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1105,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=146
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1106,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=147
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1107,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=148
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1108,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=149
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1109,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=150
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1110,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=151
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1111,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=152
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1112,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=153
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1113,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=154
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1114,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=155
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1115,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=156
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1119,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=159
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1120,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=160
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1121,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=161
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1122,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=162
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1123,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=163
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1124,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=164
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1125,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=165
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1127,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=167
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1128,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=168
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1129,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=169
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1130,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=170
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1131,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=171
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1132,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=172
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1134,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=174
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1135,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=175
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1136,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=176
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1137,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=177
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1138,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=178
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1139,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=179
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1140,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=180
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1141,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=181
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1142,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=182
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1143,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=183
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1144,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=184
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1146,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=186
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1147,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=187
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1148,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=188
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1149,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=189
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1150,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=190
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1152,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=192
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1153,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=193
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1154,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=194
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1156,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=195
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1157,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=196
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1159,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=198
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1160,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=199
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1161,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=200
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1162,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=201
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1163,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=202
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1164,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=203
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1165,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=204
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1166,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=205
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1167,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=206
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1168,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=207
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1169,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=208
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1170,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=209
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1171,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=210
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1173,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=212
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1174,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=213
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1175,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=214
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1176,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=215
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1177,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=216
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1178,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=217
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1179,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=218
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1180,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=219
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1181,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=220
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1182,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=221
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1183,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=222
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1184,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=223
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1185,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=224
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1186,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=225
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1187,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=226
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1188,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=227
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1189,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=228
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1190,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=229
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1191,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=230
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1192,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=231
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1193,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=232
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=15929656d,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=233
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=376,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=234
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=298,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=235
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1629,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=236
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1647,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=237
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1209,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=239
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1210,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=240
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1211,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=241
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1212,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=242
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1213,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=243
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1214,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=244
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1215,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=245
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1216,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=246
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1218,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=248
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1219,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=249
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1220,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=250
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1222,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=251
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1223,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=252
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1224,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=253
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1225,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=254
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1226,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=255
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1227,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=256
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1228,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=257
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1230,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=258
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1231,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=259
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1232,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=260
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1233,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=261
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1234,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=262
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1235,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=263
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1236,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=264
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1237,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=265
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1238,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=266
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1239,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=267
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1240,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=268
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1241,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=269
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1242,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=270
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1243,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=271
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1244,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=272
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1245,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=273
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1246,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=274
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1247,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=275
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1248,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=276
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1251,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=279
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1252,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=280
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1255,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=281
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1256,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=282
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1257,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=283
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1258,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=284
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1262,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=286
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1263,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=287
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1264,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=288
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1265,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=289
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1266,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=290
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1268,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=292
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1269,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=293
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1270,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=294
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1271,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=295
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1272,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=296
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1273,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=297
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1278,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=302
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1279,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=303
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1280,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=304
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1281,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=305
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1282,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=306
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1283,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=307
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1284,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=308
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1285,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=309
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1286,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=310
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1287,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=311
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1288,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=312
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1289,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=313
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1291,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=315
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1292,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=316
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1293,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=317
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1294,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=318
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1295,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=319
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1296,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=320
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1298,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=322
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1299,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=323
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1300,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=324
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1302,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=326
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1306,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=330
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1312,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=336
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1313,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=337
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1314,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=338
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1315,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=339
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=162,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=341
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=5936,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=342
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/558/weaverWearne06.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=360
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=4449054c,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=367
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1039,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=416
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1040,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=417
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=7051,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=444
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1427,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=485
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1425,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=486
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1424,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=487
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1423,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=488
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1422,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=489
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1421,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=490
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1420,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=491
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1419,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=492
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1418,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=493
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1417,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=494
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1416,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=496
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1415,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=497
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1362,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=498
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1414,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=499
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1363,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=500
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1413,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=501
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1411,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=502
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1409,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=503
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1365,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=504
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1369,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=505
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1408,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=506
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1406,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=507
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1362,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=511
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1364,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=514
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1367,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=515
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1366,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=516
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1405,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=517
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1364,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=518
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1401,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=519
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1415,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=520
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1368,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=521
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1399,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=523
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1370,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=524
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1398,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=525
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1371,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=526
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1397,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=527
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1396,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=528
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1372,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=529
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1373,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=530
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1374,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=531
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1375,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=532
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1376,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=533
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1380,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=534
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1395,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=535
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1394,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=536
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1393,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=537
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1392,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=538
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1391,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=539
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1390,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=540
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1389,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=541
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1387,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=542
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1386,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=543
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1385,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=544
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1384,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=545
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1382,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=546
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1381,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=547
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1362,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=550
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1363,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=551
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1364,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=552
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1365,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=553
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1366,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=554
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1367,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=555
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1368,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=556
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1369,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=557
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1370,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=558
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1371,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=559
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1372,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=560
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1374,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=562
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1375,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=563
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1376,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=564
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1379,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=565
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1380,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=566
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1381,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=567
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1382,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=568
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1384,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=569
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1385,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=571
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1386,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=572
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1387,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=573
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1045,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=574
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1389,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=575
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1390,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=576
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1391,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=577
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1392,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=578
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1393,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=579
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1394,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=580
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1395,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=581
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1396,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=582
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1397,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=583
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1398,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=584
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1399,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=585
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1400,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=586
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1401,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=587
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1402,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=588
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1405,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=589
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1409,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=590
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1409,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=591
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1411,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=592
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1413,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=593
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1414,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=594
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1415,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=595
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1416,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=596
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1418,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=598
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1419,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=599
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1420,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=600
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1421,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=601
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1422,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=602
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1423,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=603
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1424,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=604
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1425,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=605
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1427,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=606
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1428,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=607
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1429,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=608
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1430,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=609
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1431,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=610
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1432,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=611
+visiome,https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=7252,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=612
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1434,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=613
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1435,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=614
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1450,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=615
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1452,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=616
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1453,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=617
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1454,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=618
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1455,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=619
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1458,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=620
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1460,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=621
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1461,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=622
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1462,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=623
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1463,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=624
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1466,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=625
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1465,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=626
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1467,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=627
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1470,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=628
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1471,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=629
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1472,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=630
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1473,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=631
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1474,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=632
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1476,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=633
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1477,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=634
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1479,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=635
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1481,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=636
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1482,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=637
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1483,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=638
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1486,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=639
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1487,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=640
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1488,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=641
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1489,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=642
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1490,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=643
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1493,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=644
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1496,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=645
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1497,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=646
+cerebellum,https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1498,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=647
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/533/SundtEtAl2015.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=656
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/536/baker_etal_JCNS_2010.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=657
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/538/CS56PyModelDB.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=659
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/539/TCconvergenceModel.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=660
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/540/BahlEtAl2012.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=661
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/541/ACh_ModelDB.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=662
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/543/OLMmodel_r3.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=664
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/548/GentilettiEtAl2016.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=668
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/556/FUS_model.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=677
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/560/ShepherdBrayton1979.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=680
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/561/gc-1.1_r2.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=681
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/564/VladimirovTuTraub2012.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=683
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/565/xiaoshenli.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=684
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/566/kv72-R213QW-mutations_r2.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=685
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/567/Ih_current.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=686
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/569/Schizophr.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=687
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/570/SaudargieneEtAl2015.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=688
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/571/bpap.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=689
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/572/magical7.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=691
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/575/HyunEtAl2015.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=696
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/576/MasurkarChen2011_r1.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=697
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/577/Nakano_FICN_model_r1.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=698
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/582/AshhadNarayanan2013.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=699
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/583/DiFrancescoNoble1985.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=700
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/584/DGC.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=701
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/586/DG_BC.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=703
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/587/DRG_Devor.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=704
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/588/Kv72_ModelDB.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=705
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/589/SousaEtAl2014.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=706
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/590/MiglioreEtAl2015.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=707
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/592/Chloride_Model.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=708
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/593/MiglioreEJN2016_r2.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=709
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/595/Moore2015.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=711
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/597/FFI_CA1_r3.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=713
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/598/stadler2014_layerV_r1.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=714
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/600/2VN.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=716
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/602/Branch_Point_Tapering.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=718
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/604/MenonEtAl2009_r1.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=720
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/606/CA3Atrophy.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=722
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/607/Gorin_et_al_2016.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=723
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/608/Poleg-PolskyDiamond2011.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=724
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/613/Demo.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=728
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/614/ShortEtAl2016.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=729
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/618/Casaleggio2014.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=733
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/623/MiglioreMcTavish2013.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=736
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/624/KimEtAl2017.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=737
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/626/fig1b.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=738
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/627/cortex_r1.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=739
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/629/oltedal.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=741
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/632/ka_rgc.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=744
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/634/na_rgc.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=745
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/636/V1_PFC_ModelDB.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=747
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/640/moore83.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=751
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/642/SpaceClampDemo.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=753
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/644/anderson.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=755
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/645/VNO.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=756
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/645/VNO.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=757
+cns,https://cns.neuroinf.jp/modules/fmanager/index.php/view/647/Watanabe-et-al_2017_r1.zip,http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=758
diff --git a/package.json b/package.json
index 4c2ffce..9f1efe3 100644
--- a/package.json
+++ b/package.json
@@ -1,16 +1,41 @@
{
"name": "cerebellum",
- "version": "0.1.0",
+ "version": "1.0.0",
"private": true,
"dependencies": {
+ "@types/async-lock": "^1.1.1",
"@types/jest": "24.0.15",
- "@types/node": "12.0.12",
+ "@types/lokijs": "^1.5.2",
+ "@types/node": "12.6.2",
+ "@types/rc-tree": "^1.11.3",
"@types/react": "16.8.23",
"@types/react-dom": "16.8.4",
+ "@types/react-helmet": "^5.0.8",
+ "@types/react-html-parser": "^2.0.0",
+ "@types/react-overlays": "^1.1.3",
+ "@types/react-router-dom": "^4.3.4",
+ "@types/react-router-hash-link": "^1.2.1",
+ "@types/xregexp": "^3.0.30",
+ "async-lock": "^1.2.0",
+ "axios": "^0.19.0",
+ "lokijs": "^1.5.6",
+ "moment": "^2.24.0",
+ "rc-tree": "^2.1.0",
"react": "^16.8.6",
+ "react-app-polyfill": "^1.0.1",
+ "react-cookie": "^4.0.1",
"react-dom": "^16.8.6",
+ "react-ga": "^2.6.0",
+ "react-helmet": "^5.2.1",
+ "react-html-parser": "^2.0.2",
+ "react-image-lightbox": "^5.1.0",
+ "react-overlays": "^1.2.0",
+ "react-router-dom": "^5.0.1",
+ "react-router-hash-link": "^1.2.1",
"react-scripts": "3.0.1",
- "typescript": "3.5.2"
+ "react-spinner-material": "^1.1.1",
+ "typescript": "3.5.3",
+ "xregexp": "^4.2.4"
},
"scripts": {
"start": "react-scripts start",
@@ -25,12 +50,14 @@
"production": [
">0.2%",
"not dead",
- "not op_mini all"
+ "not op_mini all",
+ "ie 11"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
- "last 1 safari version"
+ "last 1 safari version",
+ "ie 11"
]
}
}
diff --git a/public/favicon.ico b/public/favicon.ico
index a11777c..b80cec5 100644
Binary files a/public/favicon.ico and b/public/favicon.ico differ
diff --git a/public/index.html b/public/index.html
index dd1ccfd..d2960d0 100644
--- a/public/index.html
+++ b/public/index.html
@@ -5,34 +5,15 @@
-
+
+
+
+
-
- React App
+ Cerebellar Platform - Official Site
-