first commit.

This commit is contained in:
Yoshihiro OKUMURA 2022-06-20 17:51:03 +09:00
commit 03456410f8
297 changed files with 26335 additions and 0 deletions

28
.gitignore vendored Normal file
View File

@ -0,0 +1,28 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
.eslintcache
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# database contents
/public/modules
#/src/xoonips/assets/*.json

45
README.md Normal file
View File

@ -0,0 +1,45 @@
# NeuroImaging Platform
React project for nimg.neuroinf.jp
## Available Scripts
In the project directory, you can run:
### `npm start`
Runs the app in the development mode.<br>
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
The page will reload if you make edits.<br>
You will also see any lint errors in the console.
### `npm test`
Launches the test runner in the interactive watch mode.<br>
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
### `npm run build`
Builds the app for production to the `build` folder.<br>
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.<br>
Your app is ready to be deployed!
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
### `npm run eject`
**Note: this is a one-way operation. Once you `eject`, you cant go back!**
If you arent satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point youre on your own.
You dont have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldnt feel obligated to use this feature. However we understand that this tool wouldnt be useful if you couldnt customize it when you are ready for it.
## Learn More
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
To learn React, check out the [React documentation](https://reactjs.org/).

324
etc/common.inc.php Normal file
View File

@ -0,0 +1,324 @@
<?php
require_once __DIR__.'/config.inc.php';
define('PROTECTOR_SKIP_DOS_CHECK', 1);
define('PROTECTOR_SKIP_FILESCHECKER', 1);
// disable query logger
define('XOOPS_LOGGER_ADDQUERY_DISABLED', true);
// ----
if (!file_exists($mainfile)) {
echo 'ERROR : mainfile.php not found'.PHP_EOL;
exit(1);
}
$xoops_path = '';
$xoops_url = '';
foreach (file($mainfile) as $line) {
if (preg_match('/^\s*define\s*\(\s*[\'"]XOOPS_ROOT_PATH[\'"]\s*,\s*[\'"](.+)[\'"]\)\s*;\s*$/', $line, $matches)) {
$xoops_path = $matches[1];
}
if (preg_match('/^\s*define\s*\(\s*[\'"]XOOPS_URL[\'"]\s*,\s*[\'"](.+)[\'"]\)\s*;\s*$/', $line, $matches)) {
$xoops_url = $matches[1];
}
}
if (isset($method) && 'POST' == strtoupper($method)) {
$method = 'POST';
} else {
$method = 'GET';
}
$_SERVER['HTTP_USER_AGENT'] = 'php-cli';
$_SERVER['REQUEST_METHOD'] = $method;
$_ENV['HTTP_REFERER'] = $xoops_url.'/index.php';
$_SERVER['QUERY_STRING'] = '/index.php';
$_SERVER['REMOTE_ADDR'] = '192.168.0.1';
if (file_exists($xoops_path.'/modules/xoonips/include/common.inc.php')) {
require_once $xoops_path.'/modules/xoonips/include/common.inc.php';
} else {
require_once $xoops_path.'/mainfile.php';
require_once $xoops_path.'/modules/xoonips/condefs.php';
require_once $xoops_path.'/modules/xoonips/include/functions.php';
}
if (defined('XOOPS_DB_PROXY') && XOOPS_DB_PROXY == 1 && 'POST' == $method) {
die('Error: not accept POST request'."\n");
}
error_reporting(E_ALL);
// remove ob fileters
while (ob_get_level()) {
ob_end_clean();
}
define('MYDUMPTOOL_OUTPUTDIR', __DIR__.'/data');
MyDumpTool::makeDirectory('');
MyDumpTool::makeDirectory('src');
MyDumpTool::makeDirectory('public');
class MyDumpTool
{
public static function decode(&$data)
{
foreach ($data as $k => $v) {
if (is_string($v)) {
$v = html_entity_decode($v, ENT_QUOTES | ENT_HTML5);
$v = mb_decode_numericentity($v, [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,
'drop-proprietary-attributes' => true,
'logical-emphasis' => true,
'wrap' => 0,
'input-encoding' => 'utf8',
'output-encoding' => 'utf8',
'output-bom' => false,
];
$text = tidy_repair_string($text, $config);
$text = preg_replace('/<table([^>]*)>((?:\s*<caption[^>]*>.*<\/caption>)?\s*)<tr([^>]*)>/Us', '<table\1>\2<tbody><tr\3>', $text);
$text = preg_replace('/<\/tr>(\s*)<\/table>/s', '</tr></tbody>\1</table>', $text);
$text = tidy_repair_string($text, $config);
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($dirname)
{
$path = MYDUMPTOOL_OUTPUTDIR.('' !== $dirname ? '/'.$dirname : '');
if (!is_dir($path)) {
if (!@mkdir($path, 0755, true)) {
exit('Failed to create directory: '.$path.PHP_EOL);
}
}
}
public static function saveJson($fname, $data)
{
$path = MYDUMPTOOL_OUTPUTDIR.'/'.$fname;
$data = json_encode($data, JSON_UNESCAPED_UNICODE);
if (false === $data) {
echo json_last_error_msg().PHP_EOL;
exit('Failed to encode json data: '.$path.PHP_EOL);
}
if (false === file_put_contents($path, $data)) {
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, 10);
$ret = curl_exec($curl);
fclose($fp);
if (false === $ret) {
unlink($fpath);
echo 'Failed to download file, unexpected error: '.$url.PHP_EOL;
return false;
}
$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if (200 !== $code) {
unlink($fpath);
echo 'Failed to download file, invalid status code('.$code.'): '.$url.PHP_EOL;
return false;
}
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;
}
public static function getModule($dirname)
{
$moduleHandler = xoops_gethandler('module');
$moduleObj = $moduleHandler->getByDirname($dirname);
return [
'id' => (int) $moduleObj->get('mid'),
'name' => $moduleObj->get('name'),
'dirname' => $moduleObj->get('dirname'),
'version' => (int) $moduleObj->get('version'),
'lastupdate' => (int) $moduleObj->get('last_update'),
];
}
public static function canModuleRead($dirname, $uid)
{
$moduleHandler = xoops_gethandler('module');
$moduleObj = $moduleHandler->getByDirname($dirname);
$moduleId = (int) $moduleObj->get('mid');
$memberHandler = xoops_gethandler('member');
$groupIds = 0 === $uid ? [XOOPS_GROUP_ANONYMOUS] : $memberHandler->getGroupsByUser($uid);
$groupPermHandler = xoops_gethandler('groupperm');
$ret = $groupPermHandler->checkRight('module_read', $moduleId, $groupIds);
return $ret;
}
public static function mlang($s, $url, $lang)
{
if (!defined('CUBE_UTILS_ML_LANGS')) {
exit('Error: cubeUtils is not loaded'.PHP_EOL);
}
$mLanguage = $lang;
$mLanguages = explode(',', CUBE_UTILS_ML_LANGS);
$mLanguageNames = explode(',', CUBE_UTILS_ML_LANGNAMES);
// escape brackets inside of <input type="text" value="...">
$s = preg_replace_callback('/(\<input)([^>]*)(\>)/isU', 'self::mlang_escapeBracketTextBox', $s);
// escape brackets inside of <textarea></textarea>
$s = preg_replace_callback('/(\<textarea[^>]*\>)(.*)(<\/textarea\>)/isU', 'self::mlang_escapeBracket', $s);
// multilanguage image tag
$langimages = explode(',', CUBE_UTILS_ML_LANGIMAGES);
$langnames = explode(',', CUBE_UTILS_ML_LANGNAMES);
@list($url, $query) = explode('?', $url);
if (empty($query)) {
$link_base = '?'.CUBE_UTILS_ML_PARAM_NAME.'=';
} elseif (false === ($pos = strpos($query, CUBE_UTILS_ML_PARAM_NAME.'='))) {
$link_base = '?'.htmlspecialchars($query, ENT_QUOTES).'&amp;'.CUBE_UTILS_ML_PARAM_NAME.'=';
} elseif ($pos < 2) {
$link_base = '?'.CUBE_UTILS_ML_PARAM_NAME.'=';
} else {
$link_base = '?'.htmlspecialchars(substr($query, 0, $pos - 1), ENT_QUOTES).'&amp;'.CUBE_UTILS_ML_PARAM_NAME.'=';
}
$link_base = $url.$link_base;
$langimage_html = '';
foreach ($mLanguages as $l => $lang) {
$langimage_html .= '<a rel="nofollow" href="'.$link_base.$lang.'"><img src="'.XOOPS_URL.'/'.$langimages[$l].'" alt="flag" title="'.$langnames[$l].'" /></a>';
}
$s = preg_replace('/\['.CUBE_UTILS_ML_IMAGETAG.'\]/', $langimage_html, $s);
$s = preg_replace('/\['.CUBE_UTILS_ML_URLTAG.':([^\]]*?)\]/', $link_base.'$1', $s);
// simple pattern to strip selected lang_tags
$s = preg_replace('/\[(\/)?([^\]]+\|)?'.preg_quote($mLanguage).'(\|[^\]]+)?\](\<br \/\>)?/i', '', $s);
// eliminate description between the other language tags.
foreach ($mLanguages as $lang) {
if ($mLanguage == $lang) {
continue;
}
$s = preg_replace_callback('/\[(?:^\/[^\]]+\|)?'.preg_quote($lang).'(?:\|[^\]]+)?\].*\[\/(?:^\/[^\]]+\|)?'.preg_quote($lang).'(?:\|[^\]]+)?(?:\]\<br \/\>|\])/isU', 'self::mlang_checkNeverCross', $s);
}
// escape brackets inside of <input type="text" value="...">
$s = preg_replace_callback('/(\<input)([^>]*)(\>)/isU', 'self::mlang_unEscapeBracketTextBox', $s);
// escape brackets inside of <textarea></textarea>
$s = preg_replace_callback('/(\<textarea[^>]*\>)(.*)(<\/textarea\>)/isU', 'self::mlang_unEscapeBracket', $s);
return $s;
}
public static function mlang_escapeBracketTextBox($matches)
{
if (preg_match('/type=["\']?(?=text|hidden)["\']?/i', $matches[2])) {
return $matches[1].str_replace('[', '__ml[ml__', $matches[2]).$matches[3];
} else {
return $matches[1].$matches[2].$matches[3];
}
}
public static function mlang_escapeBracket($matches)
{
return $matches[1].str_replace('[', '__ml[ml__', $matches[2]).$matches[3];
}
public static function mlang_unEscapeBracketTextBox($matches)
{
if (preg_match('/type=["\']?(?=text|hidden)["\']?/i', $matches[2])) {
return $matches[1].str_replace('__ml[ml__', '[', $matches[2]).$matches[3];
} else {
return $matches[1].$matches[2].$matches[3];
}
}
public static function mlang_unEscapeBracket($matches)
{
return $matches[1].str_replace('__ml[ml__', '[', $matches[2]).$matches[3];
}
public static function mlang_checkNeverCross($matches)
{
return preg_match(CUBE_UTILS_ML_NEVERCROSSREGEX, $matches[0]) ? $matches[0] : '';
}
}

51
etc/config.inc.php Normal file
View File

@ -0,0 +1,51 @@
<?php
$mainfile = '/data/www/nimg.neuroinf.jp/html/mainfile.php';
//$XOOPS_MODULE_D3FORUM = ['forum'];
//$XOOPS_MODULE_PICO = ['credits'];
$XOOPS_STATIC_PAGES = [
'/modules/xnpnimgcenter/utilities/brain_conv/howtouse.php' => [
'type' => 'json',
'file' => 'src/nimgcenter/assets/howtouse.json'
],
'/modules/xnpnimgcenter/utilities/index.php' => [
'type' => 'json',
'file' => 'src/nimgcenter/assets/utilities.json'
],
//'/modules/nimgdocs/tutorials/index.php' => [
// 'type' => 'tsx',
// 'file' => 'extras/nimgdocs/Tutorials.tsx',
//],
'/modules/nimgdocs/index.php?docname=about_NIMGPF' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/about.json',
],
'/modules/nimgdocs/index.php?docname=introduction' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/introduction.json',
],
'/modules/nimgdocs/index.php?docname=additem' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/additem.json',
],
'/modules/nimgdocs/index.php?docname=nimgcenter' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/nimgcenter.json',
],
'/modules/nimgdocs/index.php?docname=nimgsearch' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/nimgsearch.json',
],
'/modules/nimgdocs/index.php?docname=3DBrowse' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/3dbrowse.json',
],
'/modules/nimgdocs/index.php?docname=3DBrowse_usage' => [
'type' => 'json',
'file' => 'src/nimgdocs/assets/3dbrowse_usage.json',
],
];
$_CURLOPT_RESOLVE_VALUE = ['nimg.neuroinf.jp:443:127.0.0.1'];

15
etc/copy-brainexplorer.sh Normal file
View File

@ -0,0 +1,15 @@
#!/bin/bash
XOOPS_ROOT_PATH=/data/www/nimg.neuroinf.jp/html
DATADIR=$(dirname $0)/data
SRCDIR=${XOOPS_ROOT_PATH}/modules/brainexplorer/data/MRI
DESTDIR=${DATADIR}/public/modules/brainexplorer/data/m3d
mkdir -p ${DESTDIR}
rsync -av --delete ${SRCDIR}/ ${DESTDIR}/
SRCDIR=${XOOPS_ROOT_PATH}/modules/be2/data/g3d
DESTDIR=${DATADIR}/public/modules/brainexplorer/data/g3d
mkdir -p ${DESTDIR}
rsync -av --delete ${SRCDIR}/ ${DESTDIR}/

18
etc/copy-nimgdocs.sh Normal file
View File

@ -0,0 +1,18 @@
#!/bin/bash
XOOPS_ROOT_PATH=/data/www/nimg.neuroinf.jp/html
DATADIR=$(dirname $0)/data
SRCDIR=${XOOPS_ROOT_PATH}/modules/nimgdocs
DESTDIR=${DATADIR}/public/modules/nimgdocs
rsync -av --delete ${SRCDIR}/tutorials/movie/ ${DESTDIR}/tutorials/movie/
rsync -av ${SRCDIR}/tutorials/slide.html ${DESTDIR}/tutorials/
rsync -av --delete ${SRCDIR}/tutorials/slide/ ${DESTDIR}/tutorials/slide/
rsync -av ${SRCDIR}/tutorials/slide2.html ${DESTDIR}/tutorials/
rsync -av --delete ${SRCDIR}/tutorials/slide2/ ${DESTDIR}/tutorials/slide2/
rsync -av --delete ${SRCDIR}/docs/nimgcenter_document/ ${DESTDIR}/docs/nimgcenter_document/
rsync -av --delete ${SRCDIR}/docs/nimgsearch_document/ ${DESTDIR}/docs/nimgsearch_document/
rsync -av --delete ${SRCDIR}/docs/pdf/ ${DESTDIR}/docs/pdf/
rsync -av --delete ${SRCDIR}/docs/poster/ ${DESTDIR}/docs/poster/
rsync -av --delete ${SRCDIR}/docs/viewlet/ ${DESTDIR}/docs/viewlet/
rsync -av --delete ${SRCDIR}/docs/winword/ ${DESTDIR}/docs/winword/

10
etc/copy-nimgsearch.sh Normal file
View File

@ -0,0 +1,10 @@
#!/bin/bash
XOOPS_ROOT_PATH=/data/www/nimg.neuroinf.jp/html
DATADIR=$(dirname $0)/data
SRCDIR=${XOOPS_ROOT_PATH}/modules/nimgsearch
DESTDIR=${DATADIR}/public/modules/nimgsearch
mkdir -p ${DESTDIR}
rsync -av --delete ${SRCDIR}/res/ ${DESTDIR}/res/
rsync -av --delete ${SRCDIR}/help/ ${DESTDIR}/help/

10
etc/dl-limit-items.csv Normal file
View File

@ -0,0 +1,10 @@
610,fujimaki,"Norio Fujimaki",fujimaki@po.nict.go.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=610
611,fujimaki,"Norio Fujimaki",fujimaki@po.nict.go.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=611
612,fujimaki,"Norio Fujimaki",fujimaki@po.nict.go.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=612
613,fujimaki,"Norio Fujimaki",fujimaki@po.nict.go.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=613
1262,ichikawa,"Kazuhisa Ichikawa",kichi@ims.u-tokyo.ac.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=1262
1343,kuriki,"Shinya Kuriki",sk@es.hokudai.ac.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?id=DD019
1358,kuriki,"Shinya Kuriki",sk@es.hokudai.ac.jp,https://nimg.neuroinf.jp/modules/xoonips/detail.php?id=DD018
6965,kiyotaka,根本清貴,kiyotaka@nemotos.net,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=6965
6966,kiyotaka,根本清貴,kiyotaka@nemotos.net,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=6966
6967,kiyotaka,根本清貴,kiyotaka@nemotos.net,https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=6967
1 610 fujimaki Norio Fujimaki fujimaki@po.nict.go.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=610
2 611 fujimaki Norio Fujimaki fujimaki@po.nict.go.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=611
3 612 fujimaki Norio Fujimaki fujimaki@po.nict.go.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=612
4 613 fujimaki Norio Fujimaki fujimaki@po.nict.go.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=613
5 1262 ichikawa Kazuhisa Ichikawa kichi@ims.u-tokyo.ac.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=1262
6 1343 kuriki Shinya Kuriki sk@es.hokudai.ac.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?id=DD019
7 1358 kuriki Shinya Kuriki sk@es.hokudai.ac.jp https://nimg.neuroinf.jp/modules/xoonips/detail.php?id=DD018
8 6965 kiyotaka 根本清貴 kiyotaka@nemotos.net https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=6965
9 6966 kiyotaka 根本清貴 kiyotaka@nemotos.net https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=6966
10 6967 kiyotaka 根本清貴 kiyotaka@nemotos.net https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=6967

154
etc/dumpCredits.php Normal file
View File

@ -0,0 +1,154 @@
<?php
require_once __DIR__.'/common.inc.php';
require_once __DIR__.'/extras.inc.php';
$prefix = $xoopsDB->prefix();
$table = 'nipfcredits_organization';
if (!MyDumpTool::tableExists($table)) {
exit('credits module not found'.PHP_EOL);
}
MyDumpTool::makeDirectory('public/modules/credits');
// module
$module = MyDumpTool::getModule('credits');
// 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'] = '[en]Neuroinformatics Unit, RIKEN Center for Brain Science[/en][ja]理化学研究所 脳神経科学研究センター 神経情報基盤ユニット[/ja]';
$organization['url'] = 'https://www.ni.riken.jp/';
$organization['email'] = 'office (at) ni.riken.jp';
$organization['address'] = '[en]Hirosawa 2-1, Wako, Saitama, 351-0198 Japan[/en][ja]埼玉県和光市広沢 2-1[/ja]';
$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, $module);
MyDumpTool::saveJson('public/modules/credits/0.json', $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 = normalizeHtml($content, '/modules/credits/index.php');
$content = preg_replace('/<a (?:[^>]*)href="(?:'.preg_quote(XOOPS_URL, '/').')?\/modules\/xoonips\/(?:register|edit|user)[^"]*"(?:[^>]*)>(.*)<\/a>/Usi', '<s>\1</s>(closed)', $content);
$row['content'] = $content;
MyDumpTool::dropColumn($row, ['weight']);
$pages[] = [
'id' => $row['pid'],
'title' => $row['title'],
];
MyDumpTool::saveJson('public/modules/credits/'.$row['pid'].'.json', $row);
}
$xoopsDB->freeRecordSet($res);
$pages[] = [
'id' => $opage['id'],
'title' => $opage['title'],
];
$data = [
'name' => $module['name'],
'pages' => $pages,
];
MyDumpTool::saveJson('public/modules/credits/index.json', $data);
function replaceOrganization($text, $org)
{
$map = [
'{COMMITTEE_NAME}' => htmlspecialchars($org['committee']),
//'{COMMITTEE_EMAIL}' => '<s>'.htmlspecialchars($org['com_email'], ENT_QUOTES).'</s>(committee email has been closed)',
'{COMMITTEE_EMAIL}' => htmlspecialchars($org['com_email'], ENT_QUOTES),
'{INSTITUTE_NAME}' => htmlspecialchars($org['institute'], ENT_QUOTES),
'{INSTITUTE_URL}' => htmlspecialchars($org['url'], ENT_QUOTES),
'{INSTITUTE_EMAIL}' => htmlspecialchars($org['email'], ENT_QUOTES),
'{INSTITUTE_ADDRESS}' => htmlspecialchars($org['address'], ENT_QUOTES),
'{INSTITUTE_TEL}' => htmlspecialchars($org['tel'], ENT_QUOTES),
'{PLATFORM_URL}' => XOOPS_URL,
];
return str_replace(array_keys($map), $map, $text);
}
function getOrganizationPage($org, $member, $module)
{
$members = [];
if (!empty($member)) {
$members[] = ' <li>[en]Members[/en][ja]委員一覧[/ja]';
$members[] = ' <ul>';
foreach ($member as $m) {
$members[] = ' <li>'.htmlspecialchars($m['name'].' : '.$m['division'], ENT_QUOTES).'</li>';
}
$members[] = ' </ul>';
$members[] = ' </li>';
}
$members = implode("\n", $members);
$committee = htmlspecialchars($org['committee'], ENT_QUOTES);
$institute = htmlspecialchars($org['institute'], ENT_QUOTES);
$address = htmlspecialchars($org['address'], ENT_QUOTES);
$url = htmlspecialchars($org['url'], ENT_QUOTES);
$email = htmlspecialchars($org['com_email'], ENT_QUOTES);
$html = <<< HTML
<h4>${committee}</h4>
<ul>
<li>E-Mail: <strike>${email}</strike></li>
${members}
</ul>
<h4>${institute}</h4>
<ul>
<li>[en]Address[/en][ja]所在地[/ja]: ${address}</li>
<li>URL: <a href="${url}" target="_blank" rel=”noopener noreferrer”>${url}</a></li>
</ul>
HTML;
return [
'id' => 0,
'title' => '[en]About Us[/en][ja]運用母体[/ja]',
'content' => $html,
'lastupdate' => 0,
];
}

View File

@ -0,0 +1,44 @@
<?php
require_once __DIR__.'/common.inc.php';
require_once __DIR__.'/extras.inc.php';
$prefix = $xoopsDB->prefix();
$table = 'nimgdocs_bulletin';
if (!MyDumpTool::tableExists($table)) {
exit('nimgdocs module not found'.PHP_EOL);
}
$sql = <<< SQL
SELECT
`b`.*
FROM `${prefix}_${table}` AS `b`
WHERE `b`.`accepted`=1
ORDER BY `b`.`post_date` DESC
SQL;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
$data = [];
while ($row = $xoopsDB->fetchArray($res)) {
$row['tags'] = urldecode($row['tags']);
$row['text_en'] = urldecode($row['text_en']);
$row['text_jp'] = urldecode($row['text_jp']);
MyDumpTool::decode($row);
MyDumpTool::convertToInt($row, ['id', 'accepted']);
$row['text'] = [
'en' => $row['text_en'],
'ja' => $row['text_jp'],
];
MyDumpTool::dropColumn($row, ['accepted', 'text_en', 'text_jp']);
$row['tags'] = explode(' ', $row['tags']);
$row['post_date'] = strtotime($row['post_date']);
$row['end_date'] = strtotime($row['end_date']);
$data[] = $row;
}
$xoopsDB->freeRecordSet($res);
MyDumpTool::makeDirectory('src/nimgdocs/assets');
MyDumpTool::saveJson('src/nimgdocs/assets/bulletin.json', $data);

102
etc/dumpPico.php Normal file
View File

@ -0,0 +1,102 @@
<?php
require_once __DIR__.'/common.inc.php';
require_once __DIR__.'/extras.inc.php';
if (!isset($XOOPS_MODULE_PICO) || empty($XOOPS_MODULE_PICO)) {
exit('Not configured for pico module'.PHP_EOL);
}
error_reporting(0);
require_once XOOPS_TRUST_PATH.'/modules/pico/include/main_functions.php';
require_once XOOPS_TRUST_PATH.'/modules/pico/include/common_functions.php';
require_once XOOPS_TRUST_PATH.'/modules/pico/class/pico.textsanitizer.php';
require_once XOOPS_TRUST_PATH.'/modules/pico/class/PicoUriMapper.class.php';
require_once XOOPS_TRUST_PATH.'/modules/pico/class/PicoPermission.class.php';
require_once XOOPS_TRUST_PATH.'/modules/pico/class/PicoModelCategory.class.php';
require_once XOOPS_TRUST_PATH.'/modules/pico/class/PicoModelContent.class.php';
require_once XOOPS_TRUST_PATH.'/libs/altsys/class/AltsysBreadcrumbs.class.php';
error_reporting(E_ALL);
foreach ($XOOPS_MODULE_PICO as $pico) {
dumpPico($pico);
}
function dumpPico($pico)
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$table = $pico.'_contents';
if (!MyDumpTool::tableExists($table)) {
exit('pico('.$pico.') module not found'.PHP_EOL);
}
MyDumpTool::makeDirectory('public/modules/'.$pico);
$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 = [];
$dataMap = [];
$dataSeq = 1;
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);
$url = XOOPS_URL.'/modules/'.$pico.'/'.$link;
$content_en = normalizeHtml(MyDumpTool::mlang($data['body_cached'], $url, 'en'), $url);
$content_ja = normalizeHtml(MyDumpTool::mlang($data['body_cached'], $url, 'ja'), $url);
$item = [
'id' => $data['id'],
'title' => $data['subject_raw'],
'content' => [
'en' => $content_en,
'ja' => $content_ja,
],
];
MyDumpTool::saveJson('public/modules/'.$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,
];
MyDumpTool::saveJson('public/modules/'.$pico.'/index.json', $config);
}

207
etc/dumpStaticPage.php Normal file
View File

@ -0,0 +1,207 @@
<?php
require_once __DIR__.'/common.inc.php';
require_once __DIR__.'/extras.inc.php';
foreach ($XOOPS_STATIC_PAGES as $page => $config) {
$data = [
'en' => StaticFiles::getPage($page, 'en'),
'ja' => StaticFiles::getPage($page, 'ja'),
];
MyDumpTool::makeDirectory(dirname($config['file']));
switch ($config['type']) {
case 'json':
MyDumpTool::saveJson($config['file'], $data);
break;
case 'tsx':
StaticFiles::saveTsx($config['file'], $data);
break;
}
}
class StaticFiles
{
public static function saveTsx($fname, $data)
{
$path = MYDUMPTOOL_OUTPUTDIR.'/'.$fname;
$cname = basename($fname, '.tsx');
$content_ja = self::makeJsx($data['ja']);
$content_en = self::makeJsx($data['en']);
$tsx = <<< TSX
import React, { Component } from 'react';
import { Link } from 'react-router-dom';
import { MultiLang } from '../config';
import Functions from '../functions';
interface Props {
lang: MultiLang;
}
interface State {
isOpen: boolean;
}
class ${cname} extends Component<Props, State> {
constructor(props: Props) {
super(props);
this.state = {
isOpen: false
};
}
getContent(lang: MultiLang) {
const contents = {
en: <>
${content_en}
</>,
ja: <>
${content_ja}
</>;
}
return contents[lang];
}
render() {
const { lang } = this.props;
return this.getContent(lang);
}
}
export default ${cname};
TSX;
file_put_contents($path, $tsx);
}
private static function makeJsx($text)
{
$text = preg_replace_callback('/<([a-z0-9]+)((?: +[a-z]+(?:="[^"]*")?)*)( *\/?)>/Us', function ($matches) {
$tag = $matches[1];
preg_match_all('/ +([a-z]+?)(?:="([^"]*)")??/Us', $matches[2], $out, PREG_SET_ORDER);
$attribs = [];
foreach ($out as $_out) {
$key = $_out[1];
$value = html_entity_decode(trim($_out[2]), ENT_QUOTES | ENT_HTML5);
$attribs[$key] = $value;
}
$styles = [];
if (isset($attribs['style'])) {
foreach (array_map('trim', explode(';', $attribs['style'])) as $style) {
if ('' === $style) {
continue;
}
[$key, $value] = array_map('trim', explode(':', $style));
$key = lcfirst(str_replace(' ', '', ucwords(str_replace('-', ' ', $key))));
$styles[$key] = preg_replace('/ +/U', ' ', $value);
}
}
$close = str_replace('/', ' /', trim($matches[3]));
if (isset($attribs['class'])) {
$attribs['className'] = $attribs['class'];
unset($attribs['class']);
}
if ('a' === $tag && isset($attribs['target']) && '_blank' === $attribs['target'] && !isset($attribs['rel'])) {
$attribs['rel'] = 'noopener noreferrer';
}
foreach (['align', 'width', 'height'] as $key) {
$kmap = ['align' => 'textAlign'];
$skey = isset($kmap[$key]) ? $kmap[$key] : $key;
if (isset($attribs[$key])) {
$styles[$skey] = $attribs[$key];
unset($attribs[$key]);
}
}
$x = [];
foreach ($styles as $key => $style) {
$x[] = $key.': "'.$style.'"';
}
if (empty($x)) {
unset($attribs['style']);
} else {
$attribs['style'] = '{'.implode(', ', $x).'}';
}
$x = '';
foreach ($attribs as $key => $value) {
if ('' !== $x) {
$x .= ' ';
}
switch ($key) {
case 'style':
$x .= $key.'={'.$value.'}';
break;
case 'controls':
if ('' === $value) {
$x .= $key;
}
break;
default:
$x .= $key.'="'.str_replace('&#039;', '\'', htmlspecialchars($value, ENT_QUOTES)).'"';
}
}
if ('' !== $x) {
$x = ' '.$x;
}
return '<'.$tag.$x.$close.'>';
}, $text);
return $text;
}
public static function getPage($page, $lang)
{
$url = XOOPS_URL.$page;
$html = self::fetch($url.(false !== strpos($page, '?') ? '&' : '?').'ml_lang='.$lang);
$xml = self::getXml($html, 'content');
return normalizeHtml($xml, $url);
}
public static function getXml($html, $id)
{
$text = MyDumpTool::fixHtml($html);
$text = str_replace('&', '&amp;', $text);
$xml = simplexml_load_string($text);
if (false === $xml) {
die('failed to load xml: '.$text.PHP_EOL);
}
$objs = $xml->xpath('//*[@id="'.$id.'"]/*');
if (false === $objs || empty($objs)) {
die('failed to find id attribute: '.$id.PHP_EOL);
}
$ret = '';
foreach ($objs as $obj) {
$ret .= $obj->asXml();
}
$ret = str_replace('&amp;', '&', $ret);
return $ret;
}
public static function fetch($url)
{
$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_TIMEOUT, 10);
if (isset($GLOBALS['_CURLOPT_RESOLVE_VALUE'])) {
curl_setopt($curl, CURLOPT_RESOLVE, $GLOBALS['_CURLOPT_RESOLVE_VALUE']);
}
$ret = curl_exec($curl);
if (false === $ret) {
exit('Failed to fetch, 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 $ret;
}
}

1241
etc/dumpXooNIps.php Normal file

File diff suppressed because it is too large Load Diff

188
etc/extra.inc.php Normal file
View File

@ -0,0 +1,188 @@
<?php
function normalizeUrl($url, $base, $type)
{
$localpath = function ($url, $type) {
$purl1 = parse_url($url);
$purl2 = parse_url(XOOPS_URL);
if (isset($purl1['host']) && isset($purl2['host']) && $purl1['host'] === $purl2['host']) {
$url = preg_replace('/^http:/', 'https:', $url);
}
$url = preg_replace('/^https?:\/\/nimg.neuroinf\.jp\/?/', '/', $url);
$url = preg_replace('/^\/fmanager\/(view|tmb)\/(.*)(:?\?_t=.*)?$/U', '/modules/fmanager/index.php/\1/\2', $url);
$url = preg_replace('/^\/modules\/xoonips\/detail\.php\?((:?item_)?id=.+)&download=.*$/U', '/modules/xoonips/detail.php?\1', $url);
$url = preg_replace('/^\/modules\/xoonips\/image\.php\/thumbnail\/(\d+)\/(.*)$/U', '/modules/xoonips/file/\1.png', $url);
$url = preg_replace('/^\/modules\/xoonips\/preview\.php\/\d+\/(\d+)\/(.*)$/U', '/modules/xoonips/file/\1.png', $url);
$url = preg_replace('/^\/modules\/xoonips\/download\.php\/\d+\/(\d+)\/(.*)$/U', '/modules/xoonips/file/\1/\2', $url);
$url = preg_replace('/^\/modules\/xoonips\/download\.php\/([^\/]+)\?file_id=(\d+)$/U', '/modules/xoonips/file/\2/\1', $url);
if (preg_match('/^\/modules\/xoonips\/download\.php\?file_id=(\d+)$/U', $url, $matches)) {
$fpath = MYDUMPTOOL_OUTPUTDIR.'/public/modules/xoonips/file/'.$matches[1];
$found = false;
foreach (glob($fpath.'/*') as $fname) {
if ('.htaccess' === $fname) {
continue;
} else {
$url = '/modules/xoonips/file/'.$matches[1].'/'.urlencode(basename($fname));
$found = true;
}
}
if (false === $found) {
echo 'Failed to replace xoonips download url:'.$url.PHP_EOL;
return false;
}
}
// append
if ('videoSrc' === $type) {
//$url = preg_replace('/^\/modules\/xoonips\/file\/1459.png$/', '/modules/xoonips/file/1459/benham\'s_top.mp4', $url);
//$url = preg_replace('/^\/modules\/xoonips\/file\/1469.png$/', '/modules/xoonips/file/1469/music_notes.mp4', $url);
}
return $url;
};
if ('' === $url) {
return $localpath($base, $type);
}
$purl = parse_url($url);
if (isset($purl['scheme'])) {
return $localpath($url, $type);
}
$pburl = parse_url($base);
$path = $pburl['path'];
if ('/' == $url[0]) {
$path = '';
} elseif ('#' !== $url[0] && '?' !== $url[0]) {
$path = preg_replace('#/[^/]*$#', '', $path).'/';
}
$path .= $url;
$pattern = ['#(/\.?/)#', '#/(?!\.\.)[^/]+/\.\./#'];
do {
$path = preg_replace($pattern, '/', $path, -1, $count);
} while (0 < $count);
return $localpath($pburl['scheme'].'://'.$pburl['host'].$path, $type);
}
function checkLocalFile($url, $tag)
{
$url2 = preg_replace('/'.preg_quote(XOOPS_URL, '/').'/', '', $url);
if (preg_match('/^\//', $url2)) {
if (!preg_match('/\/([^\/]+\.(php|html))?(\?.+)?(#.+)?$/i', $url2, $matches)) {
$dstFpath = MYDUMPTOOL_OUTPUTDIR.'/public'.urldecode($url2);
$srcFpath = XOOPS_ROOT_PATH.urldecode($url2);
if (!file_exists($dstFpath)) {
if (file_exists($srcFpath)) {
MyDumpTool::makeDirectory('/public'.dirname($url2));
if (!MyDumpTool::fileCopy($srcFpath, $dstFpath)) {
echo 'Error: Failed to copy file: '.$fpath.PHP_EOL;
return false;
}
} else {
echo 'Error: File not found: '.$fpath.PHP_EOL;
return false;
}
}
}
return $url2;
}
return $url;
}
function normalizeHtml($text, $path)
{
$text = MyDumpTool::fixHtml($text);
$text = preg_replace_callback('/<img ([^>]*)src="(.*)"([^>]*)\/>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
$url = normalizeUrl($url, $path, 'imgSrc');
$url = checkLocalFile($url, 'imgSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
return '<img '.$matches[1].'src="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'/>';
}, $text);
$text = preg_replace_callback('/<a ([^>]*)href="([^"]+)"([^>]*)>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
if (!preg_match('/^#/', $url)) {
$url = normalizeUrl($url, $path, 'aHref');
if (false === $url) {
exit($path.PHP_EOL);
}
$url = checkLocalFile($url, 'aHref');
if (false === $url) {
exit($path.PHP_EOL);
}
}
return '<a '.$matches[1].'href="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'>';
}, $text);
$text = preg_replace_callback('/<embed ([^>]*)src="(.*)"([^>]*)\/>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
$url = normalizeUrl($url, $path, 'embedSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
$url = checkLocalFile($url, 'embedSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
return '<embed '.$matches[1].'src="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'/>';
}, $text);
$text = preg_replace_callback('/<video ([^>]*)src="(.*)"([^>]*)>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
$url = normalizeUrl($url, $path, 'videoSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
$url = checkLocalFile($url, 'videoSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
return '<video '.$matches[1].'src="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'>';
}, $text);
$text = preg_replace('/ lang="([^"]+)"/Us', '', $text);
$text = preg_replace('/ xml:lang="([^"]+)"/Us', '', $text);
// remove font-family attributes
$text = preg_replace_callback('/<span([^>]*?)>((?!<span).*)<\/span>/Us', function ($matches) use ($path) {
if ('' === trim($matches[1]) || '' === trim($matches[2]) || '&nbsp;' === trim($matches[2])) {
return $matches[2];
}
$m1 = $matches[1];
$m1 = preg_replace_callback('/style="(.*)"/Us', function ($matches2) {
$styles1 = array_map('trim', explode(';', htmlspecialchars_decode($matches2[1], ENT_QUOTES)));
$styles2 = [];
foreach ($styles1 as $style1) {
if ('' === $style1) {
continue;
}
$style = explode(':', $style1);
list($key, $value) = array_map('trim', explode(':', $style1));
if ('font-family' === $key || 'line-height' === $key || '' === $value || 'color' === $key && 'null' === $value) {
// skip
} else {
$styles2[] = $key.':'.$value;
}
}
return 0 === count($styles2) ? '' : ('style="'.htmlspecialchars(implode(';', $styles2).';', ENT_QUOTES).'"');
}, $m1);
if ('' === trim($m1)) {
return $matches[2];
}
if (strpos($m1, 'font-family') > 0) {
echo 'trimed span:'.$path.PHP_EOL;
}
return '<span'.$m1.'>'.$matches[2].'</span>';
}, $text);
$text = MyDumpTool::fixHtml($text);
return $text;
}

188
etc/extras.inc.php Normal file
View File

@ -0,0 +1,188 @@
<?php
function normalizeUrl($url, $base, $type)
{
$localpath = function ($url, $type) {
$purl1 = parse_url($url);
$purl2 = parse_url(XOOPS_URL);
if (isset($purl1['host']) && isset($purl2['host']) && $purl1['host'] === $purl2['host']) {
$url = preg_replace('/^http:/', 'https:', $url);
}
$url = preg_replace('/^https?:\/\/nimg.neuroinf\.jp\/?/', '/', $url);
$url = preg_replace('/^\/fmanager\/(view|tmb)\/(.*)(:?\?_t=.*)?$/U', '/modules/fmanager/index.php/\1/\2', $url);
$url = preg_replace('/^\/modules\/xoonips\/detail\.php\?((:?item_)?id=.+)&download=.*$/U', '/modules/xoonips/detail.php?\1', $url);
$url = preg_replace('/^\/modules\/xoonips\/image\.php\/thumbnail\/(\d+)\/(.*)$/U', '/modules/xoonips/file/\1.png', $url);
$url = preg_replace('/^\/modules\/xoonips\/preview\.php\/\d+\/(\d+)\/(.*)$/U', '/modules/xoonips/file/\1.png', $url);
$url = preg_replace('/^\/modules\/xoonips\/download\.php\/\d+\/(\d+)\/(.*)$/U', '/modules/xoonips/file/\1/\2', $url);
$url = preg_replace('/^\/modules\/xoonips\/download\.php\/([^\/]+)\?file_id=(\d+)$/U', '/modules/xoonips/file/\2/\1', $url);
if (preg_match('/^\/modules\/xoonips\/download\.php\?file_id=(\d+)$/U', $url, $matches)) {
$fpath = MYDUMPTOOL_OUTPUTDIR.'/public/modules/xoonips/file/'.$matches[1];
$found = false;
foreach (glob($fpath.'/*') as $fname) {
if ('.htaccess' === $fname) {
continue;
} else {
$url = '/modules/xoonips/file/'.$matches[1].'/'.urlencode(basename($fname));
$found = true;
}
}
if (false === $found) {
echo 'Failed to replace xoonips download url:'.$url.PHP_EOL;
return false;
}
}
// append
if ('videoSrc' === $type) {
//$url = preg_replace('/^\/modules\/xoonips\/file\/1459.png$/', '/modules/xoonips/file/1459/benham\'s_top.mp4', $url);
//$url = preg_replace('/^\/modules\/xoonips\/file\/1469.png$/', '/modules/xoonips/file/1469/music_notes.mp4', $url);
}
return $url;
};
if ('' === $url) {
return $localpath($base, $type);
}
$purl = parse_url($url);
if (isset($purl['scheme'])) {
return $localpath($url, $type);
}
$pburl = parse_url($base);
$path = $pburl['path'];
if ('/' == $url[0]) {
$path = '';
} elseif ('#' !== $url[0] && '?' !== $url[0]) {
$path = preg_replace('#/[^/]*$#', '', $path).'/';
}
$path .= $url;
$pattern = ['#(/\.?/)#', '#/(?!\.\.)[^/]+/\.\./#'];
do {
$path = preg_replace($pattern, '/', $path, -1, $count);
} while (0 < $count);
return $localpath($pburl['scheme'].'://'.$pburl['host'].$path, $type);
}
function checkLocalFile($url, $tag)
{
$url2 = preg_replace('/'.preg_quote(XOOPS_URL, '/').'/', '', $url);
if (preg_match('/^\//', $url2)) {
if (!preg_match('/\/([^\/]+\.(php|html))?(\?.+)?(#.+)?$/i', $url2, $matches)) {
$dstFpath = MYDUMPTOOL_OUTPUTDIR.'/public'.urldecode($url2);
$srcFpath = XOOPS_ROOT_PATH.urldecode($url2);
if (!file_exists($dstFpath)) {
if (file_exists($srcFpath)) {
MyDumpTool::makeDirectory('/public'.dirname($url2));
if (!MyDumpTool::fileCopy($srcFpath, $dstFpath)) {
echo 'Error: Failed to copy file: '.$srcFpath.PHP_EOL;
return false;
}
} else {
echo 'Error: File not found: '.$srcFpath.PHP_EOL;
return false;
}
}
}
return $url2;
}
return $url;
}
function normalizeHtml($text, $path)
{
$text = MyDumpTool::fixHtml($text);
$text = preg_replace_callback('/<img ([^>]*)src="(.*)"([^>]*)\/>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
$url = normalizeUrl($url, $path, 'imgSrc');
$url = checkLocalFile($url, 'imgSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
return '<img '.$matches[1].'src="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'/>';
}, $text);
$text = preg_replace_callback('/<a ([^>]*)href="([^"]+)"([^>]*)>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
if (!preg_match('/^#/', $url)) {
$url = normalizeUrl($url, $path, 'aHref');
if (false === $url) {
exit($path.PHP_EOL);
}
$url = checkLocalFile($url, 'aHref');
if (false === $url) {
exit($path.PHP_EOL);
}
}
return '<a '.$matches[1].'href="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'>';
}, $text);
$text = preg_replace_callback('/<embed ([^>]*)src="(.*)"([^>]*)\/>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
$url = normalizeUrl($url, $path, 'embedSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
$url = checkLocalFile($url, 'embedSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
return '<embed '.$matches[1].'src="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'/>';
}, $text);
$text = preg_replace_callback('/<video ([^>]*)src="(.*)"([^>]*)>/Us', function ($matches) use ($path) {
$url = htmlspecialchars_decode($matches[2], ENT_QUOTES);
$url = normalizeUrl($url, $path, 'videoSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
$url = checkLocalFile($url, 'videoSrc');
if (false === $url) {
exit($path.PHP_EOL);
}
return '<video '.$matches[1].'src="'.htmlspecialchars($url, ENT_QUOTES).'"'.$matches[3].'>';
}, $text);
$text = preg_replace('/ lang="([^"]+)"/Us', '', $text);
$text = preg_replace('/ xml:lang="([^"]+)"/Us', '', $text);
// remove font-family attributes
$text = preg_replace_callback('/<span([^>]*?)>((?!<span).*)<\/span>/Us', function ($matches) use ($path) {
if ('' === trim($matches[1]) || '' === trim($matches[2]) || '&nbsp;' === trim($matches[2])) {
return $matches[2];
}
$m1 = $matches[1];
$m1 = preg_replace_callback('/style="(.*)"/Us', function ($matches2) {
$styles1 = array_map('trim', explode(';', htmlspecialchars_decode($matches2[1], ENT_QUOTES)));
$styles2 = [];
foreach ($styles1 as $style1) {
if ('' === $style1) {
continue;
}
$style = explode(':', $style1);
list($key, $value) = array_map('trim', explode(':', $style1));
if ('font-family' === $key || 'line-height' === $key || '' === $value || 'color' === $key && 'null' === $value) {
// skip
} else {
$styles2[] = $key.':'.$value;
}
}
return 0 === count($styles2) ? '' : ('style="'.htmlspecialchars(implode(';', $styles2).';', ENT_QUOTES).'"');
}, $m1);
if ('' === trim($m1)) {
return $matches[2];
}
if (strpos($m1, 'font-family') > 0) {
echo 'trimed span:'.$path.PHP_EOL;
}
return '<span'.$m1.'>'.$matches[2].'</span>';
}, $text);
$text = MyDumpTool::fixHtml($text);
return $text;
}

310
etc/fixXooNIps.php Normal file
View File

@ -0,0 +1,310 @@
<?php
$method = 'POST';
require_once __DIR__.'/common.inc.php';
$table = 'xoonips_item_basic';
if (!MyDumpTool::tableExists($table)) {
exit('xoonips module not found'.PHP_EOL);
}
$tree = getPublicIndex();
$items = getPublicItems();
checkNimgCenterBaseItem();
checkBadIndexItemLink();
checkBadItemTitle();
checkNimgCenterItem($items);
// check nimgcenter item
function checkNimgCenterItem($items)
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
foreach ($items as $item) {
if ('xnpnimgcenter' !== $item['item_type_name']) {
continue;
}
appendNimgcenterInfo($item);
$itemId = $item['item_id'];
$indexIds = getPublicIndexIdsByItemId($itemId);
$baseItemId = $item['baseitem_id'];
$baseIndexIds = getPublicIndexIdsByItemId($baseItemId);
if (empty($baseIndexIds)) {
// private item found.
foreach ($indexIds as $indexId) {
$sql = <<< SQL
INSERT INTO `${prefix}_xoonips_index_item_link` VALUES (NULL, $indexId, $baseItemId, 2)
SQL;
var_dump($sql);
if (!($res = $xoopsDB->queryF($sql))) {
var_dump($xoopsDB);
exit();
}
}
}
}
}
// check bad item title
function checkBadItemTitle()
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$sql = <<< SQL
SELECT `it`.*
FROM `${prefix}_xoonips_item_title` AS `it`
LEFT JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `it`.`item_id`=`ib`.`item_id`
WHERE `ib`.`item_id` IS NULL
SQL;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
$itemIds = [];
while ($row = $xoopsDB->fetchArray($res)) {
$itemIds[] = $row['item_id'];
}
$xoopsDB->freeRecordSet($res);
$itemIds = array_unique($itemIds);
foreach ($itemIds as $itemId) {
$sql = <<< SQL
DELETE FROM `${prefix}_xoonips_item_title` WHERE `item_id`=$itemId
SQL;
var_dump($sql);
if (!($res = $xoopsDB->queryF($sql))) {
var_dump($xoopsDB);
exit();
}
}
var_dump($itemIds);
}
// check bad index item link
function checkBadIndexItemLink()
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$sql = <<< SQL
SELECT `iil`.*
FROM `${prefix}_xoonips_index_item_link` AS `iil`
LEFT JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `iil`.`item_id`=`ib`.`item_id`
WHERE `ib`.`item_id` IS NULL
SQL;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
$itemIds = [];
while ($row = $xoopsDB->fetchArray($res)) {
$itemIds[] = $row['item_id'];
}
$xoopsDB->freeRecordSet($res);
$itemIds = array_unique($itemIds);
foreach ($itemIds as $itemId) {
$sql = <<< SQL
DELETE FROM `${prefix}_xoonips_index_item_link` WHERE `item_id`=$itemId
SQL;
var_dump($sql);
if (!($res = $xoopsDB->queryF($sql))) {
var_dump($xoopsDB);
exit();
}
}
var_dump($itemIds);
}
// check baseitem of nimgcenter item
function checkNimgCenterBaseItem()
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$sql = <<< SQL
SELECT `id`.*
FROM `${prefix}_xnpnimgcenter_item_detail` AS `id`
INNER JOIN `${prefix}_xoonips_index_item_link` AS `iil` ON `id`.`nimgcenter_id`=`iil`.`item_id`
INNER JOIN `${prefix}_xoonips_index` AS `idx` ON `iil`.`index_id`=`idx`.`index_id`
LEFT JOIN `${prefix}_xoonips_item_basic` AS `ib` ON `id`.`baseitem_id`=`ib`.`item_id`
WHERE `ib`.`item_id` IS NULL
AND `iil`.`certify_state`=2
AND `idx`.`open_level`=1
GROUP BY `id`.`nimgcenter_id`
ORDER BY `id`.`nimgcenter_id` ASC
SQL;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
while ($detail = $xoopsDB->fetchArray($res)) {
echo 'baseitem not found: nimgcenter_item_id:'.$detail['nimgcenter_id'].', baseitem_id:'.$detail['baseitem_id'].PHP_EOL;
withdrawItem($detail['nimgcenter_id']);
}
$xoopsDB->freeRecordSet($res);
}
// withdraw item
function withdrawItem($item_id)
{
$index_item_link_handler = &xoonips_getormhandler('xoonips', 'index_item_link');
$criteria = new CriteriaCompo(new Criteria('item_id', $item_id));
$criteria->add(new Criteria('certify_state', 2));
$index_item_link_handler->deleteAll($criteria);
$item_show_handler = &xoonips_getormhandler('xoonips', 'item_show');
$item_show_handler->deleteAll(new Criteria('item_id', $item_id));
$item_status_handler = &xoonips_getormhandler('xoonips', 'item_status');
$item_status_handler->updateItemStatus($item_id);
return true;
}
// append nimgcenter info
function appendNimgcenterInfo(&$row)
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$coord_type_names = [
0 => 'Talairach',
1 => 'NMI',
2 => 'Unclear',
];
$item_id = $row['item_id'];
$sql = <<< SQL
SELECT `id`.*,
`ity`.`display_name` AS `base_type_display_name`
FROM `${prefix}_xnpnimgcenter_item_detail` AS `id`
INNER JOIN `${prefix}_xoonips_item_type` AS `ity` ON `id`.`base_type_name`=`ity`.`name`
WHERE `id`.`nimgcenter_id`=$item_id
SQL;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
while ($detail = $xoopsDB->fetchArray($res)) {
MyDumpTool::decode($detail);
MyDumpTool::convertToInt($detail, ['baseitem_id', 'coord_type']);
$detail['coord_type_name'] = $coord_type_names[$detail['coord_type']];
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'] = [];
while ($t = $xoopsDB->fetchArray($res)) {
MyDumpTool::dropColumn($t, ['nimgcenter_id']);
MyDumpTool::convertToInt($t, ['x', 'y', 'z']);
$row['coordinate'][] = $t;
}
$xoopsDB->freeRecordSet($res);
}
// get public indexes
function getPublicIndex()
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$sql = <<< SQL
SELECT
`idx`.*,
`it`.`title`
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;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
$tree = [];
while ($row = $xoopsDB->fetchArray($res)) {
MyDumpTool::decode($row);
MyDumpTool::convertToInt($row, ['index_id', 'parent_index_id', 'uid', 'gid', 'open_level', 'sort_number']);
$tree[$row['index_id']] = $row;
}
$xoopsDB->freeRecordSet($res);
return $tree;
}
// get public indexes by item id
function getPublicIndexIdsByItemId($item_id)
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$sql = <<< SQL
SELECT
`iil`.`index_id`
FROM `${prefix}_xoonips_index_item_link` AS `iil`
INNER JOIN `${prefix}_xoonips_index` AS `idx` ON `iil`.`index_id`=`idx`.`index_id`
WHERE `iil`.`item_id`=$item_id
AND `idx`.`open_level`=1
ORDER BY `iil`.`index_id`
SQL;
if (!($res = $xoopsDB->query($sql))) {
var_dump($xoopsDB);
exit();
}
$indexes = [];
while ($row = $xoopsDB->fetchArray($res)) {
MyDumpTool::convertToInt($row, ['index_id']);
$indexes[] = $row['index_id'];
}
$xoopsDB->freeRecordSet($res);
return $indexes;
}
// get public items
function getPublicItems()
{
global $xoopsDB;
$prefix = $xoopsDB->prefix();
$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 = [];
$itemIds = [];
$baseItemIds = [];
while ($row = $xoopsDB->fetchArray($res)) {
MyDumpTool::decode($row);
MyDumpTool::convertToInt($row, ['item_id', 'item_type_id', 'uid', 'last_update_date', 'creation_date', 'publication_year', 'publication_month', 'publication_mday']);
$row['index'] = getPublicIndexIdsByItemId($row['item_id']);
if (empty($row['index'])) {
continue;
}
$items[$row['item_id']] = $row;
}
$xoopsDB->freeRecordSet($res);
return $items;
}

465
etc/simpflink.csv Normal file
View File

@ -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
1 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6045 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=25
2 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=909 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=27
3 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1648 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=28
4 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=913 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=29
5 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1623 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=30
6 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1620 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=32
7 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=896 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=33
8 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=2434 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=34
9 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=2441 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=35
10 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=5307 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=37
11 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?id=943 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=38
12 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=403 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=39
13 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=398 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=40
14 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=350 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=41
15 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=366 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=43
16 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=370 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=44
17 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=361 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=45
18 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=4449054b http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=46
19 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6110 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=47
20 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=7252867b http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=48
21 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6105 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=49
22 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=2861 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=50
23 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=16625198b http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=51
24 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6422 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=52
25 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=19281836b http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=53
26 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=7941380b http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=54
27 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6448 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=55
28 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=6106 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=56
29 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1027 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=57
30 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1030 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=58
31 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1031 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=59
32 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1033 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=61
33 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1034 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=62
34 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1035 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=63
35 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1036 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=64
36 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1037 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=65
37 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1038 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=66
38 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1041 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=67
39 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1042 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=68
40 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1043 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=69
41 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1044 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=70
42 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1045 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=71
43 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1046 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=72
44 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1047 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=73
45 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1048 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=74
46 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1051 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=76
47 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1052 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=77
48 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1054 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=78
49 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1056 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=79
50 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1057 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=80
51 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1059 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=81
52 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1060 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=82
53 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1061 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=83
54 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1062 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=84
55 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1064 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=85
56 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1065 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=86
57 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1066 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=87
58 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1067 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=114
59 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1068 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=116
60 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1069 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=117
61 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1071 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=119
62 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1073 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=121
63 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1076 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=124
64 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1077 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=125
65 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1078 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=126
66 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1079 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=127
67 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=296 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=128
68 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=5586 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=129
69 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=297 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=130
70 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1080 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=131
71 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1081 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=132
72 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1082 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=133
73 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1084 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=134
74 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1085 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=135
75 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1086 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=136
76 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1087 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=137
77 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1088 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=138
78 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1089 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=139
79 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1098 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=140
80 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1099 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=141
81 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1100 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=142
82 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1101 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=143
83 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1102 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=144
84 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1103 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=145
85 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1105 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=146
86 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1106 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=147
87 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1107 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=148
88 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1108 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=149
89 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1109 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=150
90 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1110 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=151
91 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1111 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=152
92 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1112 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=153
93 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1113 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=154
94 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1114 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=155
95 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1115 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=156
96 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1119 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=159
97 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1120 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=160
98 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1121 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=161
99 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1122 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=162
100 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1123 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=163
101 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1124 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=164
102 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1125 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=165
103 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1127 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=167
104 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1128 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=168
105 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1129 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=169
106 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1130 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=170
107 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1131 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=171
108 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1132 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=172
109 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1134 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=174
110 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1135 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=175
111 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1136 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=176
112 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1137 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=177
113 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1138 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=178
114 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1139 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=179
115 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1140 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=180
116 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1141 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=181
117 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1142 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=182
118 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1143 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=183
119 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1144 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=184
120 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1146 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=186
121 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1147 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=187
122 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1148 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=188
123 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1149 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=189
124 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1150 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=190
125 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1152 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=192
126 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1153 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=193
127 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1154 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=194
128 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1156 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=195
129 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1157 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=196
130 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1159 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=198
131 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1160 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=199
132 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1161 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=200
133 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1162 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=201
134 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1163 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=202
135 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1164 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=203
136 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1165 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=204
137 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1166 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=205
138 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1167 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=206
139 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1168 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=207
140 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1169 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=208
141 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1170 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=209
142 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1171 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=210
143 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1173 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=212
144 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1174 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=213
145 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1175 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=214
146 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1176 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=215
147 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1177 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=216
148 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1178 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=217
149 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1179 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=218
150 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1180 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=219
151 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1181 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=220
152 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1182 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=221
153 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1183 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=222
154 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1184 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=223
155 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1185 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=224
156 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1186 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=225
157 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1187 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=226
158 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1188 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=227
159 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1189 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=228
160 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1190 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=229
161 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1191 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=230
162 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1192 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=231
163 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1193 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=232
164 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=15929656d http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=233
165 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=376 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=234
166 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=298 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=235
167 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1629 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=236
168 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=1647 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=237
169 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1209 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=239
170 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1210 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=240
171 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1211 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=241
172 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1212 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=242
173 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1213 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=243
174 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1214 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=244
175 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1215 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=245
176 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1216 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=246
177 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1218 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=248
178 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1219 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=249
179 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1220 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=250
180 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1222 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=251
181 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1223 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=252
182 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1224 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=253
183 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1225 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=254
184 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1226 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=255
185 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1227 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=256
186 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1228 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=257
187 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1230 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=258
188 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1231 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=259
189 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1232 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=260
190 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1233 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=261
191 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1234 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=262
192 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1235 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=263
193 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1236 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=264
194 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1237 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=265
195 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1238 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=266
196 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1239 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=267
197 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1240 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=268
198 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1241 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=269
199 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1242 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=270
200 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1243 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=271
201 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1244 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=272
202 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1245 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=273
203 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1246 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=274
204 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1247 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=275
205 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1248 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=276
206 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1251 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=279
207 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1252 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=280
208 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1255 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=281
209 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1256 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=282
210 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1257 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=283
211 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1258 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=284
212 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1262 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=286
213 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1263 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=287
214 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1264 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=288
215 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1265 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=289
216 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1266 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=290
217 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1268 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=292
218 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1269 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=293
219 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1270 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=294
220 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1271 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=295
221 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1272 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=296
222 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1273 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=297
223 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1278 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=302
224 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1279 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=303
225 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1280 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=304
226 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1281 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=305
227 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1282 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=306
228 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1283 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=307
229 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1284 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=308
230 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1285 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=309
231 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1286 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=310
232 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1287 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=311
233 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1288 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=312
234 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1289 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=313
235 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1291 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=315
236 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1292 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=316
237 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1293 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=317
238 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1294 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=318
239 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1295 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=319
240 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1296 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=320
241 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1298 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=322
242 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1299 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=323
243 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1300 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=324
244 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1302 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=326
245 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1306 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=330
246 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1312 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=336
247 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1313 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=337
248 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1314 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=338
249 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1315 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=339
250 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=162 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=341
251 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=5936 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=342
252 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/558/weaverWearne06.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=360
253 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?id=4449054c http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=367
254 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1039 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=416
255 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1040 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=417
256 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=7051 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=444
257 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1427 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=485
258 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1425 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=486
259 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1424 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=487
260 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1423 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=488
261 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1422 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=489
262 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1421 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=490
263 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1420 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=491
264 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1419 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=492
265 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1418 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=493
266 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1417 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=494
267 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1416 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=496
268 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1415 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=497
269 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1362 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=498
270 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1414 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=499
271 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1363 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=500
272 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1413 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=501
273 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1411 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=502
274 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1409 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=503
275 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1365 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=504
276 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1369 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=505
277 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1408 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=506
278 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1406 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=507
279 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1362 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=511
280 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1364 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=514
281 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1367 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=515
282 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1366 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=516
283 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1405 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=517
284 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1364 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=518
285 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1401 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=519
286 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1415 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=520
287 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1368 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=521
288 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1399 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=523
289 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1370 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=524
290 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1398 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=525
291 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1371 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=526
292 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1397 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=527
293 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1396 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=528
294 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1372 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=529
295 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1373 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=530
296 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1374 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=531
297 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1375 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=532
298 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1376 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=533
299 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1380 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=534
300 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1395 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=535
301 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1394 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=536
302 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1393 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=537
303 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1392 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=538
304 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1391 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=539
305 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1390 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=540
306 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1389 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=541
307 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1387 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=542
308 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1386 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=543
309 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1385 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=544
310 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1384 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=545
311 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1382 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=546
312 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1381 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=547
313 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1362 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=550
314 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1363 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=551
315 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1364 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=552
316 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1365 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=553
317 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1366 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=554
318 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1367 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=555
319 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1368 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=556
320 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1369 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=557
321 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1370 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=558
322 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1371 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=559
323 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1372 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=560
324 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1374 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=562
325 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1375 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=563
326 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1376 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=564
327 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1379 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=565
328 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1380 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=566
329 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1381 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=567
330 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1382 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=568
331 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1384 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=569
332 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1385 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=571
333 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1386 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=572
334 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1387 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=573
335 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1045 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=574
336 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1389 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=575
337 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1390 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=576
338 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1391 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=577
339 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1392 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=578
340 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1393 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=579
341 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1394 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=580
342 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1395 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=581
343 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1396 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=582
344 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1397 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=583
345 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1398 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=584
346 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1399 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=585
347 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1400 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=586
348 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1401 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=587
349 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1402 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=588
350 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1405 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=589
351 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1409 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=590
352 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1409 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=591
353 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1411 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=592
354 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1413 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=593
355 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1414 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=594
356 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1415 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=595
357 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1416 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=596
358 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1418 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=598
359 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1419 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=599
360 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1420 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=600
361 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1421 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=601
362 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1422 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=602
363 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1423 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=603
364 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1424 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=604
365 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1425 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=605
366 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1427 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=606
367 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1428 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=607
368 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1429 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=608
369 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1430 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=609
370 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1431 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=610
371 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1432 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=611
372 visiome https://visiome.neuroinf.jp/modules/xoonips/detail.php?item_id=7252 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=612
373 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1434 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=613
374 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1435 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=614
375 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1450 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=615
376 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1452 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=616
377 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1453 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=617
378 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1454 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=618
379 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1455 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=619
380 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1458 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=620
381 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1460 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=621
382 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1461 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=622
383 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1462 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=623
384 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1463 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=624
385 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1466 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=625
386 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1465 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=626
387 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1467 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=627
388 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1470 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=628
389 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1471 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=629
390 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1472 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=630
391 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1473 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=631
392 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1474 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=632
393 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1476 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=633
394 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1477 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=634
395 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1479 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=635
396 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1481 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=636
397 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1482 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=637
398 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1483 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=638
399 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1486 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=639
400 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1487 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=640
401 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1488 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=641
402 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1489 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=642
403 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1490 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=643
404 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1493 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=644
405 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1496 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=645
406 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1497 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=646
407 cerebellum https://cerebellum.neuroinf.jp/modules/xoonips/detail.php?item_id=1498 http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=647
408 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/533/SundtEtAl2015.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=656
409 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
410 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/538/CS56PyModelDB.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=659
411 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/539/TCconvergenceModel.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=660
412 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/540/BahlEtAl2012.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=661
413 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
414 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
415 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/548/GentilettiEtAl2016.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=668
416 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
417 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/560/ShepherdBrayton1979.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=680
418 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
419 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/564/VladimirovTuTraub2012.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=683
420 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/565/xiaoshenli.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=684
421 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
422 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
423 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/569/Schizophr.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=687
424 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/570/SaudargieneEtAl2015.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=688
425 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/571/bpap.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=689
426 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/572/magical7.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=691
427 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/575/HyunEtAl2015.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=696
428 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
429 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
430 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/582/AshhadNarayanan2013.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=699
431 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/583/DiFrancescoNoble1985.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=700
432 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/584/DGC.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=701
433 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
434 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
435 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
436 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/589/SousaEtAl2014.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=706
437 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/590/MiglioreEtAl2015.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=707
438 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
439 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
440 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/595/Moore2015.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=711
441 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
442 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
443 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/600/2VN.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=716
444 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
445 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
446 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/606/CA3Atrophy.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=722
447 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
448 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
449 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/613/Demo.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=728
450 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/614/ShortEtAl2016.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=729
451 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/618/Casaleggio2014.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=733
452 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/623/MiglioreMcTavish2013.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=736
453 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/624/KimEtAl2017.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=737
454 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/626/fig1b.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=738
455 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
456 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/629/oltedal.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=741
457 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
458 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
459 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
460 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/640/moore83.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=751
461 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/642/SpaceClampDemo.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=753
462 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/644/anderson.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=755
463 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/645/VNO.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=756
464 cns https://cns.neuroinf.jp/modules/fmanager/index.php/view/645/VNO.zip http://sim.neuroinf.jp/modules/xoonips/detail.php?item_id=757
465 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

64
package.json Normal file
View File

@ -0,0 +1,64 @@
{
"name": "nimg",
"version": "1.0.0",
"private": true,
"dependencies": {
"@orrisroot/react-html-parser": "^2.1.1",
"@testing-library/jest-dom": "^5.16.4",
"@testing-library/react": "^13.3.0",
"@testing-library/user-event": "^14.2.1",
"@types/async-lock": "^1.1.5",
"@types/jest": "^28.1.2",
"@types/lokijs": "^1.5.7",
"@types/node": "^18.0.0",
"@types/react": "^18.0.14",
"@types/react-dom": "^18.0.5",
"@types/react-router-dom": "^5.3.3",
"@types/react-router-hash-link": "^2.4.5",
"async-lock": "^1.3.1",
"axios": "^0.27.2",
"lokijs": "^1.5.12",
"moment": "^2.29.3",
"rc-tree": "^5.6.5",
"react": "^18.2.0",
"react-app-polyfill": "^3.0.0",
"react-cookie": "^4.1.1",
"react-dom": "^18.2.0",
"react-ga4": "^1.4.1",
"react-helmet-async": "^1.3.0",
"react-image-lightbox": "^5.1.4",
"react-overlays": "^5.2.0",
"react-router-dom": "^6.3.0",
"react-router-hash-link": "^2.4.3",
"react-scripts": "5.0.1",
"react-spinner-material": "^1.4.0",
"split-string": "^6.1.0",
"typescript": "~4.7.4",
"web-vitals": "^2.1.4",
"xregexp": "^5.1.1"
},
"resolutions": {
"@svgr/webpack": "^6.2.1"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}

11
public/.htaccess Normal file
View File

@ -0,0 +1,11 @@
RewriteEngine on
RewriteBase /
RewriteCond %{QUERY_STRING} (^|&)file_id=([0-9]+)($|&)
RewriteRule ^modules/xoonips/download.php /modules/xoonips/file/%2? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_FILENAME}index.html !-f
RewriteRule . /index.html [L]

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

19
public/index.html Normal file
View File

@ -0,0 +1,19 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta
name="description"
content="NIMG-PF is the Neuroinformatics site of Neuroimaging under NIJC."
/>
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<title>NIMG - NeuroImaging Platform</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
</body>
</html>

15
public/manifest.json Normal file
View File

@ -0,0 +1,15 @@
{
"short_name": "NIMG-PF",
"name": "NeuroImaging Platform",
"icons": [
{
"src": "favicon.ico",
"sizes": "32x32 16x16",
"type": "image/x-icon"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

2
public/robots.txt Normal file
View File

@ -0,0 +1,2 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *

89
public/rss.xml Normal file
View File

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>NeuroImaging Platform</title>
<link>https://nimg.neuroinf.jp/</link>
<description>NIMG-PF is the Neuroinformatics site of Neuroimaging under NIJC.</description>
<language>en</language>
<item>
<title>Age-related effect of serotonin transporter genotype on amygdala and prefrontal cortex function in adolescence.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7998</link>
<pubDate>Sat, 11 May 2019 03:21:02 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7998</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Age-related effect of serotonin transporter genotype on amygdala and prefrontal cortex function in adolescence.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7999</link>
<pubDate>Sat, 11 May 2019 03:21:02 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7999</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Altered emotion processing circuits during the anticipation of emotional stimuli in women with borderline personality disorder.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=8002</link>
<pubDate>Sat, 11 May 2019 03:21:02 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=8002</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Age-related effect of serotonin transporter genotype on amygdala and prefrontal cortex function in adolescence.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=8004</link>
<pubDate>Sat, 11 May 2019 03:21:02 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=8004</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Altered emotion processing circuits during the anticipation of emotional stimuli in women with borderline personality disorder.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7996</link>
<pubDate>Sat, 11 May 2019 03:21:02 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7996</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Altered emotion processing circuits during the anticipation of emotional stimuli in women with borderline personality disorder.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7997</link>
<pubDate>Sat, 11 May 2019 03:21:02 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7997</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Violence-related PTSD and neural activation when seeing emotionally charged male-female interactions.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7984</link>
<pubDate>Sat, 11 May 2019 03:21:01 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7984</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Valence-specific conflict moderation in the dorso-medial PFC and the caudate head in emotional speech.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7986</link>
<pubDate>Sat, 11 May 2019 03:21:01 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7986</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Functional alteration in frontolimbic systems relevant to moral judgment in cocaine-dependent subjects.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7988</link>
<pubDate>Sat, 11 May 2019 03:21:01 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7988</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
<item>
<title>Functional changes of the reward system underlie blunted response to social gaze in cocaine users.</title>
<link>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7991</link>
<pubDate>Sat, 11 May 2019 03:21:01 GMT</pubDate>
<guid>https://nimg.neuroinf.jp/modules/xoonips/detail.php?item_id=7991</guid>
<description></description>
<category>Incoming Public Item</category>
</item>
</channel>
</rss>

2
src/App.css Normal file
View File

@ -0,0 +1,2 @@
@import url("./common/assets/xoops.css");
@import url("./custom/assets/style.css");

10
src/App.test.tsx Normal file
View File

@ -0,0 +1,10 @@
import { render, screen } from "@testing-library/react";
import React from "react";
import App from "./App";
test("renders welcome message", () => {
window.scrollTo = () => {};
render(<App />);
const linkElement = screen.getByText(/NeuroImaging Platform/);
expect(linkElement).toBeInTheDocument();
});

20
src/App.tsx Normal file
View File

@ -0,0 +1,20 @@
import React from "react";
import { CookiesProvider } from "react-cookie";
import { HelmetProvider } from "react-helmet-async";
import { BrowserRouter } from "react-router-dom";
import "./App.css";
import AppRoot from "./common/AppRoot";
const App: React.FC = () => {
return (
<BrowserRouter>
<CookiesProvider>
<HelmetProvider>
<AppRoot />
</HelmetProvider>
</CookiesProvider>
</BrowserRouter>
);
};
export default App;

View File

@ -0,0 +1,31 @@
import React from "react";
import { Helmet } from "react-helmet-async";
import { Route, Routes } from "react-router-dom";
import PageNotFound from "../common/lib/PageNotFound";
import { MultiLang } from "../config";
import Functions from "../functions";
import BrainExplorerIndex from "./BrainExplorerIndex";
interface Props {
lang: MultiLang;
}
const BrainExplorer: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<>
<Helmet>
<title>Brain Explorer - {Functions.siteTitle(lang)}</title>
</Helmet>
<Routes>
<Route path="index_jm_eng.php" element={<BrainExplorerIndex lang="en" type="jm" />} />
<Route path="index_jm_jpn.php" element={<BrainExplorerIndex lang="ja" type="jm" />} />
<Route path="index_hu_eng.php" element={<BrainExplorerIndex lang="en" type="hu" />} />
<Route path="index_hu_jpn.php" element={<BrainExplorerIndex lang="ja" type="hu" />} />
<Route path="*" element={<PageNotFound lang={lang} />} />
</Routes>
</>
);
};
export default BrainExplorer;

View File

@ -0,0 +1,49 @@
.panel {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: white;
z-index: 1;
}
.panel::after {
content: "";
display: block;
clear: both;
}
.panelNavi {
width: 22%;
height: 100%;
border-right: 2px solid #cccccc;
float: left;
}
.panelButtons {
border-bottom: 2px solid #cccccc;
padding: 5px 10px;
}
.panelMenu {
padding: 5px 10px;
}
.panelMenuAistLink {
text-align: center;
}
.panelContent {
height: 100%;
overflow: auto;
float: right;
padding: 5px;
width: calc(100% - 22% - 2px);
}
.panelContent iframe {
width: 100%;
height: 100%;
border: 0;
}

View File

@ -0,0 +1,111 @@
import React, { useState } from "react";
import { Modal } from "react-overlays";
import { Link, useLocation } from "react-router-dom";
import { MultiLang } from "../config";
import Functions from "../functions";
import imageLogoAist from "./assets/images/logo_aist.png";
import imageNaviHome from "./assets/images/navi_home.png";
import imageNaviInfo from "./assets/images/navi_info.png";
import styles from "./BrainExplorerIndex.module.css";
interface Props {
lang: MultiLang;
type: "jm" | "hu";
}
const title = {
en: "Brain Atlas Database of Japanese Monkey for WWW.",
ja: "脳画像データベース",
};
const description = {
en: "Neuroscience researches for elucidation of brain functions require electrophysiological, pharmacological or anatomical operations into the brain. However, no brain atlas of a Japanese monkey, which is used widely in these experiments, was made except detail maps of the brain stem. We have made magnetic resonance images as well as histological sections of a Japanese monkey brain. For the purpose of the practical and efficient use of these images, we will construct computer database for WWW, in which we can display, magnify, and compare these images by easy mouse operations.",
ja: "脳の優れた機能を解明し工学に利用するために、ヒトに近い機能を持った霊長類の神経科学的研究が行われている。脳機能の解明のためには脳の内部に対してさまざまな処置を施す必要がある。例えば、脳の特定の位置に記録、刺激電極を刺入する、薬剤を注入する、局部的に破壊するなどの場合がある。これらの処置に必要な資料は、脳の組織標本である。しかし、研究で良く使われるニホンザルの脳の組織標本は脳幹部を除いては今まで利用できる資料はなかった。そこで脳のMRI磁気共鳴映像法連続画像を撮ると共に、高次機能を調べるうえで重要な脳皮質全体を含む組織標本の連続切片を作成した。実験上また文献を読むときなどの資料として有効かつ簡便に活用するために、それらの画像をデジタル化し、マウスの操作のみで簡便に参照できるデータベースを構築し、WWW上で公開する。",
};
const BrainExplorerIndex: React.FC<Props> = (props: Props) => {
const { lang, type } = props;
const [showInfo, setShowInfo] = useState(false);
const location = useLocation();
const parentUrl = location.pathname.substring(0, location.pathname.lastIndexOf("/"));
const getUrl = (type: string, lang: MultiLang) => {
const label = { en: "eng", ja: "jpn" };
return `${parentUrl}/index_${type}_${label[lang]}.php`;
};
const renderShowInfo = () => {
return (
<div>
<h1>{title[lang]}</h1>
<hr />
<p>{description[lang]}</p>
<hr />
</div>
);
};
const renderBrainExplorerContent = () => {
const url = `./${type === "hu" ? "human" : "jmonkey"}.html?LANG=${lang === "en" ? "ENG" : "JPN"}`;
return <iframe src={url} title="image"></iframe>;
};
return (
<Modal show={true}>
<div className={styles.panel}>
<div className={styles.panelNavi}>
<div className={styles.panelButtons}>
<Link to="/">
<img src={imageNaviHome} alt="HOME" />
</Link>
&nbsp;
<a
href="/"
onClick={(e) => {
e.preventDefault();
setShowInfo(true);
}}
>
<img src={imageNaviInfo} alt="INFO" />
</a>
</div>
<div className={styles.panelMenu}>
<h3>Brain Explorer [MRI]</h3>
<ul>
<li>
<Link to={getUrl("jm", lang)} onClick={() => setShowInfo(false)}>
{Functions.mlang("[en]Japanese Monkey[/en][ja]ニホンザル[/ja]", lang)}
<br />
<em>(Macaca fuscata)</em>
<br />
{Functions.mlang("[en]Developmental Data[/en][ja]発達の様子[/ja]", lang)}
</Link>
</li>
<li>
<Link to={getUrl("hu", lang)} onClick={() => setShowInfo(false)}>
{Functions.mlang("[en]Human[/en][ja]ヒト[/ja]", lang)}
<br />
<em>(Homo sapiens)</em>
</Link>
</li>
</ul>
<hr />
<ul>
<li>
<Link to={getUrl(type, lang === "en" ? "ja" : "en")}>{Functions.mlang("[en]Japanese page.[/en][ja]English page.[/ja]", lang)}</Link>
</li>
</ul>
<hr />
<div className={styles.panelMenuAistLink}>
<a href="http://www.aist.go.jp/" target="_blank" rel="noopener noreferrer">
<img src={imageLogoAist} alt="AIST" />
</a>
</div>
</div>
</div>
<div className={styles.panelContent}>{showInfo ? renderShowInfo() : renderBrainExplorerContent()}</div>
</div>
</Modal>
);
};
export default BrainExplorerIndex;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

1035
src/brainexplorer/lib/g3d.ts Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,616 @@
export interface M3DHeader {
magic: number;
x: number;
y: number;
z: number;
filename: string;
subject: string;
direction: string;
date: number;
fov: number;
weight: number;
ax: number;
ay: number;
az: number;
ox: number;
oy: number;
oz: number;
dlen: number;
dth: number;
memo: string;
}
interface M3DImageRenderingContext {
a1: number;
a2: number;
a3: number;
b1: number;
b2: number;
b3: number;
c1: number;
c2: number;
c3: number;
d1: number;
d2: number;
d3: number;
ra1: number;
ra1_2: number;
ra2: number;
ra2_2: number;
ra3: number;
ra3_2: number;
rb1: number;
rb1_2: number;
rb2: number;
rb2_2: number;
rb3: number;
rb3_2: number;
rc1: number;
rc1_2: number;
rc2: number;
rc2_2: number;
rc3: number;
rc3_2: number;
rd1: number;
rd2: number;
rd3: number;
}
/* MeshLength unit is same as fov unit */
const MeshLength = 10;
enum DrawingLineType {
VLine = 0,
VDottedLine = 1,
HLine = 2,
HDottedLine = 3,
}
const LineBrightness = 200;
const DottedLineBrightness = 128;
const EXACTSWITCH: 0 | 1 = 1;
const MaxIntensity = 200;
class M3D {
private data: ArrayBuffer;
private header: M3DHeader | null = null;
private xposView: Int32Array | null = null;
private zposView: Int32Array | null = null;
private yposView: Int32Array | null = null;
private img3dView: Uint8ClampedArray | null = null;
private imageSize = 0; // imagesize size : max (size_x, size_y, size_z)
private centerX = 0; // camera coordinates origin : x
private centerY = 0; // camera coordinates origin : y
private centerZ = 0; // camera coordinates origin : z
private ox = 0; // object coordinates origin : x
private oy = 0; // object coordinates origin : y
private oz = 0; // object coordinates origin : z
constructor(data: ArrayBuffer) {
this.data = data;
this._initialize();
}
isBigEndian(): boolean {
return new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x11;
}
getHeader(): M3DHeader | null {
return this.header;
}
drawImage(canvas: HTMLCanvasElement, ax: number, ay: number, az: number, cutdepth: number, th: number, is3d: boolean, mesh: boolean): boolean {
const irc: M3DImageRenderingContext = {
a1: 0,
a2: 0,
a3: 0,
b1: 0,
b2: 0,
b3: 0,
c1: 0,
c2: 0,
c3: 0,
d1: 0,
d2: 0,
d3: 0,
ra1: 0,
ra1_2: 0,
ra2: 0,
ra2_2: 0,
ra3: 0,
ra3_2: 0,
rb1: 0,
rb1_2: 0,
rb2: 0,
rb2_2: 0,
rb3: 0,
rb3_2: 0,
rc1: 0,
rc1_2: 0,
rc2: 0,
rc2_2: 0,
rc3: 0,
rc3_2: 0,
rd1: 0,
rd2: 0,
rd3: 0,
};
// console.log(ax, ay, az, cutdepth, th, dim, mesh)
if (this.header === null) {
return false;
}
canvas.width = this.imageSize;
canvas.height = this.imageSize;
const ctx = canvas.getContext('2d');
if (ctx === null) {
return false;
}
ctx.fillStyle = 'rgb(0, 0, 0)';
ctx.fillRect(0, 0, this.imageSize, this.imageSize);
const img = ctx.getImageData(0, 0, this.imageSize, this.imageSize);
this._setMatrix(ax, ay, az, irc);
if (is3d) {
const ddimg = [...Array<number>(this.imageSize * this.imageSize)].map(() => 0);
this._makeDIMG(img, cutdepth, th, ddimg, irc);
this._makeShadingImage(img, ddimg);
} else {
this._makeSliceImage(img, cutdepth, irc);
}
if (mesh) {
this._drawMesh(img, irc);
}
ctx.putImageData(img, 0, 0);
return true;
}
private _makeDIMG(img: ImageData, cutdepth: number, th: number, ddimg: number[], irc: M3DImageRenderingContext) {
if (this.header === null) {
return;
}
const pdimg = [...Array<number>(this.imageSize * this.imageSize)].map(() => 0);
const sw = th > this.header.dth ? 1 : th < this.header.dth ? 2 : EXACTSWITCH;
switch (sw) {
case 0: {
this._transSurface(cutdepth, pdimg, irc);
let pos = 0;
for (let j = 0; j < this.imageSize; j++) {
for (let i = 0; i < this.imageSize; i++, pos++) {
ddimg[pos] = pdimg[pos];
const pix = this._getPixel(i, j, cutdepth, irc);
if (pix > th) {
this._drawPixel(img, pos, pix, pix, pix);
ddimg[pos] = cutdepth;
continue;
}
}
}
break;
}
case 1: {
this._transSurface(cutdepth, pdimg, irc);
let pos = 0;
for (let y = 0; y < this.imageSize; y++) {
for (let x = 0; x < this.imageSize; x++, pos++) {
let pdPos = (ddimg[pos] = pdimg[pos]);
if (pdPos === 0) {
continue;
}
const pix = this._getPixel(x, y, cutdepth, irc);
if (pix > th) {
this._drawPixel(img, pos, pix, pix, pix);
ddimg[pos] = cutdepth;
continue;
}
if (pdPos < cutdepth) {
pdPos = cutdepth;
}
ddimg[pos] = 0;
for (let z = pdPos; z < this.imageSize; z++) {
const pix = this._getPixel(x, y, z, irc);
if (pix > th) {
ddimg[pos] = z;
break;
}
}
}
}
break;
}
case 2: {
let pos = 0;
for (let y = 0; y < this.imageSize; y++) {
for (let x = 0; x < this.imageSize; x++, pos++) {
ddimg[pos] = 0;
for (let z = cutdepth; z < this.imageSize; z++) {
const pix = this._getPixel(x, y, z, irc);
if (pix > th) {
if (z === cutdepth) {
this._drawPixel(img, pos, pix, pix, pix);
} else {
ddimg[pos] = z;
}
break;
}
}
}
}
break;
}
}
}
private _makeShadingImage(img: ImageData, ddimg: number[]) {
let pos = 0;
for (let x = 0; x < this.imageSize; x++) {
for (let y = 0; y < this.imageSize; y++, pos++) {
const base = pos * 4;
if (img.data[base] === 0) {
let timg2d = 0;
if (x < this.imageSize - 2 && y < this.imageSize - 2) {
if (ddimg[pos] !== 0) {
const nx = (ddimg[pos] + ddimg[pos + this.imageSize] - ddimg[pos + 2] - ddimg[pos + 2 + this.imageSize]) / 4.0;
const ny = (ddimg[pos] + ddimg[pos + 1] - ddimg[pos + this.imageSize * 2] - ddimg[pos + 1 + this.imageSize * 2]) / 4.0;
const n = Math.sqrt(nx * nx + ny * ny + 1);
timg2d = Math.round(MaxIntensity / n);
}
}
this._drawPixel(img, pos, timg2d, timg2d, timg2d);
}
}
}
}
private _makeSliceImage(img: ImageData, cutdepth: number, irc: M3DImageRenderingContext) {
let pos = 0;
for (let y = 0; y < this.imageSize; y++) {
for (let x = 0; x < this.imageSize; x++, pos++) {
const pix = this._getPixel(x, y, cutdepth, irc);
this._drawPixel(img, pos, pix, pix, pix);
}
}
}
private _drawMesh(img: ImageData, irc: M3DImageRenderingContext) {
let origx: number;
let origy: number;
if (this.header === null) {
return;
}
if (this.header.ox !== 0 && this.header.oy !== 0) {
origx = this.header.ox * irc.ra1 + this.header.oy * irc.rb1 + this.header.oz * irc.rc1 + irc.rd1;
origy = this.header.ox * irc.ra2 + this.header.oy * irc.rb2 + this.header.oz * irc.rc2 + irc.rd2;
} else {
origx = this.centerX;
origy = this.centerY;
}
origx = this._fround(origx, 5);
origy = this._fround(origy, 5);
const band = (this.header.x * MeshLength) / this.header.fov;
const r = 0;
const g = 0;
const b = LineBrightness;
const sr = 0;
const sg = 0;
const sb = DottedLineBrightness;
this._drawLine(img, Math.round(origx), r, g, b, DrawingLineType.VLine);
this._drawLine(img, Math.round(origy), r, g, b, DrawingLineType.HLine);
for (let pos = Math.round(origx) + band; pos < this.imageSize; pos += band) {
this._drawLine(img, Math.round(pos), sr, sg, sb, DrawingLineType.VDottedLine);
}
for (let pos = Math.round(origx) - band; pos >= 0; pos -= band) {
this._drawLine(img, Math.round(pos), sr, sg, sb, DrawingLineType.VDottedLine);
}
for (let pos = Math.round(origy) + band; pos < this.imageSize; pos += band) {
this._drawLine(img, Math.round(pos), sr, sg, sb, DrawingLineType.HDottedLine);
}
for (let pos = Math.round(origy) - band; pos >= 0; pos -= band) {
this._drawLine(img, Math.round(pos), sr, sg, sb, DrawingLineType.HDottedLine);
}
}
private _drawLine(img: ImageData, value: number, r: number, g: number, b: number, type: DrawingLineType) {
switch (type) {
case DrawingLineType.VLine: {
let pos = value;
for (let y = 0; y < this.imageSize; y++, pos += this.imageSize) {
this._drawPixel(img, pos, r, g, b);
}
break;
}
case DrawingLineType.VDottedLine: {
let pos = value;
for (let y = 0; y < this.imageSize; y += 2, pos += this.imageSize * 2) {
this._drawPixel(img, pos, r, g, b);
}
break;
}
case DrawingLineType.HLine: {
let pos = value * this.imageSize;
for (let x = 0; x < this.imageSize; x++, pos++) {
this._drawPixel(img, pos, r, g, b);
}
break;
}
case DrawingLineType.HDottedLine: {
let pos = value * this.imageSize;
for (let x = 0; x < this.imageSize; x += 2, pos += 2) {
this._drawPixel(img, pos, r, g, b);
}
break;
}
default:
break;
}
}
private _drawPixel(img: ImageData, pos: number, r: number, g: number, b: number) {
let base = pos * 4;
img.data[base++] = r;
img.data[base++] = g;
img.data[base++] = b;
img.data[base] = 255;
}
private _getPixel(x: number, y: number, z: number, irc: M3DImageRenderingContext): number {
const len = [...Array<number>(8)].map(() => 0);
const ratio = [...Array<number>(8)].map(() => 0);
const tx = x * irc.a1 + y * irc.b1 + z * irc.c1 + irc.d1;
const ty = x * irc.a2 + y * irc.b2 + z * irc.c2 + irc.d2;
const tz = x * irc.a3 + y * irc.b3 + z * irc.c3 + irc.d3;
let ix = Math.floor(tx);
let iy = Math.floor(ty);
let iz = Math.floor(tz);
if (this.header === null || this.img3dView === null) {
return 0;
}
if (ix < 0 || ix + 1 >= this.header.x || iy < 0 || iy + 1 >= this.header.y || iz < 0 || iz + 1 >= this.header.z) {
return 0;
}
const ax1 = Math.abs(tx - ix);
const ax2 = Math.abs(1 - ax1);
const ay1 = Math.abs(ty - iy);
const ay2 = Math.abs(1 - ay1);
const az1 = Math.abs(tz - iz);
const az2 = Math.abs(1 - az1);
let sumlen1 = 0;
for (let i = 0; i < 8; i++) {
len[i] = i & 1 ? ax2 : ax1;
len[i] += i & 2 ? ay2 : ay1;
len[i] += i & 4 ? az2 : az1;
if (len[i] < 0.001) {
ix += i & 1 ? 1 : 0;
iy += i & 2 ? 1 : 0;
iz += i & 4 ? 1 : 0;
return this.img3dView[ix + iy * this.header.x + iz * this.header.x * this.header.y];
}
sumlen1 += ratio[i] = 1 / len[i];
}
let pos = ix + iy * this.header.x + iz * this.header.x * this.header.y;
let sumlen2 = this.img3dView[pos] * ratio[0];
sumlen2 += this.img3dView[pos + 1] * ratio[1];
sumlen2 += this.img3dView[pos + this.header.x] * ratio[2];
sumlen2 += this.img3dView[pos + 1 + this.header.x] * ratio[3];
pos += this.header.x * this.header.y;
sumlen2 += this.img3dView[pos] * ratio[4];
sumlen2 += this.img3dView[pos + 1] * ratio[5];
sumlen2 += this.img3dView[pos + this.header.x] * ratio[6];
sumlen2 += this.img3dView[pos + 1 + this.header.x] * ratio[7];
return Math.round(sumlen2 / sumlen1);
}
private _transSurface(cutdepth: number, pdimg: number[], irc: M3DImageRenderingContext) {
if (this.header === null || this.xposView === null || this.yposView === null || this.zposView === null) {
return;
}
const ix = [...Array<number>(8)].map(() => 0);
const iy = [...Array<number>(8)].map(() => 0);
const iz = [...Array<number>(8)].map(() => 0);
for (let i = 0; i < this.header.dlen; i++) {
const x = this.xposView[i];
const y = this.yposView[i];
const z = this.zposView[i];
ix[0] = x * irc.ra1 + y * irc.rb1 + z * irc.rc1 + irc.rd1;
iy[0] = x * irc.ra2 + y * irc.rb2 + z * irc.rc2 + irc.rd2;
iz[0] = x * irc.ra3 + y * irc.rb3 + z * irc.rc3 + irc.rd3;
ix[1] = ix[0] + irc.ra1_2;
iy[1] = iy[0] + irc.ra2_2;
iz[1] = iz[0] + irc.ra3_2;
ix[2] = ix[0] + irc.rb1_2;
iy[2] = iy[0] + irc.rb2_2;
iz[2] = iz[0] + irc.rb3_2;
ix[3] = ix[0] + irc.rc1_2;
iy[3] = iy[0] + irc.rc2_2;
iz[3] = iz[0] + irc.rc3_2;
ix[4] = ix[1] + irc.rb1_2;
iy[4] = iy[1] + irc.rb2_2;
iz[4] = iz[1] + irc.rb3_2;
ix[5] = ix[1] + irc.rc1_2;
iy[5] = iy[1] + irc.rc2_2;
iz[5] = iz[1] + irc.rc3_2;
ix[6] = ix[2] + irc.rc1_2;
iy[6] = iy[2] + irc.rc2_2;
iz[6] = iz[2] + irc.rc3_2;
ix[7] = ix[4] + irc.rc1_2;
iy[7] = iy[4] + irc.rc2_2;
iz[7] = iz[4] + irc.rc3_2;
for (let j = 0; j < 8; j++) {
const xi = Math.round(ix[j]);
const yi = Math.round(iy[j]);
if (xi < 0 || xi >= this.imageSize || yi < 0 || yi >= this.imageSize || iz[j] < cutdepth || iz[j] >= this.imageSize) {
continue;
}
const pos = xi + yi * this.imageSize;
if (pdimg[pos] === 0 || pdimg[pos] > iz[j]) {
pdimg[pos] = iz[j];
}
}
}
}
private _setMatrix(x: number, y: number, z: number, irc: M3DImageRenderingContext) {
const xtr = [...Array<number>(9)].map(() => 0);
const ytr = [...Array<number>(9)].map(() => 0);
const ztr = [...Array<number>(9)].map(() => 0);
const tmp = [...Array<number>(9)].map(() => 0);
const tr = [...Array<number>(9)].map(() => 0);
this._setXtr(xtr, (x * Math.PI) / 180.0);
this._setYtr(ytr, (y * Math.PI) / 180.0);
this._setZtr(ztr, (z * Math.PI) / 180.0);
this._multi(ytr, xtr, tmp);
this._multi(ztr, tmp, tr);
irc.a1 = tr[0];
irc.b1 = tr[1];
irc.c1 = tr[2];
irc.a2 = tr[3];
irc.b2 = tr[4];
irc.c2 = tr[5];
irc.a3 = tr[6];
irc.b3 = tr[7];
irc.c3 = tr[8];
irc.d1 = -irc.a1 * this.centerX - irc.b1 * this.centerY - irc.c1 * this.centerZ + this.ox;
irc.d2 = -irc.a2 * this.centerX - irc.b2 * this.centerY - irc.c2 * this.centerZ + this.oy;
irc.d3 = -irc.a3 * this.centerX - irc.b3 * this.centerY - irc.c3 * this.centerZ + this.oz;
this._setXtr(xtr, (-x * Math.PI) / 180.0);
this._setYtr(ytr, (-y * Math.PI) / 180.0);
this._setZtr(ztr, (-z * Math.PI) / 180.0);
this._multi(ytr, ztr, tmp);
this._multi(xtr, tmp, tr);
irc.ra1 = tr[0];
irc.rb1 = tr[1];
irc.rc1 = tr[2];
irc.ra2 = tr[3];
irc.rb2 = tr[4];
irc.rc2 = tr[5];
irc.ra3 = tr[6];
irc.rb3 = tr[7];
irc.rc3 = tr[8];
irc.rd1 = -irc.ra1 * this.ox - irc.rb1 * this.oy - irc.rc1 * this.oz + this.centerX;
irc.rd2 = -irc.ra2 * this.ox - irc.rb2 * this.oy - irc.rc2 * this.oz + this.centerY;
irc.rd3 = -irc.ra3 * this.ox - irc.rb3 * this.oy - irc.rc3 * this.oz + this.centerZ;
irc.ra1_2 = irc.ra1 / 2;
irc.rb1_2 = irc.rb1 / 2;
irc.rc1_2 = irc.rc1 / 2;
irc.ra2_2 = irc.ra2 / 2;
irc.rb2_2 = irc.rb2 / 2;
irc.rc2_2 = irc.rc2 / 2;
irc.ra3_2 = irc.ra3 / 2;
irc.rb3_2 = irc.rb3 / 2;
irc.rc3_2 = irc.rc3 / 2;
}
private _setXtr(xtr: number[], ang: number) {
xtr[0] = 1;
xtr[1] = 0;
xtr[2] = 0;
xtr[3] = 0;
xtr[4] = Math.cos(ang);
xtr[5] = -Math.sin(ang);
xtr[6] = 0;
xtr[7] = Math.sin(ang);
xtr[8] = Math.cos(ang);
}
private _setYtr(ytr: number[], ang: number) {
ytr[0] = Math.cos(ang);
ytr[1] = 0;
ytr[2] = Math.sin(ang);
ytr[3] = 0;
ytr[4] = 1;
ytr[5] = 0;
ytr[6] = -Math.sin(ang);
ytr[7] = 0;
ytr[8] = Math.cos(ang);
}
private _setZtr(ztr: number[], ang: number) {
ztr[0] = Math.cos(ang);
ztr[1] = -Math.sin(ang);
ztr[2] = 0;
ztr[3] = Math.sin(ang);
ztr[4] = Math.cos(ang);
ztr[5] = 0;
ztr[6] = 0;
ztr[7] = 0;
ztr[8] = 1;
}
private _multi(l: number[], r: number[], a: number[]) {
a[0] = l[0] * r[0] + l[1] * r[3] + l[2] * r[6];
a[3] = l[3] * r[0] + l[4] * r[3] + l[5] * r[6];
a[6] = l[6] * r[0] + l[7] * r[3] + l[8] * r[6];
a[1] = l[0] * r[1] + l[1] * r[4] + l[2] * r[7];
a[4] = l[3] * r[1] + l[4] * r[4] + l[5] * r[7];
a[7] = l[6] * r[1] + l[7] * r[4] + l[8] * r[7];
a[2] = l[0] * r[2] + l[1] * r[5] + l[2] * r[8];
a[5] = l[3] * r[2] + l[4] * r[5] + l[5] * r[8];
a[8] = l[6] * r[2] + l[7] * r[5] + l[8] * r[8];
}
private _fround(x: number, n: number) {
return Math.round(x * Math.pow(10, n)) / Math.pow(10, n);
}
private _initialize(): void {
const view = new DataView(this.data);
const magic = view.getInt32(0, true);
const isLittleEndianFile = magic === 0x4d523344;
if (!isLittleEndianFile && magic !== 0x4433524d) {
console.log('invalid data format, this data is not m3d format');
return;
}
let offset = 0;
const decoder = new TextDecoder('utf-8');
this.header = {
magic: view.getInt32(offset, isLittleEndianFile),
x: view.getInt32((offset += 4), isLittleEndianFile),
y: view.getInt32((offset += 4), isLittleEndianFile),
z: view.getInt32((offset += 4), isLittleEndianFile),
filename: decoder.decode(new Uint8Array(this.data, (offset += 4), 256)).replace(/\0+$/, ''),
subject: decoder.decode(new Uint8Array(this.data, (offset += 256), 256)).replace(/\0+$/, ''),
direction: decoder.decode(new Uint8Array(this.data, (offset += 256), 4)).replace(/\0+$/, ''),
date: view.getUint32((offset += 4), isLittleEndianFile),
fov: view.getFloat64((offset += 4), isLittleEndianFile),
weight: view.getFloat64((offset += 8), isLittleEndianFile),
ax: view.getFloat64((offset += 8), isLittleEndianFile),
ay: view.getFloat64((offset += 8), isLittleEndianFile),
az: view.getFloat64((offset += 8), isLittleEndianFile),
ox: view.getFloat64((offset += 8), isLittleEndianFile),
oy: view.getFloat64((offset += 8), isLittleEndianFile),
oz: view.getFloat64((offset += 8), isLittleEndianFile),
dlen: view.getInt32((offset += 8), isLittleEndianFile),
dth: view.getInt32((offset += 4), isLittleEndianFile),
memo: decoder.decode(new Uint8Array(this.data, (offset += 4), 256)).replace(/\0+$/, ''),
};
// swap byte order if endian is not matched
if ((this.isBigEndian() && isLittleEndianFile) || (!this.isBigEndian() && !isLittleEndianFile)) {
const start = 864;
const end = start + this.header.dlen * 4 * 3;
for (let i = start; i < end; i += 4) {
const data = new Uint8Array(this.data, i, 4);
data.reverse();
}
}
this.xposView = new Int32Array(this.data, 864, this.header.dlen);
this.yposView = new Int32Array(this.data, 864 + this.header.dlen * 4, this.header.dlen);
this.zposView = new Int32Array(this.data, 864 + this.header.dlen * 8, this.header.dlen);
this.img3dView = new Uint8ClampedArray(this.data, 864 + this.header.dlen * 12, this.header.x * this.header.y * this.header.z);
// set image generation offset
this.imageSize = Math.ceil(Math.max(this.header.x, this.header.y, this.header.z) * Math.sqrt(3.0)) + 1;
this.centerX = (this.imageSize - 1) / 2.0;
this.centerY = (this.imageSize - 1) / 2.0;
this.centerZ = (this.imageSize - 1) / 2.0;
this.ox = (this.header.x - 1) / 2.0;
this.oy = (this.header.y - 1) / 2.0;
this.oz = (this.header.z - 1) / 2.0;
}
}
export default M3D;

41
src/common/AppRoot.tsx Normal file
View File

@ -0,0 +1,41 @@
import React, { useEffect, useState } from "react";
import { useCookies } from "react-cookie";
import ReactGA from "react-ga4";
import { useLocation } from "react-router-dom";
import Config, { MultiLang } from "../config";
import Page from "../custom/Page";
const AppMain: React.FC = () => {
const [cookies, setCookie] = useCookies();
const [lang, setLang] = useState<MultiLang>(["en", "ja"].includes(cookies.ml_lang) ? cookies.ml_lang : "en");
const location = useLocation();
useEffect(() => {
if (Config.GOOGLE_ANALYTICS_TRACKING_ID !== "") {
ReactGA.send("pageview");
}
const params = new URLSearchParams(location.search);
const ml_lang = params.get("ml_lang");
if (ml_lang != null && ["en", "ja"].includes(ml_lang)) {
if (cookies.ml_lang !== ml_lang) {
setCookie("ml_lang", ml_lang);
}
if (lang !== ml_lang) {
setLang(ml_lang as MultiLang);
}
}
window.scrollTo(0, 0);
}, [cookies, setCookie, lang, location]);
return <Page lang={lang} />;
};
const AppRoot: React.FC = () => {
if (Config.GOOGLE_ANALYTICS_TRACKING_ID !== "") {
ReactGA.initialize(Config.GOOGLE_ANALYTICS_TRACKING_ID);
}
return <AppMain />;
};
export default AppRoot;

View File

@ -0,0 +1,35 @@
import React from "react";
import { Navigate } from "react-router";
import { useLocation } from "react-router-dom";
import { MultiLang } from "../config";
import PageNotFound from "./lib/PageNotFound";
interface Props {
lang: MultiLang;
}
const XoopsPathRedirect: React.FC<Props> = (props: Props) => {
const { lang } = props;
const location = useLocation();
const getRedirectUrl = () => {
const { pathname } = location;
switch (pathname || "") {
case "/index.php": {
return "/";
}
}
return "";
};
if (location.pathname === "/") {
return null;
}
const url = getRedirectUrl();
if (url === "") {
return <PageNotFound lang={lang} />;
}
return <Navigate to={url} />;
};
export default XoopsPathRedirect;

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 985 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 905 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 856 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 789 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 779 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 475 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 678 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 492 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 736 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 B

View File

@ -0,0 +1,17 @@
img {border: 0;}
#xoopsHiddenText {visibility: hidden; color: #000000; font-weight: normal; font-style: normal; text-decoration: none;}
.pagneutral {font-size: 10px; width: 16px; height: 19px;text-align: center; background-image: url(./images/pagneutral.gif);}
.pagact {font-size: 10px; width: 16px; height: 19px;text-align: center; background-image: url(./images/pagact.gif);}
.paginact {font-size: 10px; width: 16px; height: 19px;text-align: center; background-image: url(./images/paginact.gif);}
#mainmenu a {text-align:left; display: block; margin: 0; padding: 4px;}
#mainmenu a.menuTop {padding-left: 3px;}
#mainmenu a.menuMain {padding-left: 3px;}
#mainmenu a.menuSub {padding-left: 9px;}
#usermenu a {text-align:left; display: block; margin: 0; padding: 4px;}
#usermenu a.menuTop {}
#usermenu a.highlight {color: #0000ff; background-color: #fcc;}

View File

@ -0,0 +1,33 @@
import React from "react";
import { Link, useLocation } from "react-router-dom";
import { MultiLang } from "../../config";
import mlangEnglish from "../assets/images/mlang_english.gif";
import mlangJapanese from "../assets/images/mlang_japanese.gif";
interface Props {
lang: MultiLang;
className?: string;
image?: string;
}
const langResources = {
en: { image: mlangEnglish, title: "English" },
ja: { image: mlangJapanese, title: "Japanese" },
};
const LangFlag: React.FC<Props> = (props: Props) => {
const { lang, className, image } = props;
const location = useLocation();
const params = new URLSearchParams(location.search);
const flagLang = lang === "en" ? "ja" : "en";
params.set("ml_lang", flagLang);
const url = location.pathname + "?" + params.toString();
const imageSrc = image || langResources[flagLang].image;
return (
<Link className={className} to={url}>
<img src={imageSrc} alt={langResources[flagLang].title} title={langResources[flagLang].title} />
</Link>
);
};
export default LangFlag;

View File

@ -0,0 +1,12 @@
import React from "react";
import Spinner from "react-spinner-material";
const Loading: React.FC = () => {
return (
<div style={{ display: "flex", justifyContent: "center", alignContent: "center", margin: "100px 0" }}>
<Spinner radius={60} color={"#cccccc"} stroke={8} visible={true} />
</div>
);
};
export default Loading;

View File

@ -0,0 +1,15 @@
import React from "react";
import { MultiLang } from "../../config";
import Functions from "../../functions";
interface Props {
lang: MultiLang;
}
const NoticeSiteHasBeenArchived: React.FC<Props> = (props: Props) => {
const { lang } = props;
const notice = "[en]This site has been archived since FY2019 and is no longer updated.[/en][ja]このサイトは、2019年度よりアーカイブサイトとして運用されています。[/ja]";
return <p style={{ color: "red" }}>{Functions.mlang(notice, lang)}</p>;
};
export default NoticeSiteHasBeenArchived;

View File

@ -0,0 +1,50 @@
import React, { useEffect } from "react";
import { Helmet } from "react-helmet-async";
import { useLocation, useNavigate } from "react-router-dom";
import { MultiLang } from "../../config";
import Functions from "../../functions";
interface Props {
lang: MultiLang;
}
const PageNotFound: React.FC<Props> = (props) => {
const { lang } = props;
const location = useLocation();
const navigate = useNavigate();
const url = "/";
useEffect(() => {
let timer: NodeJS.Timeout | null = null;
if (location.pathname !== "/" && process.env.NODE_ENV === "production") {
if (timer === null) {
timer = setTimeout(() => {
navigate(url);
}, 5000);
}
}
return () => {
if (timer !== null) {
clearTimeout(timer);
timer = null;
}
};
}, [location, navigate]);
return (
<div>
<Helmet>
<title>Page Not Found - {Functions.siteTitle(lang)}</title>
</Helmet>
<h1>Page Not Found</h1>
<section>
<p>The page you were trying to access doesn't exist.</p>
<p>
If the page does not automatically reload, please click <a href={url}>here</a>
</p>
</section>
</div>
);
};
export default PageNotFound;

View File

@ -0,0 +1,132 @@
import ReactHtmlParser, { convertNodeToElement, DomElement, DomNode, Transform } from "@orrisroot/react-html-parser";
import React from "react";
import { HashLink } from "react-router-hash-link";
import { MultiLang } from "../../config";
import Functions from "../../functions";
interface Props {
lang: MultiLang;
text: string;
dohtml?: boolean;
dosmiley?: boolean;
doxcode?: boolean;
doimage?: boolean;
dobr?: boolean;
}
const preConvertXCode = (text: string, doxcode: boolean): string => {
if (doxcode) {
return text.replace(/\[code\](.*)\[\/code\]/gs, (m0, m1) => {
return "[code]" + Functions.base64Encode(m1) + "[/code]";
});
}
return text;
};
const postConvertXCode = (text: string, doxcode: boolean, doimage: boolean): string => {
if (doxcode) {
return text.replace(/\[code\](.*)\[\/code\]/gs, (m0, m1) => {
const text = convertXCode(Functions.htmlspecialchars(Functions.base64Decode(m1)), doimage);
return '<div class="xoopsCode"><pre><code>' + text + "</code></pre></div>";
});
}
return text;
};
const convertClickable = (text: string) => {
text = text.replace(/(^|[^\]_a-zA-Z0-9-="'/]+)((?:https?|ftp)(?::\/\/[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%#]+[a-zA-Z0-9=]))/g, (...matches) => {
return matches[1] + '<a href="' + matches[2] + '" target="_blank" rel="external noopener noreferrer">' + matches[2] + "</a>";
});
text = text.replace(/(^|[^\]_a-zA-Z0-9-="'/:.]+)([a-zA-Z0-9.!#$%&*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+)/g, (...matches) => {
return matches[1] + '<a href="mailto:' + matches[2] + '">' + matches[2] + "</a>";
});
return text;
};
const convertXCode = (text: string, doimage: boolean): string => {
// TODO: implement
return text;
};
const convertSmiley = (text: string) => {
// TODO: implement
return text;
};
const convertBr = (text: string): string => {
return text.replace(/(\r?\n|\r)/g, "<br />");
};
const cssConvert = (text: string): object => {
const ret: any = {};
text.split(";").forEach((line) => {
const line_ = line.trim();
if (line.length === 0) {
return;
}
const kv = line_.split(":");
const key = Functions.camelCase(kv[0].trim());
const value = kv[1].trim();
ret[key] = value;
});
return ret;
};
const xoopsTransform: Transform = (node: DomNode, index: number | string, transform?: Transform): React.ReactNode => {
if (node.type === "tag") {
const node_ = node as DomElement;
if (node_.name === "a") {
const url = node_.attribs?.["href"] || "/";
const download = (node_.attribs && node_.attribs["download"]) || "";
const rel = (node_.attribs && node_.attribs["rel"]) || "";
const klass = (node_.attribs && node_.attribs["class"]) || "";
const isFile = download !== "" || /\.(zip|pdf|png|gif|jpg)$/.test(url);
const isExternal = /external/.test(rel) || /external/.test(klass) || /^(mailto|https?:?\/\/)/.test(url);
if (!isFile && !isExternal) {
const style = node_.attribs?.["style"] || "";
const title = node_.attribs?.["title"];
return (
<HashLink key={index} to={url} style={cssConvert(style)} title={title}>
{node_.children.map((value: DomNode, index: number) => {
return convertNodeToElement(value, index, transform);
})}
</HashLink>
);
}
}
if (node_.name === "img") {
const src = (node_.attribs && node_.attribs["src"]) || "";
node_.attribs["src"] = src.replace("`XOOPS_URL`", process.env.PUBLIC_URL);
return convertNodeToElement(node_, index, transform);
}
}
};
const XoopsCode: React.FC<Props> = (props: Props) => {
const { lang } = props;
let text = props.text;
const dohtml = !!props.dohtml;
const dosmiley = !!props.dosmiley;
const doxcode = !!props.doxcode;
const doimage = !!props.doimage;
const dobr = !!props.dobr;
text = preConvertXCode(text, doxcode);
if (!dohtml) {
text = Functions.htmlspecialchars(text);
text = convertClickable(text);
}
if (dosmiley) {
text = convertSmiley(text);
}
if (doxcode) {
text = convertXCode(text, doimage);
}
if (dobr) {
text = convertBr(text);
}
text = postConvertXCode(text, doxcode, doimage);
text = Functions.mlang(text, lang);
return <div>{ReactHtmlParser(text, { transform: xoopsTransform })}</div>;
};
export default XoopsCode;

15
src/config.ts Normal file
View File

@ -0,0 +1,15 @@
const SITE_TITLE = "NeuroImaging Platform";
const SITE_SLOGAN = "";
const GOOGLE_ANALYTICS_TRACKING_ID = "UA-3757403-1";
const XOONIPS_ITEMTYPES = ["book", "paper", "presentation", "data", "tool", "nimgcenter", "model", "url"];
export type MultiLang = "en" | "ja";
const Config = {
SITE_TITLE,
SITE_SLOGAN,
GOOGLE_ANALYTICS_TRACKING_ID,
XOONIPS_ITEMTYPES,
};
export default Config;

47
src/credits/Credits.tsx Normal file
View File

@ -0,0 +1,47 @@
import React from "react";
import { Navigate, Route, Routes, useLocation } from "react-router-dom";
import PageNotFound from "../common/lib/PageNotFound";
import { MultiLang } from "../config";
import CreditsIndex from "./CreditsIndex";
import CreditsPage from "./CreditsPage";
interface Props {
lang: MultiLang;
}
const CreditsTop: React.FC<Props> = (props: Props) => {
const { lang } = props;
const location = useLocation();
const params = new URLSearchParams(location.search);
const paramId = params.get("id");
if (null === paramId) {
return <CreditsIndex lang={lang} />;
}
if (/^[1-9][0-9]*$/.test(paramId)) {
const id = parseInt(paramId, 10);
return <CreditsPage lang={lang} id={id} />;
}
return <PageNotFound lang={lang} />;
};
const CreditsRedirectToTop: React.FC = () => {
const location = useLocation();
const url = location.pathname + "index.php" + location.search + location.hash;
return <Navigate to={url} />;
};
const Credits: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<>
<Routes>
<Route path="" element={<CreditsRedirectToTop />} />
<Route path="index.php" element={<CreditsTop lang={lang} />} />
<Route path="aboutus.php" element={<CreditsPage lang={lang} id={0} />} />
<Route path="*" element={<PageNotFound lang={lang} />} />
</Routes>
</>
);
};
export default Credits;

View File

@ -0,0 +1,59 @@
import React, { useEffect, useState } from "react";
import { Helmet } from "react-helmet-async";
import { Link } from "react-router-dom";
import Loading from "../common/lib/Loading";
import NoticeSiteHasBeenArchived from "../common/lib/NoticeSiteHasBeenArchived";
import PageNotFound from "../common/lib/PageNotFound";
import { MultiLang } from "../config";
import Functions from "../functions";
import CreditsUtils, { CreditsIndexData } from "./lib/CreditsUtils";
interface Props {
lang: MultiLang;
}
const CreditsIndex: React.FC<Props> = (props: Props) => {
const { lang } = props;
const [loading, setLoading] = useState<boolean>(true);
const [index, setIndex] = useState<CreditsIndexData | null>(null);
useEffect(() => {
const updatePage = async () => {
const index = await CreditsUtils.getIndex();
setLoading(false);
setIndex(index);
};
updatePage();
}, [lang]);
if (loading) {
return <Loading />;
}
if (null === index) {
return <PageNotFound lang={lang} />;
}
const mtitle = Functions.mlang(index.name, lang);
return (
<>
<Helmet>
<title>
{mtitle} - {Functions.siteTitle(lang)}
</title>
</Helmet>
<h3>{mtitle}</h3>
<NoticeSiteHasBeenArchived lang={lang} />
<ul>
{index.pages.map((page) => {
const title = Functions.mlang(page.title, lang);
const url = CreditsUtils.getPageUrl(page.id);
return (
<li key={page.id}>
<Link to={url}>{title}</Link>
</li>
);
})}
</ul>
</>
);
};
export default CreditsIndex;

View File

@ -0,0 +1,62 @@
import React, { useEffect, useState } from "react";
import { Helmet } from "react-helmet-async";
import Loading from "../common/lib/Loading";
import NoticeSiteHasBeenArchived from "../common/lib/NoticeSiteHasBeenArchived";
import PageNotFound from "../common/lib/PageNotFound";
import XoopsCode from "../common/lib/XoopsCode";
import { MultiLang } from "../config";
import Functions from "../functions";
import CreditsUtils, { CreditsIndexData, CreditsPageDetailData } from "./lib/CreditsUtils";
interface Props {
lang: MultiLang;
id: number;
}
const CreditsPage: React.FC<Props> = (props: Props) => {
const { lang, id } = props;
const [loading, setLoading] = useState<boolean>(true);
const [index, setIndex] = useState<CreditsIndexData | null>(null);
const [page, setPage] = useState<CreditsPageDetailData | null>(null);
useEffect(() => {
const updatePage = async () => {
const index = await CreditsUtils.getIndex();
const page = await CreditsUtils.getPage(id);
setLoading(false);
setIndex(index);
setPage(page);
};
updatePage();
}, [id]);
if (loading) {
return <Loading />;
}
if (page === null || index === null) {
return <PageNotFound lang={lang} />;
}
const mtitle = Functions.mlang(index.name, lang);
const title = Functions.mlang(page.title, lang);
const lastupdate = page.lastupdate === 0 ? "" : Functions.formatDate(page.lastupdate, "MMMM Do, YYYY");
return (
<>
<Helmet>
<title>
{title} - {mtitle} - {Functions.siteTitle(lang)}
</title>
</Helmet>
<h3>{title}</h3>
<NoticeSiteHasBeenArchived lang={lang} />
{"" !== lastupdate && (
<div style={{ textAlign: "right" }}>
{Functions.mlang("[en]Last Update[/en][ja]最終更新日[/ja]", lang)} : {lastupdate}
</div>
)}
<hr />
<XoopsCode lang={lang} text={page.content} dohtml={true} />
</>
);
};
export default CreditsPage;

View File

@ -0,0 +1,47 @@
import React, { useEffect, useState } from "react";
import { Link } from "react-router-dom";
import Loading from "../../common/lib/Loading";
import PageNotFound from "../../common/lib/PageNotFound";
import { MultiLang } from "../../config";
import Functions from "../../functions";
import CreditsUtils, { CreditsMenuData } from "../lib/CreditsUtils";
interface Props {
lang: MultiLang;
}
const CreditsMenu: React.FC<Props> = (props: Props) => {
const { lang } = props;
const [loading, setLoading] = useState<boolean>(true);
const [menu, setMenu] = useState<CreditsMenuData[] | null>(null);
useEffect(() => {
const updatePage = async () => {
const menu = await CreditsUtils.getMenu();
setLoading(false);
setMenu(menu);
};
updatePage();
}, [lang]);
if (loading) {
return <Loading />;
}
if (menu === null || menu.length === 0) {
return <PageNotFound lang={lang} />;
}
const links = menu.map((item, idx) => {
const title = Functions.mlang(item.title, lang);
const style = idx === 0 ? "menuTop" : "menuMain";
return (
<li key={idx}>
<Link className={style} to={item.link}>
{title}
</Link>
</li>
);
});
return <ul className="mainmenu">{links}</ul>;
};
export default CreditsMenu;

View File

@ -0,0 +1,77 @@
import axios from "axios";
export interface CreditsPageData {
id: number;
title: string;
}
export interface CreditsPageDetailData extends CreditsPageData {
content: string;
lastupdate: number;
}
export interface CreditsIndexData {
name: string;
pages: CreditsPageData[];
}
export interface CreditsMenuData {
title: string;
link: string;
}
class CreditsUtils {
private pathname: string;
private index?: CreditsIndexData | null;
constructor(path: string) {
this.pathname = path;
}
getIndexUrl(): string {
return this.pathname + "/";
}
getPageUrl(id: number): string {
return this.getIndexUrl() + (0 === id ? "aboutus.php" : "?id=" + id);
}
async getIndex(): Promise<CreditsIndexData | null> {
if (typeof this.index === "undefined") {
try {
const url = this.getIndexUrl() + "index.json";
const response = await axios.get(url);
const index = response.data as CreditsIndexData;
this.index = index;
} catch (err) {
this.index = null;
}
}
return this.index;
}
async getMenu(): Promise<CreditsMenuData[]> {
const menu: CreditsMenuData[] = [];
const index = await this.getIndex();
if (index !== null) {
index.pages.forEach((page) => {
menu.push({ title: page.title, link: this.getPageUrl(page.id) });
});
}
return menu;
}
async getPage(id: number): Promise<CreditsPageDetailData | null> {
let page = null;
try {
const url = this.getIndexUrl() + id + ".json";
const response = await axios.get(url);
page = response.data as CreditsPageDetailData;
} catch (err) {
// ignore
}
return page;
}
}
export default new CreditsUtils("/modules/credits");

52
src/custom/Footer.tsx Normal file
View File

@ -0,0 +1,52 @@
import React from "react";
import { useLocation } from "react-router-dom";
import { HashLink } from "react-router-hash-link";
import { MultiLang } from "../config";
import imageBannerNiu from "./assets/images/banner-niu.png";
import imageBannerRikenCbs from "./assets/images/banner-riken-cbs.png";
import imageBannerRiken from "./assets/images/banner-riken.png";
import imageBannerXoonips from "./assets/images/banner-xoonips.png";
interface Props {
lang: MultiLang;
}
const Footer: React.FC<Props> = (props: Props) => {
const location = useLocation();
return (
<footer id="footer">
<div className="pageTop">
<HashLink to={`${location.pathname}${location.search}#page`}>
<span className="hidden">Go Page Top</span>
</HashLink>
</div>
<div className="link">
<span>
<a href="http://www.riken.jp/" title="RIKEN" target="_blank" rel="noopener noreferrer">
<img src={imageBannerRiken} alt="RIKEN" />
</a>
</span>
<span>
<a href="https://cbs.riken.jp/" title="RIKEN Center for Brain Science" target="_blank" rel="noopener noreferrer">
<img src={imageBannerRikenCbs} alt="RIKEN Center for Brain Science" />
</a>
</span>
<span>
<a href="https://www.ni.riken.jp/" title="Neuroinformatics Unit, RIKEN Center for Brain Science" target="_blank" rel="noopener noreferrer">
<img src={imageBannerNiu} alt="Neuroinformatics Unit, RIKEN Center for Brain Science" />
</a>
</span>
<span>
<a href="http://xoonips.osdn.jp/" title="XooNIps" target="_blank" rel="noopener noreferrer">
<img src={imageBannerXoonips} alt="XooNIps" />
</a>
</span>
</div>
<div className="copyright">
<span>Copyright (C) 2018 Neuroinformatics Unit, RIKEN Center for Brain Science</span>
</div>
</footer>
);
};
export default Footer;

73
src/custom/Header.tsx Normal file
View File

@ -0,0 +1,73 @@
import React from "react";
import { Link } from "react-router-dom";
import LangFlag from "../common/lib/LangFlag";
import Config, { MultiLang } from "../config";
import imageJnode from "./assets/images/jnode.png";
interface Props {
lang: MultiLang;
}
const Header: React.FC<Props> = (props: Props) => {
return (
<header id="header">
<div className="logo">
<Link to="/" title="Home">
<span className="hidden">{Config.SITE_TITLE}</span>
</Link>
</div>
<div className="jnode">
<a href="https://www.neuroinf.jp/" target="_blank" rel="noopener noreferrer" title="INCF Japan Node">
<img src={imageJnode} alt="INCF Japan Node" />
</a>
</div>
<nav className="menubar">
<ul className="mainmenu">
<li>
<Link id="hmm01" to="/modules/nimgdocs/index.php?docname=about_NIMGPF" title="NIMG-PFの基本理念、委員会構成、取り扱い説明等を掲載しています。">
NIMG-PFについて About This Site
</Link>
</li>
<li>
<Link id="hmm02" to="/modules/xoonips/" title="データベースを検索することができます。">
XooNIpsモード XooNIps database mode
</Link>
</li>
<li>
<Link id="hmm03" to="/modules/nimgsearch/" title="脳図から関連する文献を検索することができます。">
search with Brain Atlas
</Link>
</li>
<li>
<Link id="hmm04" to="/modules/nimgdocs/tutorials/" title="脳イメージングについて説明した教育資料を閲覧できます。">
NIMG-PF Tutorials
</Link>
</li>
<li>
<Link id="hsm01" to="/modules/xnpnimgcenter/utilities/" title="ユーティリティ">
Utilities
</Link>
</li>
<li>
<Link id="hsm03" to="/modules/nimgdocs/index.php?docname=3DBrowse" title="日本人脳データ">
3D Browse
</Link>
</li>
<li>
<Link id="hsm04" to="/modules/nimgdocs/index.php?docname=3DBrowse" title="日本ザル脳データ">
3D Browse
</Link>
</li>
<li>
<div className="lang">
<LangFlag lang="en" />
<LangFlag lang="ja" />
</div>
</li>
</ul>
</nav>
</header>
);
};
export default Header;

148
src/custom/Page.tsx Normal file
View File

@ -0,0 +1,148 @@
import React from "react";
import { Outlet, Route, Routes } from "react-router-dom";
import BrainExplorerIndex from "../brainexplorer/BrainExplorer";
import XoopsPathRedirect from "../common/XoopsPathRedirect";
import { MultiLang } from "../config";
import CreditsMenu from "../credits/blocks/CreditsMenu";
import Credits from "../credits/Credits";
import NimgcenterUtilities from "../nimgcenter/NimgenterUtilities";
import Nimgdocs from "../nimgdocs/Nimgdocs";
import Nimgsearch from "../nimgsearch/Nimgsearch";
import IndexTree from "../xoonips/blocks/IndexTree";
import Ranking from "../xoonips/blocks/Rankings";
import RecentContents from "../xoonips/blocks/RecentContents";
import Search2 from "../xoonips/blocks/Search";
import Xoonips from "../xoonips/Xoonips";
import BulletinBoard from "./blocks/BulletinBoard";
import HowToUseLinks from "./blocks/HowToUseLinks";
import HowToUseVideo from "./blocks/HowToUseVideo";
import Information from "./blocks/Information";
import Questionnaire from "./blocks/Questionnaire";
import RecentStatus from "./blocks/RecentStatus";
import Footer from "./Footer";
import Header from "./Header";
interface Props {
lang: MultiLang;
}
const MainContent: React.FC<Props> = (props: Props) => {
return (
<div id="main">
<div className="mainContent">
<Outlet />
</div>
</div>
);
};
const CenterColumn: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<div id="centercolumn">
<Outlet />
<Routes>
<Route path="/*" element={<MainContent lang={lang} />}>
<Route path="modules/credits/*" element={<Credits lang={lang} />} />
<Route path="modules/xoonips/*" element={<Xoonips lang={lang} />} />
<Route path="modules/nimgdocs/*" element={<Nimgdocs lang={lang} />} />
<Route path="modules/nimgsearch/*" element={<Nimgsearch lang={lang} />} />
<Route path="modules/xnpnimgcenter/utilities/*" element={<NimgcenterUtilities lang={lang} />} />
<Route path="modules/brainexplorer/*" element={<BrainExplorerIndex lang={lang} />} />
<Route path="*" element={<XoopsPathRedirect lang={lang} />} />
</Route>
</Routes>
</div>
);
};
const CenterColumnBlock: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<>
<div id="centerCcolumn">
<Information lang={lang} />
<BulletinBoard lang={lang} />
<HowToUseVideo lang={lang} />
<HowToUseLinks lang={lang} />
<Questionnaire lang={lang} />
<RecentStatus lang={lang} />
</div>
<div className="col2">
<div id="centerLcolumn">
<div className="block">
<div className="blockTitle">XooNIps Ranking</div>
<div className="blockContent">
<Ranking lang={lang} />
</div>
</div>
</div>
<div id="centerRcolumn">
<div className="block">
<div className="blockTitle">XooNIps Update</div>
<div className="blockContent">
<RecentContents lang={lang} />
</div>
</div>
</div>
</div>
</>
);
};
const LeftColumn: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<div id="leftcolumn">
<Outlet />
<div className="block">
<div className="blockTitle">Index Tree</div>
<div className="blockContent">
<IndexTree lang={lang} />
</div>
</div>
<div className="block">
<div className="blockTitle">Site Information</div>
<div className="blockContent">
<CreditsMenu lang={lang} />
</div>
</div>
</div>
);
};
const XoopsSearchBlock: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<div className="block">
<div className="blockTitle">Item Search</div>
<div className="blockContent">
<Search2 lang={lang} />
</div>
</div>
);
};
const Page: React.FC<Props> = (props: Props) => {
const { lang } = props;
return (
<div id="page">
<Header lang={lang} />
<div className="col2">
<Routes>
<Route path="/*" element={<CenterColumn lang={lang} />}>
<Route index element={<CenterColumnBlock lang={lang} />} />
</Route>
</Routes>
<Routes>
<Route path="/*" element={<LeftColumn lang={lang} />}>
<Route path="modules/xoonips/*" element={<XoopsSearchBlock lang={lang} />} />
</Route>
</Routes>
</div>
<Footer lang={lang} />
</div>
);
};
export default Page;

Binary file not shown.

After

Width:  |  Height:  |  Size: 569 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Some files were not shown because too many files have changed in this diff Show More