Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • DM/dm-docs
  • hammonds/dm-docs
  • hparraga/dm-docs
3 results
Show changes
Showing
with 6732 additions and 0 deletions
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
$DM_ROOT_DIR/src/python/dm/daq_web_service/cli/stopUploadCli.py $@
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
$DM_ROOT_DIR/src/python/dm/ds_web_service/cli/updateExperimentCli.py $@
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
source dm_command_setup.sh
eval "$DM_ROOT_DIR/src/python/dm/cat_web_service/cli/updateExperimentDatasetCli.py $DM_COMMAND_ARGS"
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
source dm_command_setup.sh
eval "$DM_ROOT_DIR/src/python/dm/cat_web_service/cli/updateExperimentFileCli.py $DM_COMMAND_ARGS"
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
source dm_command_setup.sh
eval "$DM_ROOT_DIR/src/python/dm/aps_user_db/cli/updateUserFromApsDbCli.py $DM_COMMAND_ARGS"
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
source dm_command_setup.sh
eval "$DM_ROOT_DIR/src/python/dm/aps_user_db/cli/updateUsersFromApsDbCli.py $DM_COMMAND_ARGS"
#!/bin/sh
# Run command
if [ -z $DM_ROOT_DIR ]; then
cd `dirname $0` && myDir=`pwd`
setupFile=$myDir/../setup.sh
if [ ! -f $setupFile ]; then
echo "Cannot find setup file: $setupFile"
exit 1
fi
source $setupFile > /dev/null
fi
source dm_command_setup.sh
eval "$DM_ROOT_DIR/src/python/dm/daq_web_service/cli/uploadCli.py $DM_COMMAND_ARGS"
#!/bin/sh
# Helper functions for DM commands.
# Fix command line arguments
DM_COMMAND_ARGS=""
while [ $# -ne 0 ]; do
arg=$1
if [[ $arg == -* ]]; then
key=`echo $arg | cut -f1 -d'='`
keyHasValue=`echo $arg | grep '='`
if [ ! -z "$keyHasValue" ]; then
value=`echo $arg | cut -f2- -d'='`
DM_COMMAND_ARGS="$DM_COMMAND_ARGS $key=\"$value\""
else
DM_COMMAND_ARGS="$DM_COMMAND_ARGS $key"
fi
else
DM_COMMAND_ARGS="$DM_COMMAND_ARGS \"$arg\""
fi
shift
done
File added
File added
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ActiveLayerIndex</key>
<integer>0</integer>
<key>ApplicationVersion</key>
<array>
<string>com.omnigroup.OmniGraffle6</string>
<string>156.11.0.206384</string>
</array>
<key>AutoAdjust</key>
<false/>
<key>BackgroundGraphic</key>
<dict>
<key>Bounds</key>
<string>{{0, 0}, {1152, 1466}}</string>
<key>Class</key>
<string>SolidGraphic</string>
<key>ID</key>
<integer>2</integer>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
</dict>
<key>BaseZoom</key>
<integer>0</integer>
<key>CanvasOrigin</key>
<string>{0, 0}</string>
<key>ColumnAlign</key>
<integer>1</integer>
<key>ColumnSpacing</key>
<real>36</real>
<key>CreationDate</key>
<string>2014-05-15 13:38:27 +0000</string>
<key>Creator</key>
<string>Sinisa Veseli</string>
<key>DisplayScale</key>
<string>1 in = 1.00000 in</string>
<key>GraphDocumentVersion</key>
<integer>11</integer>
<key>GraphicsList</key>
<array>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>Head</key>
<dict>
<key>ID</key>
<integer>82</integer>
<key>Info</key>
<integer>7</integer>
</dict>
<key>ID</key>
<integer>136</integer>
<key>Points</key>
<array>
<string>{538.14877712017369, 645.56816413424986}</string>
<string>{511.15957200986009, 599.32355312855873}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>135</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{491.65080261230469, 646}, {93.5, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>135</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Globus Catalog}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{950, 646.5}, {101, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>134</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.8</string>
<key>r</key>
<string>1</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Hardware}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{950, 592.05250869187148}, {101, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>133</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.6</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Existing Software}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{950, 538.24087524414062}, {101, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>132</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.66422</string>
<key>r</key>
<string>0.801663</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
<key>Join</key>
<integer>0</integer>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Must Build Software}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>Head</key>
<dict>
<key>ID</key>
<integer>129</integer>
</dict>
<key>ID</key>
<integer>131</integer>
<key>Points</key>
<array>
<string>{590, 423.0150146484375}</string>
<string>{608.50000185767817, 491.44124603271484}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>Head</key>
<dict>
<key>ID</key>
<integer>126</integer>
<key>Info</key>
<integer>8</integer>
</dict>
<key>ID</key>
<integer>130</integer>
<key>Points</key>
<array>
<string>{655.25, 513.69125310579955}</string>
<string>{760.5, 656.6875}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>129</integer>
<key>Info</key>
<integer>5</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{561.75, 491.44124603271484}, {93.5, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>129</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 FT Server (rsync, gFTP, GO)}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{517.8016357421875, 398.01499938964844}, {86, 25}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>128</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs18 \cf0 FT Client (rsync, gFTP, GO)}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>Head</key>
<dict>
<key>ID</key>
<integer>126</integer>
</dict>
<key>ID</key>
<integer>127</integer>
<key>Points</key>
<array>
<string>{603.80160522460938, 394.19124838709831}</string>
<string>{765.60084386016945, 626.11880117544524}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>53</integer>
<key>Info</key>
<integer>6</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{760.5, 622.375}, {93.5, 68.625}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>126</integer>
<key>Magnets</key>
<array>
<string>{1, 1}</string>
<string>{1, -1}</string>
<string>{-1, -1}</string>
<string>{-1, 1}</string>
<string>{0, 1}</string>
<string>{0, -1}</string>
<string>{1, 0}</string>
<string>{-1, 0}</string>
</array>
<key>Shape</key>
<string>Cylinder</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.8</string>
<key>r</key>
<string>1</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.277421</string>
<key>r</key>
<string>0.554751</string>
</dict>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs20 \cf0 Petrel\
ALCF Storage}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>80</integer>
<key>Info</key>
<integer>11</integer>
</dict>
<key>ID</key>
<integer>125</integer>
<key>Points</key>
<array>
<string>{381.5, 147.07376805941286}</string>
<string>{630.5, 148.1912430524826}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>96</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>107</integer>
</dict>
<key>ID</key>
<integer>121</integer>
<key>Points</key>
<array>
<string>{706.50000256299961, 273.88250732421875}</string>
<string>{824, 147.94124293327332}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>78</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>Head</key>
<dict>
<key>ID</key>
<integer>82</integer>
</dict>
<key>ID</key>
<integer>120</integer>
<key>Points</key>
<array>
<string>{413.75, 539.20376920700096}</string>
<string>{464.40958071772616, 554.32355312855873}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>119</integer>
<key>Info</key>
<integer>5</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{320.25, 516.70376205444336}, {93.5, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>119</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Globus Connect Personal}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>79</integer>
</dict>
<key>ID</key>
<integer>118</integer>
<key>Points</key>
<array>
<string>{874.5, 170.44125366210938}</string>
<string>{911.45998039841652, 269.38250732421875}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>107</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>107</integer>
</dict>
<key>ID</key>
<integer>117</integer>
<key>Points</key>
<array>
<string>{950, 147.94124293327332}</string>
<string>{925, 147.94126081466698}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>115</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{950, 125.44125366210938}, {101, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>115</integer>
<key>Magnets</key>
<array>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.662745</string>
<key>r</key>
<string>0.8</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 LDAP Management Tools}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>53</integer>
</dict>
<key>ID</key>
<integer>114</integer>
<key>Points</key>
<array>
<string>{860.46002390254876, 378.55531881260703}</string>
<string>{604.30156172047714, 381.93466201298691}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>112</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>79</integer>
<key>Info</key>
<integer>5</integer>
</dict>
<key>ID</key>
<integer>113</integer>
<key>Points</key>
<array>
<string>{911.45998039841652, 352.88250732421875}</string>
<string>{911.45998039841652, 323.38250732421875}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>112</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{860.95998039841652, 353.38250732421875}, {101, 49}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>112</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.662745</string>
<key>r</key>
<string>0.8</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.30002</string>
<key>r</key>
<string>0.748981</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 DS Management Tools\
(SQL, Python API)}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>53</integer>
<key>Info</key>
<integer>4</integer>
</dict>
<key>ID</key>
<integer>111</integer>
<key>Points</key>
<array>
<string>{663.49999487400055, 318.88250732421875}</string>
<string>{603.80160522460938, 369.69124984741211}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>78</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>109</integer>
</dict>
<key>ID</key>
<integer>110</integer>
<key>Points</key>
<array>
<string>{925.28116659925115, 148.35471618525199}</string>
<string>{971.54604118621398, 216.38719557065639}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>107</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{968, 213.44125366210938}, {65, 54}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>109</integer>
<key>Magnets</key>
<array>
<string>{1, 1}</string>
<string>{1, -1}</string>
<string>{-1, -1}</string>
<string>{-1, 1}</string>
<string>{0, 1}</string>
<string>{0, -1}</string>
<string>{1, 0}</string>
<string>{-1, 0}</string>
</array>
<key>Shape</key>
<string>Cylinder</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.6</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.277421</string>
<key>r</key>
<string>0.554751</string>
</dict>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs20 \cf0 APS User DB}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>80</integer>
</dict>
<key>ID</key>
<integer>108</integer>
<key>Points</key>
<array>
<string>{824, 147.94124293327332}</string>
<string>{739.5, 148.19126073519411}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>107</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{824, 125.44125366210938}, {101, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>107</integer>
<key>Magnets</key>
<array>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.662745</string>
<key>r</key>
<string>0.8</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 LDAP Management Service}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>78</integer>
<key>Info</key>
<integer>4</integer>
</dict>
<key>ID</key>
<integer>106</integer>
<key>Points</key>
<array>
<string>{776, 242.941241979599}</string>
<string>{728, 285.13250732421869}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>29</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>80</integer>
</dict>
<key>ID</key>
<integer>104</integer>
<key>Points</key>
<array>
<string>{685.00000170866656, 273.88250732421875}</string>
<string>{685, 170.44125366210938}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>78</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>79</integer>
</dict>
<key>ID</key>
<integer>103</integer>
<key>Points</key>
<array>
<string>{728, 296.38251447677635}</string>
<string>{876.95998039841652, 296.38250732421875}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>78</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>80</integer>
</dict>
<key>ID</key>
<integer>102</integer>
<key>Points</key>
<array>
<string>{571.10120781664875, 357.44124984741211}</string>
<string>{657.74999350309372, 170.44125366210938}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>53</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>81</integer>
<key>Info</key>
<integer>15</integer>
</dict>
<key>ID</key>
<integer>101</integer>
<key>Points</key>
<array>
<string>{538.40080521109917, 357.44124984741211}</string>
<string>{538.40080261230469, 272.44125366210938}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>53</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>79</integer>
<key>Info</key>
<integer>4</integer>
</dict>
<key>ID</key>
<integer>100</integer>
<key>Points</key>
<array>
<string>{603.80160522460938, 381.94125763575261}</string>
<string>{880.72423711090323, 320.43656728835958}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>53</integer>
<key>Info</key>
<integer>5</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>53</integer>
<key>Info</key>
<integer>12</integer>
</dict>
<key>ID</key>
<integer>99</integer>
<key>Points</key>
<array>
<string>{389, 313.63251439730345}</string>
<string>{473, 369.69124984741211}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>52</integer>
<key>Info</key>
<integer>5</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>81</integer>
</dict>
<key>ID</key>
<integer>98</integer>
<key>Points</key>
<array>
<string>{381.5, 147.07376805941286}</string>
<string>{509.44684379851873, 221.38719557065642}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>96</integer>
<key>Info</key>
<integer>5</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>52</integer>
</dict>
<key>ID</key>
<integer>97</integer>
<key>Points</key>
<array>
<string>{338.5, 169.32376098632812}</string>
<string>{338.50000200668978, 291.38250732421875}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>96</integer>
<key>Info</key>
<integer>8</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{295.5, 124.82376098632812}, {86, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>96</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.66422</string>
<key>r</key>
<string>0.801663</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Experiment Setup UI}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{192.5, 553.49087524414062}, {42, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>YES</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>95</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Pad</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\fs24 \cf0 Firewall}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>Wrap</key>
<string>NO</string>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>Head</key>
<dict>
<key>ID</key>
<integer>82</integer>
</dict>
<key>ID</key>
<integer>94</integer>
<key>Points</key>
<array>
<string>{436.98999313513445, 646}</string>
<string>{464.40957479637723, 599.32355312855873}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>93</integer>
<key>Info</key>
<integer>2</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{390.23999127745628, 646}, {93.5, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>93</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Globus Connect Personal}</string>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>77</integer>
</dict>
<key>ID</key>
<integer>92</integer>
<key>Points</key>
<array>
<string>{505.70039350976907, 406.44124984741211}</string>
<string>{487.75, 445.84504508972168}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>53</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>77</integer>
</dict>
<key>ID</key>
<integer>91</integer>
<key>Points</key>
<array>
<string>{487.78458222708969, 554.32355312855873}</string>
<string>{487.75, 514.47004508972168}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>82</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>77</integer>
</dict>
<key>ID</key>
<integer>90</integer>
<key>Points</key>
<array>
<string>{413.75, 480.15753118197142}</string>
<string>{441, 480.15754508972168}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>67</integer>
<key>Info</key>
<integer>5</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>67</integer>
</dict>
<key>ID</key>
<integer>89</integer>
<key>Points</key>
<array>
<string>{365.48004480786159, 356.00750732421875}</string>
<string>{367.00000185767817, 457.90752410888672}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{306, 331.00750732421875}, {86, 25}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>88</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs18 \cf0 FT Client (rsync, gFTP, GO)}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{441.03458036941151, 554.32355312855873}, {93.5, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>82</integer>
<key>Line</key>
<dict>
<key>ID</key>
<integer>87</integer>
<key>Position</key>
<real>0.42423778876008017</real>
<key>RotationType</key>
<integer>0</integer>
</dict>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Globus Connect Server}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{505.90080261230469, 218.44125366210938}, {65, 54}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>81</integer>
<key>Magnets</key>
<array>
<string>{1, 1}</string>
<string>{1, -1}</string>
<string>{-1, -1}</string>
<string>{-1, 1}</string>
<string>{0, 1}</string>
<string>{0, -1}</string>
<string>{1, 0}</string>
<string>{-1, 0}</string>
</array>
<key>Shape</key>
<string>Cylinder</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.6</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.277421</string>
<key>r</key>
<string>0.554751</string>
</dict>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs20 \cf0 ESAF DB}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{630.5, 125.94125366210938}, {109, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>80</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.58263</string>
<key>g</key>
<string>0.647146</string>
<key>r</key>
<string>0.849105</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 DM LDAP Server\
(Authentication)}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{876.95998039841652, 269.38250732421875}, {69, 54}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>10</real>
</dict>
<key>ID</key>
<integer>79</integer>
<key>Magnets</key>
<array>
<string>{1, 1}</string>
<string>{1, -1}</string>
<string>{-1, -1}</string>
<string>{-1, 1}</string>
<string>{0, 1}</string>
<string>{0, -1}</string>
<string>{1, 0}</string>
<string>{-1, 0}</string>
</array>
<key>Shape</key>
<string>Cylinder</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.66422</string>
<key>r</key>
<string>0.801663</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.277421</string>
<key>r</key>
<string>0.554751</string>
</dict>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs20 \cf0 DM DB}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{642, 273.88250732421875}, {86, 45}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>78</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781104911, -1.1925696134567261}</string>
<string>{1.1925696134567239, -0.59628480672836304}</string>
<string>{1.3333333730697607, 1.5894572413799324e-07}</string>
<string>{1.1925696134567239, 0.59628473564567486}</string>
<string>{0.59628465308491985, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.662745</string>
<key>r</key>
<string>0.8</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 DM Web Portal}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{473, 357.44124984741211}, {130.80160522460938, 49}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>53</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.662745</string>
<key>r</key>
<string>0.8</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Data Storage\
Service}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{441, 445.84504508972168}, {93.5, 68.625}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>77</integer>
<key>Magnets</key>
<array>
<string>{1, 1}</string>
<string>{1, -1}</string>
<string>{-1, -1}</string>
<string>{-1, 1}</string>
<string>{0, 1}</string>
<string>{0, -1}</string>
<string>{1, 0}</string>
<string>{-1, 0}</string>
</array>
<key>Shape</key>
<string>Cylinder</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.8</string>
<key>r</key>
<string>1</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.277421</string>
<key>r</key>
<string>0.554751</string>
</dict>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs20 \cf0 xstor\
APS On-site Storage}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>69</integer>
</dict>
<key>ID</key>
<integer>75</integer>
<key>Points</key>
<array>
<string>{313.24999397993088, 335.88250732421875}</string>
<string>{284.61273073938133, 362.38686587374843}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>52</integer>
<key>Info</key>
<integer>9</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>69</integer>
</dict>
<key>ID</key>
<integer>73</integer>
<key>Points</key>
<array>
<string>{235.5, 335.88250732421875}</string>
<string>{259.23816023175357, 362.34599359113423}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>70</integer>
<key>Info</key>
<integer>8</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{192.5, 291.38250732421875}, {86, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>70</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.6</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 AD Software }</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{247.67999446392059, 361.88250732421875}, {48, 32}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
<integer>69</integer>
<key>Magnets</key>
<array>
<string>{-1.237968921661377, 0.49518755390681035}</string>
<string>{-1.3333333730697632, -3.1789145301293819e-08}</string>
<string>{-1.237968921661377, -0.49518756866455121}</string>
<string>{-0.86460958419720024, -1.0150015557777268}</string>
<string>{-0.62794690124002683, -1.17620587198552}</string>
<string>{-0.32508953740492902, -1.2930949366499926}</string>
<string>{0.35444424452199508, -1.2853587309064545}</string>
<string>{0.64827843652144623, -1.165123528205162}</string>
<string>{0.87587927192546366, -1.0052925290599906}</string>
<string>{1.237968921661377, -0.4951873325407169}</string>
<string>{1.3333333730697632, 5.0862631771527353e-07}</string>
<string>{1.237968921661377, 0.49518756866455121}</string>
<string>{0.8646094908081684, 1.015001579541025}</string>
<string>{0.62794690124002472, 1.1762058719855177}</string>
<string>{0.32508953740492674, 1.2930949366499904}</string>
<string>{-0.35444360651366852, 1.2853590074902308}</string>
<string>{-0.64827794210279033, 1.1651237153107885}</string>
<string>{-0.87587910264013824, 1.0052928446598337}</string>
</array>
<key>Shape</key>
<string>Cylinder</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.8</string>
<key>r</key>
<string>1</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.277421</string>
<key>r</key>
<string>0.554751</string>
</dict>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs20 \cf0 Local Storage}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{320.25, 457.90752410888672}, {93.5, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>67</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.607926</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 FT Server (rsync, gFTP, GO)}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{192.5, 269.38250732421875}, {99, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>YES</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>58</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Pad</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\fs24 \cf0 Acquistion System}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>Wrap</key>
<string>NO</string>
</dict>
<dict>
<key>Bounds</key>
<string>{{288, 291.38250732421875}, {101, 44.5}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>52</integer>
<key>Magnets</key>
<array>
<string>{-0.59628479784302701, -1.1925696134567261}</string>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{0.59628487781105122, -1.1925696134567261}</string>
<string>{1.1925696134567261, -0.59628480672836304}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{1.1925696134567261, 0.59628473564567486}</string>
<string>{0.59628465308492196, 1.1925697326660156}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-0.5962849488937394, 1.1925696134567261}</string>
<string>{-1.1925697326660156, 0.5962844398368361}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
<string>{-1.1925696134567261, -0.59628480672836304}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.66422</string>
<key>r</key>
<string>0.801663</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0</string>
<key>g</key>
<string>0.138928</string>
<key>r</key>
<string>0.277811</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Data Acquisition\
Service}</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{428.25, 44.88250732421875}, {301, 19}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>YES</string>
<key>Flow</key>
<string>Resize</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>16</real>
</dict>
<key>ID</key>
<integer>35</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Pad</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs32 \cf0 Data Management System Architecture }</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>Wrap</key>
<string>NO</string>
</dict>
<dict>
<key>Bounds</key>
<string>{{776, 218.44125366210938}, {78, 49}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica-Bold</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>29</integer>
<key>Magnets</key>
<array>
<string>{1.9868215517249155e-08, -1.3333333730697632}</string>
<string>{1.3333333730697632, 1.5894572413799324e-07}</string>
<string>{0, 1.3333333730697632}</string>
<string>{-1.3333333730697632, -6.3578289655197295e-07}</string>
</array>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.2</string>
<key>g</key>
<string>0.4</string>
<key>r</key>
<string>0.6</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.157477</string>
<key>g</key>
<string>0.315005</string>
<key>r</key>
<string>0</string>
</dict>
<key>CornerRadius</key>
<real>9</real>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs20 \cf0 Web Browser }</string>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{187, 262.88250732421875}, {207.5, 140}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>54</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Color</key>
<dict>
<key>b</key>
<string>0.496926</string>
<key>g</key>
<string>0.78326</string>
<key>r</key>
<string>1</string>
</dict>
</dict>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>FontInfo</key>
<dict>
<key>Color</key>
<dict>
<key>w</key>
<string>0</string>
</dict>
<key>Font</key>
<string>Helvetica</string>
<key>Size</key>
<real>12</real>
</dict>
<key>ID</key>
<integer>87</integer>
<key>Points</key>
<array>
<string>{187, 576}</string>
<string>{896, 577.94125366210938}</string>
</array>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>0</string>
<key>Legacy</key>
<true/>
<key>Pattern</key>
<integer>1</integer>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
</dict>
</array>
<key>GridInfo</key>
<dict/>
<key>GuidesLocked</key>
<string>NO</string>
<key>GuidesVisible</key>
<string>YES</string>
<key>HPages</key>
<integer>2</integer>
<key>ImageCounter</key>
<integer>1</integer>
<key>KeepToScale</key>
<false/>
<key>Layers</key>
<array>
<dict>
<key>Lock</key>
<string>NO</string>
<key>Name</key>
<string>Layer 1</string>
<key>Print</key>
<string>YES</string>
<key>View</key>
<string>YES</string>
</dict>
</array>
<key>LayoutInfo</key>
<dict>
<key>Animate</key>
<string>NO</string>
<key>circoMinDist</key>
<real>18</real>
<key>circoSeparation</key>
<real>0.0</real>
<key>layoutEngine</key>
<string>dot</string>
<key>neatoLineLength</key>
<real>0.20000000298023224</real>
<key>neatoSeparation</key>
<real>0.0</real>
<key>twopiSeparation</key>
<real>0.0</real>
</dict>
<key>LinksVisible</key>
<string>NO</string>
<key>MagnetsVisible</key>
<string>NO</string>
<key>MasterSheets</key>
<array/>
<key>ModificationDate</key>
<string>2015-03-02 21:06:49 +0000</string>
<key>Modifier</key>
<string>Nicholas Schwarz</string>
<key>NotesVisible</key>
<string>NO</string>
<key>Orientation</key>
<integer>2</integer>
<key>OriginVisible</key>
<string>NO</string>
<key>PageBreaks</key>
<string>YES</string>
<key>PrintInfo</key>
<dict>
<key>NSBottomMargin</key>
<array>
<string>float</string>
<string>41</string>
</array>
<key>NSHorizonalPagination</key>
<array>
<string>coded</string>
<string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG</string>
</array>
<key>NSLeftMargin</key>
<array>
<string>float</string>
<string>18</string>
</array>
<key>NSPaperSize</key>
<array>
<string>size</string>
<string>{612, 792}</string>
</array>
<key>NSPrintReverseOrientation</key>
<array>
<string>coded</string>
<string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG</string>
</array>
<key>NSRightMargin</key>
<array>
<string>float</string>
<string>18</string>
</array>
<key>NSTopMargin</key>
<array>
<string>float</string>
<string>18</string>
</array>
</dict>
<key>PrintOnePage</key>
<false/>
<key>ReadOnly</key>
<string>NO</string>
<key>RowAlign</key>
<integer>1</integer>
<key>RowSpacing</key>
<real>36</real>
<key>SheetTitle</key>
<string>Canvas 1</string>
<key>SmartAlignmentGuidesActive</key>
<string>YES</string>
<key>SmartDistanceGuidesActive</key>
<string>YES</string>
<key>UniqueID</key>
<integer>1</integer>
<key>UseEntirePage</key>
<false/>
<key>VPages</key>
<integer>2</integer>
<key>WindowInfo</key>
<dict>
<key>BottomSlabHeight</key>
<real>671</real>
<key>CurrentSheet</key>
<integer>0</integer>
<key>Expanded_Canvases</key>
<array/>
<key>Frame</key>
<string>{{154, 93}, {1734, 1015}}</string>
<key>ShowInfo</key>
<true/>
<key>ShowRuler</key>
<true/>
<key>Sidebar</key>
<true/>
<key>SidebarWidth</key>
<integer>230</integer>
<key>VisibleRegion</key>
<string>{{-10, 0}, {1172, 873}}</string>
<key>Zoom</key>
<real>1</real>
<key>ZoomValues</key>
<array>
<array>
<string>Canvas 1</string>
<real>1</real>
<real>1.5</real>
</array>
</array>
</dict>
</dict>
</plist>
File added
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ActiveLayerIndex</key>
<integer>0</integer>
<key>ApplicationVersion</key>
<array>
<string>com.omnigroup.OmniGraffle6</string>
<string>159.9.0.225577</string>
</array>
<key>AutoAdjust</key>
<false/>
<key>BackgroundGraphic</key>
<dict>
<key>Bounds</key>
<string>{{0, 0}, {1224, 939}}</string>
<key>Class</key>
<string>SolidGraphic</string>
<key>ID</key>
<integer>2</integer>
<key>Style</key>
<dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
</dict>
<key>BaseZoom</key>
<integer>0</integer>
<key>CanvasOrigin</key>
<string>{0, 0}</string>
<key>CanvasSize</key>
<string>{1224, 939}</string>
<key>ColumnAlign</key>
<integer>1</integer>
<key>ColumnSpacing</key>
<real>36</real>
<key>CreationDate</key>
<string>2014-08-18 13:26:16 +0000</string>
<key>Creator</key>
<string>Sinisa Veseli</string>
<key>DisplayScale</key>
<string>1 in = 1.00000 in</string>
<key>GraphDocumentVersion</key>
<integer>12</integer>
<key>GraphicsList</key>
<array>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>ID</key>
<integer>196</integer>
<key>OrthogonalBarAutomatic</key>
<true/>
<key>OrthogonalBarPoint</key>
<string>{0, 0}</string>
<key>OrthogonalBarPosition</key>
<real>-1</real>
<key>Points</key>
<array>
<string>{913.4399838745594, 357}</string>
<string>{913.4399838745594, 357}</string>
<string>{977, 357}</string>
<string>{978, 262.71999938040972}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>LineType</key>
<integer>2</integer>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>193</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>ID</key>
<integer>195</integer>
<key>Points</key>
<array>
<string>{814.18892059998234, 389.8599909661711}</string>
<string>{813.9399838745594, 432}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>193</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>159</integer>
</dict>
<key>ID</key>
<integer>194</integer>
<key>Points</key>
<array>
<string>{907.4399838745594, 465.24862759008215}</string>
<string>{972.22000261255596, 465.8880338982849}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{715.4399838745594, 277.35999969020486}, {198, 28}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>192</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 experiment_policy_property_value}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{715.4399838745594, 305.35999969020486}, {198, 84}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>FontInfo</key>
<dict>
<key>Font</key>
<string>Helvetica</string>
</dict>
<key>ID</key>
<integer>193</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
policy_property_id : FK1,U1\
experiment_policy_id : FK2,U1\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\b0 \cf0 policy_property_value
\b \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\b0 \cf0 modified_by\
modified_date}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>192</integer>
<integer>193</integer>
<array/>
</array>
<key>ID</key>
<integer>191</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>188</integer>
</dict>
<key>ID</key>
<integer>190</integer>
<key>Points</key>
<array>
<string>{842.49999999385159, 206.70486589254276}</string>
<string>{928.71997827645669, 206.69134455580379}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>181</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>158</integer>
</dict>
<key>ID</key>
<integer>189</integer>
<key>Points</key>
<array>
<string>{1034.2199646305605, 263.21999938040972}</string>
<string>{1034.2199646305605, 431}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>188</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{929.21997825801373, 136.71999938040972}, {210, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>187</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 policy_property}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{929.21997825801373, 150.71999938040972}, {210, 112}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>188</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
name : U1\
policy_type_id : FK1, U1
\b0 \
units\
lower_limit\
upper_limit\
default_value\
description}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>187</integer>
<integer>188</integer>
<array/>
</array>
<key>ID</key>
<integer>186</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>184</integer>
</dict>
<key>ID</key>
<integer>185</integer>
<key>Points</key>
<array>
<string>{175, 91.000018464369361}</string>
<string>{298.5, 91.000018464369361}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>0</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>FilledArrow</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>151</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{299, 49}, {192, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>183</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 allowed_setting_value}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{299, 63}, {192, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>184</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
setting_type_id : FK1,U1
\b0 \
setting_value : U1\
description}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>183</integer>
<integer>184</integer>
<array/>
</array>
<key>ID</key>
<integer>182</integer>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{650, 164.71999938040972}, {192, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>180</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 allowed_policy_value}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{650, 178.71999938040972}, {192, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>181</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
policy_property_id : FK1,U1
\b0 \
policy_value : U1\
description}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>180</integer>
<integer>181</integer>
<array/>
</array>
<key>ID</key>
<integer>179</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{446, 22}, {260, 22}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>YES</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>178</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Pad</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
\f0\b\fs36 \cf0 Data Management DB Schema}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>Wrap</key>
<string>NO</string>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>167</integer>
</dict>
<key>ID</key>
<integer>177</integer>
<key>Points</key>
<array>
<string>{367.00000243457237, 846.5}</string>
<string>{367.00000243457237, 797.5}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>175</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{271, 847}, {192, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>175</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 data_folder_permission}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{271, 861}, {192, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>176</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id
\b0
\b : PK
\b0 \
\b data_folder_id : FK1,U1\
permission_value : U1\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\b0 \cf0 description}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>175</integer>
<integer>176</integer>
<array/>
</array>
<key>ID</key>
<integer>174</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>141</integer>
</dict>
<key>ID</key>
<integer>173</integer>
<key>Points</key>
<array>
<string>{619.50000241517523, 740.5}</string>
<string>{619.50000241517523, 654.5}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>170</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>167</integer>
</dict>
<key>ID</key>
<integer>172</integer>
<key>Points</key>
<array>
<string>{531.50000000000239, 768.99972787959564}</string>
<string>{463.49999999999375, 768.99951760473766}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>171</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{532, 741}, {175, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>170</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 experiment_data_folder}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{532, 755}, {175, 28}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>171</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 experiment_id
\b0
\b : PK,FK1,U1
\b0 \
\b data_folder_id : PK,FK2,U1}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>170</integer>
<integer>171</integer>
<array/>
</array>
<key>ID</key>
<integer>169</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>166</integer>
</dict>
<key>ID</key>
<integer>168</integer>
<key>OrthogonalBarAutomatic</key>
<true/>
<key>OrthogonalBarPoint</key>
<string>{0, 0}</string>
<key>OrthogonalBarPosition</key>
<real>19.302753588433717</real>
<key>Points</key>
<array>
<string>{463.49449282313259, 754.55864733259239}</string>
<string>{514, 747}</string>
<string>{498, 693}</string>
<string>{389.84302878828197, 726.85065511206437}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>LineType</key>
<integer>2</integer>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>167</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{271, 727}, {192, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>166</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 data_folder}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{271, 741}, {192, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>167</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id
\b0
\b : PK
\b0 \
\b data_path : U1\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\b0 \cf0 parent_data_folder_id: FK1,U1\
description}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>166</integer>
<integer>167</integer>
<array/>
</array>
<key>ID</key>
<integer>165</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>141</integer>
</dict>
<key>ID</key>
<integer>164</integer>
<key>Points</key>
<array>
<string>{349.5, 612.00001240712663}</string>
<string>{539.5, 612.00001240712663}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>146</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>162</integer>
</dict>
<key>ID</key>
<integer>163</integer>
<key>OrthogonalBarAutomatic</key>
<true/>
<key>OrthogonalBarPoint</key>
<string>{0, 0}</string>
<key>OrthogonalBarPosition</key>
<real>19.800007228358311</real>
<key>Points</key>
<array>
<string>{699.4999855432834, 612.60836490907445}</string>
<string>{751, 613}</string>
<string>{814, 598}</string>
<string>{814.36777279011494, 488.49999717988214}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>0</string>
<key>Legacy</key>
<true/>
<key>LineType</key>
<integer>2</integer>
<key>TailArrow</key>
<string>FilledArrow</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>141</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{721.4399838745594, 432}, {186, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>161</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 experiment_policy}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{721.4399838745594, 446}, {186, 42}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>162</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
experiment_id
\b0
\b : FK1,U1
\b0 \
\b policy_type_id : FK2,U1}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>161</integer>
<integer>162</integer>
<array/>
</array>
<key>ID</key>
<integer>160</integer>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{972.71997825801373, 431.5}, {123, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>158</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 policy_type}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{972.71997825801373, 445.5}, {123, 42}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>159</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
name : U1
\b0 \
description}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>158</integer>
<integer>159</integer>
<array/>
</array>
<key>ID</key>
<integer>157</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>127</integer>
</dict>
<key>ID</key>
<integer>156</integer>
<key>OrthogonalBarAutomatic</key>
<true/>
<key>OrthogonalBarPoint</key>
<string>{0, 0}</string>
<key>OrthogonalBarPosition</key>
<real>30.925000000000011</real>
<key>Points</key>
<array>
<string>{118, 335.25}</string>
<string>{118, 409}</string>
<string>{123, 432}</string>
<string>{193.00000369818383, 431.73076921654547}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>LineType</key>
<integer>2</integer>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>154</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>151</integer>
</dict>
<key>ID</key>
<integer>155</integer>
<key>Points</key>
<array>
<string>{118.00000706196258, 264.25}</string>
<string>{118.00000706196258, 126.5}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>153</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{25, 264.75}, {186, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>153</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 user_setting}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{25, 278.75}, {186, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>154</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
user_id
\b0
\b : FK1,U1
\b0 \
\b setting_type_id : FK2,U1\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\b0 \cf0 setting_value
\b : U1}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>153</integer>
<integer>154</integer>
<array/>
</array>
<key>ID</key>
<integer>152</integer>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{61.5, 42}, {113, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>150</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 setting_type}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{61.5, 56}, {113, 70}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>151</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
name : U1
\b0 \
description\
default_value\
is_user_modifiable}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>150</integer>
<integer>151</integer>
<array/>
</array>
<key>ID</key>
<integer>149</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>130</integer>
</dict>
<key>ID</key>
<integer>148</integer>
<key>OrthogonalBarAutomatic</key>
<true/>
<key>OrthogonalBarPoint</key>
<string>{0, 0}</string>
<key>OrthogonalBarPosition</key>
<real>8.0458892937767246</real>
<key>Points</key>
<array>
<string>{285.06261573273781, 576.8917785875534}</string>
<string>{465, 537}</string>
<string>{485, 516}</string>
<string>{484.54999999865009, 259.49999923053423}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>LineType</key>
<integer>2</integer>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>145</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>127</integer>
</dict>
<key>ID</key>
<integer>147</integer>
<key>Points</key>
<array>
<string>{252.99999841592671, 576.5}</string>
<string>{252.99999841592671, 488}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>145</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{157, 577}, {192, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>145</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 user_experiment_role}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{157, 591}, {192, 42}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>146</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 user_id
\b0
\b : PK,FK1,U1\
experiment_id: PK,FK2,U1
\b0 \
\b role_type_id : PK,FK3,U1}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>145</integer>
<integer>146</integer>
<array/>
</array>
<key>ID</key>
<integer>144</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>138</integer>
</dict>
<key>ID</key>
<integer>143</integer>
<key>Points</key>
<array>
<string>{619.50000311183703, 555.5}</string>
<string>{619.50000311183703, 474.5}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>140</integer>
</dict>
</dict>
<dict>
<key>Bounds</key>
<string>{{541, 315}, {2, 30}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>YES</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>142</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Pad</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\fs24 \cf0 \
}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>Wrap</key>
<string>NO</string>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{540, 556}, {159, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>140</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 experiment}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{540, 570}, {159, 84}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>141</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
experiment_type_id : FK1\
name : U1
\b0 \
description\
start_date\
end_date}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>140</integer>
<integer>141</integer>
<array/>
</array>
<key>ID</key>
<integer>139</integer>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{566.5, 404}, {106, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>137</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 experiment_type}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{566.5, 418}, {106, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>138</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
name : U1
\b0 \
description\
root_data_path}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>137</integer>
<integer>138</integer>
<array/>
</array>
<key>ID</key>
<integer>136</integer>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>130</integer>
</dict>
<key>ID</key>
<integer>135</integer>
<key>Points</key>
<array>
<string>{319.49999999992838, 230.9988742059389}</string>
<string>{431.00000000079314, 230.99698659634771}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>133</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>LineGraphic</string>
<key>Head</key>
<dict>
<key>ID</key>
<integer>126</integer>
</dict>
<key>ID</key>
<integer>134</integer>
<key>Points</key>
<array>
<string>{253.00000140331943, 252.5}</string>
<string>{253.00000140331943, 361}</string>
</array>
<key>Style</key>
<dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
<key>stroke</key>
<dict>
<key>HeadArrow</key>
<string>FilledArrow</string>
<key>Legacy</key>
<true/>
<key>TailArrow</key>
<string>0</string>
</dict>
</dict>
<key>Tail</key>
<dict>
<key>ID</key>
<integer>133</integer>
</dict>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{187, 196}, {132, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>132</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 user_system_role}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{187, 210}, {132, 42}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>133</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 user_id
\b0
\b : PK,FK1,U1
\b0 \
\b role_type_id : PK,FK2,U1}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>132</integer>
<integer>133</integer>
<array/>
</array>
<key>ID</key>
<integer>131</integer>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{431.5, 189}, {106, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>129</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 role_type}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{431.5, 203}, {106, 56}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>130</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id : PK\
name : U1
\b0 \
description\
is_system_role}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>129</integer>
<integer>130</integer>
<array/>
</array>
<key>ID</key>
<integer>128</integer>
</dict>
<dict>
<key>Class</key>
<string>TableGroup</string>
<key>Graphics</key>
<array>
<dict>
<key>Bounds</key>
<string>{{193.5, 361.5}, {119, 14}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>126</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\f0\b\fs24 \cf0 user_info}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
<dict>
<key>Bounds</key>
<string>{{193.5, 375.5}, {119, 112}}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>FitText</key>
<string>Vertical</string>
<key>Flow</key>
<string>Resize</string>
<key>ID</key>
<integer>127</integer>
<key>Style</key>
<dict>
<key>fill</key>
<dict>
<key>GradientCenter</key>
<string>{-0.29411799999999999, -0.264706}</string>
</dict>
<key>shadow</key>
<dict>
<key>Draws</key>
<string>NO</string>
</dict>
</dict>
<key>Text</key>
<dict>
<key>Align</key>
<integer>0</integer>
<key>Text</key>
<string>{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
\f0\b\fs24 \cf0 id
\b0
\b :
\b0
\b PK
\b0 \
\b username : U1
\b0 \
\b first_name : U2\
last_name : U2
\b0 \
middle_name : U2\
email\
description\
password}</string>
<key>VerticalPad</key>
<integer>0</integer>
</dict>
<key>TextPlacement</key>
<integer>0</integer>
</dict>
</array>
<key>GridH</key>
<array>
<integer>126</integer>
<integer>127</integer>
<array/>
</array>
<key>ID</key>
<integer>125</integer>
</dict>
</array>
<key>GridInfo</key>
<dict/>
<key>GuidesLocked</key>
<string>NO</string>
<key>GuidesVisible</key>
<string>YES</string>
<key>HPages</key>
<integer>3</integer>
<key>ImageCounter</key>
<integer>1</integer>
<key>KeepToScale</key>
<false/>
<key>Layers</key>
<array>
<dict>
<key>Lock</key>
<string>NO</string>
<key>Name</key>
<string>Layer 1</string>
<key>Print</key>
<string>YES</string>
<key>View</key>
<string>YES</string>
</dict>
</array>
<key>LayoutInfo</key>
<dict>
<key>Animate</key>
<string>NO</string>
<key>circoMinDist</key>
<real>18</real>
<key>circoSeparation</key>
<real>0.0</real>
<key>layoutEngine</key>
<string>dot</string>
<key>neatoLineLength</key>
<real>0.20000000298023224</real>
<key>neatoSeparation</key>
<real>0.0</real>
<key>twopiSeparation</key>
<real>0.0</real>
</dict>
<key>LinksVisible</key>
<string>NO</string>
<key>MagnetsVisible</key>
<string>NO</string>
<key>MasterSheets</key>
<array/>
<key>ModificationDate</key>
<string>2015-03-12 14:20:38 +0000</string>
<key>Modifier</key>
<string>Barbara Frosik</string>
<key>NotesVisible</key>
<string>NO</string>
<key>Orientation</key>
<integer>2</integer>
<key>OriginVisible</key>
<string>NO</string>
<key>PageBreaks</key>
<string>YES</string>
<key>PrintInfo</key>
<dict>
<key>NSBottomMargin</key>
<array>
<string>float</string>
<string>41</string>
</array>
<key>NSHorizonalPagination</key>
<array>
<string>coded</string>
<string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG</string>
</array>
<key>NSLeftMargin</key>
<array>
<string>float</string>
<string>18</string>
</array>
<key>NSOrientation</key>
<array>
<string>coded</string>
<string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwGG</string>
</array>
<key>NSPaperName</key>
<array>
<string>string</string>
<string>iso-a5</string>
</array>
<key>NSPaperSize</key>
<array>
<string>size</string>
<string>{595, 420}</string>
</array>
<key>NSPrintReverseOrientation</key>
<array>
<string>coded</string>
<string>BAtzdHJlYW10eXBlZIHoA4QBQISEhAhOU051bWJlcgCEhAdOU1ZhbHVlAISECE5TT2JqZWN0AIWEASqEhAFxlwCG</string>
</array>
<key>NSRightMargin</key>
<array>
<string>float</string>
<string>18</string>
</array>
<key>NSTopMargin</key>
<array>
<string>float</string>
<string>18</string>
</array>
</dict>
<key>PrintOnePage</key>
<true/>
<key>ReadOnly</key>
<string>NO</string>
<key>RowAlign</key>
<integer>1</integer>
<key>RowSpacing</key>
<real>36</real>
<key>SheetTitle</key>
<string>Canvas 1</string>
<key>SmartAlignmentGuidesActive</key>
<string>YES</string>
<key>SmartDistanceGuidesActive</key>
<string>YES</string>
<key>UniqueID</key>
<integer>1</integer>
<key>UseEntirePage</key>
<false/>
<key>VPages</key>
<integer>3</integer>
<key>WindowInfo</key>
<dict>
<key>CurrentSheet</key>
<integer>0</integer>
<key>Expanded_Canvases</key>
<array>
<string>Canvas 1</string>
</array>
<key>Frame</key>
<string>{{0, 60}, {1440, 817}}</string>
<key>ShowInfo</key>
<true/>
<key>ShowRuler</key>
<true/>
<key>Sidebar</key>
<true/>
<key>SidebarWidth</key>
<integer>200</integer>
<key>TopSlabHeight</key>
<real>250</real>
<key>VisibleRegion</key>
<string>{{241, 87}, {911, 645}}</string>
<key>Zoom</key>
<real>1</real>
<key>ZoomValues</key>
<array>
<array>
<string>Canvas 1</string>
<real>1</real>
<real>1</real>
</array>
</array>
</dict>
</dict>
</plist>
File added
File added
TOP = ..
SUBDIRS = sphinx
include $(TOP)/tools/make/RULES_DM
Release 1.1 (03/10/2017)
=============================
- Introduced integration with Beamline Scheduling System:
- New commands:
- list-runs
- list-proposals
- get-proposal
- Modified add-experiment command to automatically add users associated
with a given beamline proposal
- Added the following functionality for managing DAQs:
- Max. run time specification causes DAQ to be stopped automatically
- Destination directory specification causes files to be uploaded into
a specific directory relative to experiment root path
- Upload data/target directory on exit specify upload of the given
directory automatically after DAQ completes
- Added the following functionality for managing uploads:
- Destination directory specification causes files to be uploaded into
a specific directory relative to experiment root path
- Introduced framework for higher level beamline specific tools
- New commands that combine adding experiment and running DAQs or
uploads
- Introduced sphinx as python API documentation framework
- Resolved possible timeout issue when starting DAQ or directory upload
with a directory containing large number of files
- Simplified data directory command line option for beamlines that use
gridftp (via DM_DATA_DIRECTORY_MAP environment variable)
Release 1.0 (01/31/2017)
=============================
- Introduced concept of experiment station and redesigned authorization
mechanisms to allow beamline managers to manage their stations; all
APIs and CLIs now conform to the new authorization scheme
- Modified get-experiments utility to allow retrieving list of experiments
for a given station
- Cleaned up web portal by removing unused views, and enabled station
management functionality
- GPFS DDN (extrepid) has replaced xstor as the main APS storage
- CLI changes:
- add-experiment command requires station name (can be set from env.
variable); experiment type can be specified using type name
- get-experiments command requires station name for beamline managers (can
be set from env. variable)
- start-experiment command is now optional
Release 0.15 (11/01/2016)
=============================
- Resolved issue with incorrect accounting of processing errors for DAQs
- Improved DAQ processing algorithm to avoid resource starvation between
simultaneous DAQs and uploads
- Enhanced monitoring status information for both DAQs and uploads
Release 0.14 (10/14/2016)
=============================
- Introduced new framework and utilities for synchronizing users with
APS DB
- Resolved several issues with special characters in file names for
gridftp transfer plugin
Release 0.13 (05/27/2016)
=============================
- Added SFTP file system observer agent
- Enhanced MongoDB plugin with file md5 sum calculation
Release 0.12 (05/06/2016)
=============================
- Developed processing for HDF5 metadata in Mongo cataloging plugin
- Modified catalog API and service interfaces to use file collections on
a per-experiment basis
Release 0.11 (04/29/2016)
=============================
- Resolved issue with upload command for directories containing large
number of files
- Implemented enhanced upload processing algorithm to avoid resource
starvation between simultaneous DAQs and uploads
- Added new polling file system observer agent as option for monitoring
directories
- Reworked catalog API and corresponding MongoDB interfaces to use unique
experiment file paths, rather than file names
Release 0.10 (03/11/2016)
=============================
- Added dm-list-daqs and dm-list-uploads commands
- Resolved issue with newly created directories treated as files for
real-time data acquisitions
Release 0.9 (02/25/2016)
=============================
- Developed directory processing mode for uploads; in this mode file transfer
plugins transfer entire directories as opposed to individual files
- Added dm-get-processing-plugins command
- Resolved working directory issue that may occur with simutaneous uploads
Release 0.8 (01/26/2016)
=============================
- Enhanced upload/daq performance and functionality (hidden files are not
processed; for uploads system can detect files that had been processed
already; improved handling and reporting of processing errors)
- Source file checksum is calculated for rsync/gridftp plugins by default
- Added dm-stop-upload command
- Resolved globus online user authorization delay issue
Release 0.7 (12/08/2015)
=============================
- Introduced framework and user interfaces for tracking progress of file
uploads and data acquisitions in DAQ service
- Added ability to monitor multiple directories for the same experiment
simultaneously (required changes to DAQ service REST interfaces)
- Enhanced start/stop DAQ and upload commands to use DM_FILE_SERVER_URL
environment variable
- Added user interfaces and utilities that enable experiment data download
from machines that have SSH access to the storage host
Release 0.6 (11/6/2015)
=============================
- Added file system observer agent interface for DAQ service
- Implemented FTP file system observer for DAQ service
- Added interfaces for deleting user experiment role in DS service
- Introduced java REST API framework, and specific experiment DS service API
- Web Portal notifies DS service about experiment user modifications
Release 0.5 (10/08/2015)
=============================
- Implemented Single Sign-On solution for backend services
- Enabled user authentication via login file
- Added file stat (with checksum) interface in DS web service
- After adding user role to experiment via command line, user is also
added to experiment group (if one exists)
- Added rsync file transfer plugin with checksum and delete
Release 0.4 (09/21/2015)
=============================
- Number of minor modifications made in preparation for test deployment at
beamlines
Release 0.3 (07/22/2015)
=============================
- Developed initial version of Catalogging Web Service based on MongoDB
- Developed sample processing plugins: file metadata catalog, SDDS processing,
SGE job submission
Release 0.2 (06/30/2015)
=============================
- Implemented storage permission management and user group management
- Developed common file processing service plugin framework
Release 0.1 (04/21/2015)
=============================
- Functional web portal (user, experiment, and policy pages)
- Developed web service and its API/CLI frameworks
- Developed initial version of Data Storage Web Service
- Developed initial version of Data Acquisition Web Service;
- DAQ service can monitor file system on a detector node and subsequently
transfer data to storage
File added
"1-BM-B,C"
"1-ID-B,C,E"
"2-BM-A,B"
"2-ID-D"
"2-ID-E"
"3-ID-B,C,D"
"4-ID-C"
"4-ID-D"
"5-BM-C"
"5-BM-D"
"5-ID-B,C,D"
"6-BM-A,B"
"6-ID-B,C"
"6-ID-D"
"7-BM-B"
"7-ID-B,C,D"
"8-BM-B"
"8-ID-E"
"8-ID-I"
"9-BM-B,C"
"9-ID-B,C"
"10-BM-A,B"
"10-ID-B"
"11-BM-B"
"11-ID-B"
"11-ID-C"
"11-ID-D"
"12-BM-B"
"12-ID-B"
"12-ID-C,D"
"13-BM-C"
"13-BM-D"
"13-ID-C,D"
"13-ID-E"
"14-BM-C"
"14-ID-B"
"15-ID-B,C,D"
"16-BM-B"
"16-BM-D"
"16-ID-B"
"16-ID-D"
"17-BM-B"
"17-ID-B"
"18-ID-D"
"19-BM-D"
"19-ID-D"
"20-BM-B"
"20-ID-B,C"
"21-ID-D"
"21-ID-E"
"21-ID-F"
"21-ID-G"
"22-BM-D"
"22-ID-D"
"23-BM-B"
"23-ID-B"
"23-ID-D"
"24-ID-C"
"24-ID-E"
"26-ID-C"
"27-ID-B"
"29-ID-C,D"
"30-ID-B,C"
"31-ID-D"
"32-ID-B,C"
"33-BM-C"
"33-ID-D,E"
"34-ID-C"
"34-ID-E"
"35-ID-B,C,D,E"
# Need 1 terminal on DAQ node, 1 terminal on HPC node and 2 terminals on DS
# node
#
# SCENARIO 1: BASIC UPLOAD
#
# ssh -X dm@dmstorage: start services
cd /opt/DM/dev
source setup.sh
./etc/init.d/dm-postgresql start
./etc/init.d/dm-glassfish start
./etc/init.d/dm-mongodb start
./etc/init.d/dm-ds-web-service start
./etc/init.d/dm-cat-web-service start
# ssh -X dm@dmdaq: start services
cd /opt/DM/dev
source setup.sh
./etc/init.d/dm-daq-web-service start
# ssh -X dm@dmhpc: start services, check NFS
cd /opt/DM/dev
source setup.sh
./etc/init.d/dm-daq-web-service start
ls -l /net/dmstorage/opt/DM
#####################################################################
# dm@dmstorage: check directory content on the storage node
ls -l /opt/DM/data
# ssh sveseli@dmstorage: add and start experiment e1
source /opt/DM/etc/dm.setup.sh
dm-add-experiment --name e1 --type-id 1
dm-start-experiment --name e1
# dm@dmstorage: check directory content on the storage node
# note that experiment directory permissions are restricted
ls -l /opt/DM/data/ESAF
ls -l /opt/DM/data/ESAF/e1/
# ssh dm@dmdaq: source setup file, show test data
source /opt/DM/etc/dm.setup.sh
ls -lR /opt/DM/experiments/e1
cat /opt/DM/experiments/e1/file1
# dm@dmdaq: upload data for experiment e1
dm-upload --experiment e1 --data-directory /opt/DM/experiments/e1
# dm@dmstorage: check experiment storage directory content
# note permissions, ownership
ls -l /opt/DM/data/ESAF/e1/
ls -l /opt/DM/data/ESAF/e1/2015/07/09/
#
# SCENARIO 2: UPLOAD + METADATA CATALOG
#
# sveseli@dmstorage: get metadata for experiment files from catalogging service
dm-get-experiment-files --experiment e1
dm-get-experiment-file --experiment e1 --file file2 --display-keys=__all__
# dm@dmdaq: upload data for experiment e1, this time specify extra keys
dm-upload --experiment e1 --data-directory /opt/DM/experiments/e1 ownerUser:JohnC ownerGroup:APSU memo1:ApprovedByNDA memo2:DislikedByGD
# sveseli@dmstorage: get metadata for file 2 again
dm-get-experiment-file --experiment e1 --file file2 --display-keys=__all__
# sveseli@dmstorage: show metadata updates
dm-update-experiment-file --experiment e1 --file file3 quality:A --display-keys=id,fileName,quality
# sveseli@dmstorage: show metadata search
dm-get-experiment-files --experiment e1 quality:A
dm-get-experiment-files --experiment e1 storageFilePath:2015
#
# SCENARIO 3: UPLOAD + METADATA CATALOG + SDDS PARAMETERS
#
# sveseli@dmstorage: add and start experiment mm1
dm-add-experiment --name mm1 --type-id 1
dm-start-experiment --name mm1
# dm@dmdaq: upload data for experiment mm1, and request SDDS parameter
# processing
ls -lR /opt/DM/experiments/mm1
dm-upload --experiment mm1 --data-directory /opt/DM/experiments/mm1 ownerUser:JohnC ownerGroup:APSU processSddsParameters:True
# sveseli@dmstorage: get mm1 files, observe SDDS parameters
dm-get-experiment-files --experiment mm1
dm-get-experiment-files --experiment mm1 --display-keys=__all__ --display-format=dict
# dm@dmstorage: compare with sddsprintout (permissions do not allow sveseli
# account to access file)
export PATH=$PATH:/opt/epics/extensions/bin/linux-x86_64/
sddsprintout -parameters /opt/DM/data/ESAF/mm1/hallProbeScan-M1Proto-000000072-0009-000000.edf
#
# SCENARIO 4: UPLOAD + METADATA CATALOG + SDDS PARAMETERS + SCRIPT PROCESSING
#
# dm@dmstorage: show processing script
cat /opt/DM/processing/find_sdds_row_count.sh
/opt/DM/processing/find_sdds_row_count.sh /opt/DM/data/ESAF/mm1/hallProbeScan-M1Proto-000000072-0009-000000.edf
# sveseli@dmstorage: get mm1 files, note no key processingScriptOutput
dm-get-experiment-files --experiment mm1 --display-keys=fileName,processingScriptOutput
# dm@dmdaq: upload data for experiment mm1, request SDDS parameter
# processing, specify processing script
dm-upload --experiment mm1 --data-directory /opt/DM/experiments/mm1 processSddsParameters:True processingScript:/opt/DM/processing/find_sdds_row_count.sh
# sveseli@dmstorage: get mm1 files, note present key processingScriptOutput
dm-get-experiment-files --experiment mm1 --display-keys=fileName,processingScriptOutput
#
# SCENARIO 5: UPLOAD + METADATA CATALOG + SDDS PARAMETERS + HPC PROCESSING
#
# dm@dmstorage: show processing script
more /opt/DM/processing/sge_sdds_analysis.sh
# dm@dmstorage: show no png files in experiment directory
ls -l /opt/DM/data/ESAF/mm1/*.png
# dm@dmhpc: show empty home directory
cd
ls -l
# dm@dmhpc: show qstat
source /opt/sge/default/common/settings.sh
qstat -f
watch -d 'qstat -f'
# sveseli@dmstorage: get mm1 files, note only 1 file
dm-get-experiment-files --experiment mm1
# dm@dmdaq: upload data for experiment mm1, request SDDS parameter
# processing, specify SGE processing script
dm-upload --experiment mm1 --data-directory /opt/DM/experiments/mm1 processSddsParameters:True sgeJobScript:/opt/DM/processing/sge_sdds_analysis.sh
# sveseli@dmstorage: get mm1 files, note 2 files
dm-get-experiment-files --experiment mm1
# sveseli@dmstorage: get mm1 .png files, note parentFile key
dm-get-experiment-files --experiment mm1 fileName:.png --display-keys=__all__
# dm@dmhpc: show SGE output in home directory
ls -l
# dm@dmstorage: open processed file
xdg-open /opt/DM/data/ESAF/mm1/hallProbeScan-M1Proto-000000072-0009-000000.edf.png
#
# SCENARIO 6: DAQ + METADATA CATALOG + SDDS PARAMETERS + HPC PROCESSING
#
# sveseli@dmstorage: add and start experiment mm2
dm-add-experiment --name mm2 --type-id 1
dm-start-experiment --name mm2
# sveseli@dmstorage: get mm2 files, note no files
dm-get-experiment-files --experiment mm2
# dm@dmstorage: show no png files in experiment directory
ls -l /opt/DM/data/ESAF/mm2/*.png
# dm@dmstorage: tail log file to observe processing
tail -f /opt/DM/var/log/dm.ds-web-service.log
# dm@dmdaq: start DAQ for experiment mm2, request SDDS parameter
# processing, specify SGE processing script
rm -rf /tmp/data/mm2
mkdir -p /tmp/data/mm2
dm-start-daq --experiment mm2 --data-directory /tmp/data/mm2 processSddsParameters:True sgeJobScript:/opt/DM/processing/sge_sdds_analysis.sh
# dm@dmhpc: show qstat
watch -d 'qstat -f'
# dm@dmdaq: copy experiment mm2 files into observed directory, watch qstat
ls -l /opt/DM/experiments/mm2/
cp /opt/DM/experiments/mm2/* /tmp/data/mm2/ && sleep 5 && touch /tmp/data/mm2/* &
tail -f /opt/DM/var/log/dm.daq-web-service.log
# sveseli@dmstorage: get mm2 files, note original + processed files
dm-get-experiment-files --experiment mm2
# dm@dmstorage: show png files in experiment directory
ls -l /opt/DM/data/ESAF/mm2/*.png
# dm@dmdaq: stop DAQ for experiment mm2
dm-stop-daq --experiment mm2
#
# SCENARIO 7: DATASET DEFINITION
#
# sveseli@dmstorage: add metadata for couple of experiment e2 files
# with different keys
dm-add-experiment-file --experiment e2 --file x1 status:good
dm-add-experiment-file --experiment e2 --file y1 status:bad
dm-get-experiment-files --experiment e2 --display-keys=fileName,status
# sveseli@dmstorage: add dataset metadata
dm-add-experiment-dataset --experiment e2 --dataset d1 status:g.*
# sveseli@dmstorage: get dataset files, note only one file matches
dm-get-experiment-dataset-files --experiment e2 --dataset d1
# sveseli@dmstorage: add metadata for anothare e2 file that
# should match dataset constraint
dm-add-experiment-file --experiment e2 --file x2 status:great
dm-get-experiment-files --experiment e2 --display-keys=fileName,status
# sveseli@dmstorage: get dataset files, note two files match
dm-get-experiment-dataset-files --experiment e2 --dataset d1