tgids table
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,19 @@
*.wav
*.pyc
/nbproject/private/
+/output.txt
+
+bin
+gen
+target
+.settings
+.classpath
+.project
+*.keystore
+*.swp
+*.orig
+*.log
+*.properties
+seed.txt
+map.txt
+
--- a/.gitmodules
+++ b/.gitmodules
@@ -3,5 +3,5 @@
url = git://github.com/uskr/pynma.git
[submodule "js/flotr2"]
path = js/flotr2
- url = git://github.com/HumbleSoftware/Flotr2.git
+ url = https://github.com/HumbleSoftware/Flotr2.git
--- /dev/null
+++ b/.idea/compiler.xml
@@ -1,1 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="CompilerConfiguration">
+ <option name="DEFAULT_COMPILER" value="Javac" />
+ <resourceExtensions />
+ <wildcardResourcePatterns>
+ <entry name="!?*.java" />
+ <entry name="!?*.form" />
+ <entry name="!?*.class" />
+ <entry name="!?*.groovy" />
+ <entry name="!?*.scala" />
+ <entry name="!?*.flex" />
+ <entry name="!?*.kt" />
+ <entry name="!?*.clj" />
+ </wildcardResourcePatterns>
+ <annotationProcessing>
+ <profile default="true" name="Default" enabled="false">
+ <processorPath useClasspath="true" />
+ </profile>
+ </annotationProcessing>
+ </component>
+</project>
+
--- /dev/null
+++ b/.idea/copyright/profiles_settings.xml
@@ -1,1 +1,5 @@
-
+<component name="CopyrightManager">
+ <settings default="">
+ <module2copyright />
+ </settings>
+</component>
--- /dev/null
+++ b/.idea/dictionaries/Madoka.xml
@@ -1,1 +1,10 @@
-
+<component name="ProjectDictionaryState">
+ <dictionary name="Madoka">
+ <words>
+ <w>tgid</w>
+ <w>timefrom</w>
+ <w>timeto</w>
+ <w>tzoffset</w>
+ </words>
+ </dictionary>
+</component>
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -3,7 +3,7 @@
<component name="ProjectResources">
<default-html-doctype>jar:file:\C:\Program Files (x86)\JetBrains\PhpStorm 5.0.2\lib\webide.jar!\resources\html5-schema\html5.rnc</default-html-doctype>
</component>
- <component name="ProjectRootManager" version="2" />
+ <component name="ProjectRootManager" version="2" languageLevel="JDK_1_3" assert-keyword="false" jdk-15="false" />
</project>
--- a/.idea/scannr.iml
+++ b/.idea/scannr.iml
@@ -1,6 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
- <component name="NewModuleRootManager">
+ <component name="FacetManager">
+ <facet type="Python" name="Python">
+ <configuration sdkName="" />
+ </facet>
+ </component>
+ <component name="NewModuleRootManager" inherit-compiler-output="false">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
--- /dev/null
+++ b/.idea/uiDesigner.xml
@@ -1,1 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Palette2">
+ <group name="Swing">
+ <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+ </item>
+ <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+ <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+ <initial-values>
+ <property name="text" value="Button" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="RadioButton" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="CheckBox" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="Label" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+ <preferred-size width="-1" height="20" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+ </item>
+ </group>
+ </component>
+</project>
+
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -2,19 +2,49 @@
<project version="4">
<component name="ChangeListManager">
<list default="true" id="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" name="Default" comment="">
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/encodings.xml" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/misc.xml" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/modules.xml" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/scannr.iml" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/scopes/scope_settings.xml" />
- <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/vcs.xml" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/calls.json.php" afterPath="$PROJECT_DIR$/calls.json.php" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/common.inc.php" afterPath="$PROJECT_DIR$/common.inc.php" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/scannr.py" afterPath="$PROJECT_DIR$/scannr.py" />
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/viewcalls.php" afterPath="$PROJECT_DIR$/viewcalls.php" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/Chart.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/Chart.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/Color.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/Color.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/Flotr.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/Flotr.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/Graph.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/Graph.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/lib/base64.js" afterPath="$PROJECT_DIR$/js/flotr2/lib/base64.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/make/basic.json" afterPath="$PROJECT_DIR$/js/flotr2/make/basic.json" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/make/build.json" afterPath="$PROJECT_DIR$/js/flotr2/make/build.json" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/examples.js" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/examples.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/make/examples.json" afterPath="$PROJECT_DIR$/js/flotr2/make/examples.json" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/extending-flotr.html" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/extending-flotr.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/make/flotr2.json" afterPath="$PROJECT_DIR$/js/flotr2/make/flotr2.json" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/js/flotr2.stable.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/js/flotr2.stable.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/lib/codemirror/lib/util/formatting.js" afterPath="$PROJECT_DIR$/js/flotr2/examples/lib/codemirror/lib/util/formatting.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/generateHourlys.php" afterPath="$PROJECT_DIR$/generateHourlys.php" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/make/ie.json" afterPath="$PROJECT_DIR$/js/flotr2/make/ie.json" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/index.html" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/index.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/index.html" afterPath="$PROJECT_DIR$/js/flotr2/spec/index.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/lib/jasmine/jasmine-html.js" afterPath="$PROJECT_DIR$/js/flotr2/lib/jasmine/jasmine-html.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/lib/jasmine/jasmine.css" afterPath="$PROJECT_DIR$/js/flotr2/lib/jasmine/jasmine.css" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/lib/jasmine/jasmine.js" afterPath="$PROJECT_DIR$/js/flotr2/lib/jasmine/jasmine.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/json-data.html" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/json-data.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/json-real-data.html" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/json-real-data.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/json.txt" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/json.txt" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/make/lib.json" afterPath="$PROJECT_DIR$/js/flotr2/make/lib.json" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/logarithmic-scale.html" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/logarithmic-scale.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/mouse-zoom-preview.html" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/mouse-zoom-preview.html" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/lib/prototype.js" afterPath="$PROJECT_DIR$/js/flotr2/lib/prototype.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/examples/old_examples/style.css" afterPath="$PROJECT_DIR$/js/flotr2/examples/old_examples/style.css" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/js/test-background.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/js/test-background.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/js/test-boundaries.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/js/test-boundaries.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/flotr2/spec/js/test-mountain-nulls.js" afterPath="$PROJECT_DIR$/js/flotr2/spec/js/test-mountain-nulls.js" />
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
</list>
<ignored path="scannr.iws" />
<ignored path=".idea/workspace.xml" />
+ <file path="/Dummy.txt" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356959804071" ignored="false" />
+ <file path="/calllog.php" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356153807482" ignored="false" />
+ <file path="/scannr.py" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356154551131" ignored="false" />
+ <file path="/start_script.py" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356155203132" ignored="false" />
+ <file path="/a.java" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356155211924" ignored="false" />
+ <file path="/a.php" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356155216083" ignored="false" />
+ <file path="/calls.json.php" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356155700744" ignored="false" />
+ <file path="/generateHourlys.php" changelist="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" time="1356960167594" ignored="false" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -28,44 +58,55 @@
<component name="DaemonCodeAnalyzer">
<disable_hints />
</component>
+ <component name="DebuggerManager">
+ <breakpoint_any default_suspend_policy="SuspendAll" default_condition_enabled="true">
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="SUSPEND" value="true" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="true" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="SUSPEND" value="true" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="true" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ </breakpoint_any>
+ <ui_properties default_suspend_policy="SuspendAll" default_condition_enabled="true" />
+ <breakpoint_rules />
+ <ui_properties />
+ </component>
<component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
+ <component name="FavoritesManager">
+ <favorites_list name="scannr" />
+ </component>
<component name="FileEditorManager">
<leaf>
- <file leaf-file-name="viewcalls.php" pinned="false" current="true" current-in-tab="true">
- <entry file="file://$PROJECT_DIR$/viewcalls.php">
+ <file leaf-file-name="calllog.php" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/calllog.php">
<provider selected="true" editor-type-id="text-editor">
- <state line="66" column="38" selection-start="2349" selection-end="2349" vertical-scroll-proportion="0.31213874">
- <folding>
- <element signature="n#style#0;n#span#0;n#td#0;n#tr#0;n#table#0;n#div#0;n#!!top" expanded="true" />
- <element signature="n#style#0;n#div#0;n#td#1;n#tr#0;n#table#0;n#div#0;n#!!top" expanded="true" />
- <element signature="n#style#0;n#span#0;n#td#2;n#tr#0;n#table#0;n#div#0;n#!!top" expanded="true" />
- </folding>
- </state>
- </provider>
- </entry>
- </file>
- <file leaf-file-name="common.inc.php" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/common.inc.php">
- <provider selected="true" editor-type-id="text-editor">
- <state line="3" column="21" selection-start="90" selection-end="90" vertical-scroll-proportion="-1.9615384">
- <folding />
- </state>
- </provider>
- </entry>
- </file>
- <file leaf-file-name="scannr.py" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/scannr.py">
- <provider selected="true" editor-type-id="text-editor">
- <state line="66" column="23" selection-start="2084" selection-end="2084" vertical-scroll-proportion="0.0">
- <folding />
- </state>
- </provider>
- </entry>
- </file>
- <file leaf-file-name="trunklog.php" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/trunklog.php">
- <provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.0">
+ <state line="2" column="0" selection-start="34" selection-end="226" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -74,7 +115,34 @@
<file leaf-file-name="calls.json.php" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/calls.json.php">
<provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.0">
+ <state line="13" column="53" selection-start="499" selection-end="499" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="generateConvos.php" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/generateConvos.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="generateHourlys.php" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/generateHourlys.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="23" column="6" selection-start="1012" selection-end="1012" vertical-scroll-proportion="0.68944097">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="getfile.php" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/getfile.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="11" column="13" selection-start="471" selection-end="539" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -88,23 +156,31 @@
</FindUsagesManager>
</component>
<component name="Git.Settings">
+ <option name="SYNC_SETTING" value="DONT" />
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+ </component>
+ <component name="GitLogSettings">
+ <option name="myDateState">
+ <MyDateState />
+ </option>
</component>
<component name="IdeDocumentHistory">
<option name="changedFiles">
<list>
<option value="$PROJECT_DIR$/common.inc.php" />
+ <option value="$PROJECT_DIR$/viewcalls.php" />
+ <option value="$PROJECT_DIR$/calllog.php" />
<option value="$PROJECT_DIR$/scannr.py" />
- <option value="$PROJECT_DIR$/viewcalls.php" />
+ <option value="$PROJECT_DIR$/calls.json.php" />
+ <option value="$PROJECT_DIR$/generateHourlys.php" />
</list>
</option>
</component>
- <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
+ <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" interpreter_name="PHP" />
<component name="ProjectFrameBounds">
- <option name="x" value="57" />
- <option name="y" value="-8" />
- <option name="width" value="1391" />
- <option name="height" value="916" />
+ <option name="y" value="22" />
+ <option name="width" value="1680" />
+ <option name="height" value="936" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
<OptionsSetting value="true" id="Add" />
@@ -133,6 +209,7 @@
</navigator>
<panes>
<pane id="Scope" />
+ <pane id="PackagesPane" />
<pane id="ProjectPane">
<subPane>
<PATH>
@@ -158,13 +235,56 @@
<component name="PropertiesComponent">
<property name="options.splitter.main.proportions" value="0.3" />
<property name="WebServerToolWindowFactoryState" value="false" />
- <property name="options.lastSelected" value="project.propVCSSupport.Mappings" />
+ <property name="options.lastSelected" value="tasks" />
+ <property name="last_opened_file_path" value="$PROJECT_DIR$/../disclosr" />
+ <property name="FullScreen" value="false" />
<property name="options.searchVisible" value="true" />
<property name="options.splitter.details.proportions" value="0.2" />
+ </component>
+ <component name="PyConsoleOptionsProvider">
+ <option name="myPythonConsoleState">
+ <PyConsoleSettings />
+ </option>
+ <option name="myDjangoConsoleState">
+ <PyConsoleSettings />
+ </option>
+ </component>
+ <component name="RecentsManager">
+ <key name="CopyFile.RECENT_KEYS">
+ <recent name="$PROJECT_DIR$" />
+ </key>
</component>
<component name="RunManager">
<configuration default="true" type="PHPUnitRunConfigurationType" factoryName="PHPUnit">
<TestRunner />
+ <method />
+ </configuration>
+ <configuration default="true" type="PhpLocalRunConfigurationType" factoryName="PHP Console">
+ <method />
+ </configuration>
+ <configuration default="true" type="tests" factoryName="Doctests">
+ <option name="INTERPRETER_OPTIONS" value="" />
+ <option name="PARENT_ENVS" value="true" />
+ <envs />
+ <option name="SDK_HOME" value="" />
+ <option name="WORKING_DIRECTORY" value="" />
+ <option name="IS_MODULE_SDK" value="false" />
+ <module name="scannr" />
+ <EXTENSION ID="PythonCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" runner="coverage.py" />
+ <option name="SCRIPT_NAME" value="" />
+ <option name="CLASS_NAME" value="" />
+ <option name="METHOD_NAME" value="" />
+ <option name="FOLDER_NAME" value="" />
+ <option name="TEST_TYPE" value="TEST_SCRIPT" />
+ <option name="PATTERN" value="" />
+ <option name="USE_PATTERN" value="false" />
+ <method />
+ </configuration>
+ <configuration default="true" type="JavascriptDebugSession" factoryName="Local" singleton="true">
+ <JSDebuggerConfigurationSettings>
+ <option name="engineId" value="embedded" />
+ <option name="fileUrl" />
+ </JSDebuggerConfigurationSettings>
<method />
</configuration>
<list size="0" />
@@ -190,32 +310,35 @@
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
+ <changelist id="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" name="Default" comment="" />
<created>1350026709905</created>
<updated>1350026709905</updated>
</task>
<servers />
</component>
<component name="ToolWindowManager">
- <frame x="57" y="-8" width="1391" height="916" extended-state="6" />
- <editor active="false" />
+ <frame x="0" y="22" width="1680" height="936" extended-state="6" />
+ <editor active="true" />
<layout>
- <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.32843137" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
+ <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
- <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
- <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.24981189" sideWeight="0.6706349" order="0" side_tool="false" content_ui="combo" />
- <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
- <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
- <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32936507" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
+ <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.19645043" sideWeight="0.67156863" order="0" side_tool="false" content_ui="combo" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
- <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
- <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
</layout>
</component>
<component name="VcsContentAnnotationSettings">
@@ -251,6 +374,9 @@
<option name="INCLUDE_TEXT_INTO_SHELF" value="false" />
<option name="SHOW_FILE_HISTORY_DETAILS" value="true" />
<option name="SHOW_VCS_ERROR_NOTIFICATIONS" value="true" />
+ <option name="SHOW_DIRTY_RECURSIVELY" value="false" />
+ <option name="LIMIT_HISTORY" value="true" />
+ <option name="MAXIMUM_HISTORY_ROWS" value="1000" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="false" />
<option name="LAST_COMMIT_MESSAGE" />
@@ -270,43 +396,98 @@
<component name="XDebuggerManager">
<breakpoint-manager />
</component>
+ <component name="antWorkspaceConfiguration">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="FILTER_TARGETS" value="false" />
+ </component>
<component name="editorHistoryManager">
+ <entry file="file://$PROJECT_DIR$/viewcalls.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="13" selection-start="46" selection-end="46" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/common.inc.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="34" column="0" selection-start="1179" selection-end="1179" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/calls.json.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="9" selection-start="42" selection-end="42" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
<entry file="file://$PROJECT_DIR$/trunklog.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/../disclosr/include/template.inc.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="72" column="93" selection-start="2545" selection-end="2635" vertical-scroll-proportion="0.43404254" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/../disclosr/include/common.inc.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/../busui/myway/myway_timeliness.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="27" column="5" selection-start="1003" selection-end="1018" vertical-scroll-proportion="26.346153" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/snd.py">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/common.inc.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="60" column="117" selection-start="2262" selection-end="2262" vertical-scroll-proportion="-39.23077" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/viewcalls.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="41" column="69" selection-start="1388" selection-end="1388" vertical-scroll-proportion="1.2659575" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/scannr.py">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="80" column="64" selection-start="2271" selection-end="2271" vertical-scroll-proportion="0.0" />
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/calllog.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="0" selection-start="34" selection-end="226" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/calls.json.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="13" column="53" selection-start="499" selection-end="499" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/generateConvos.php">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/calls.json.php">
- <provider selected="true" editor-type-id="text-editor">
- <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <entry file="file://$PROJECT_DIR$/getfile.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="11" column="13" selection-start="471" selection-end="539" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/scannr.py">
- <provider selected="true" editor-type-id="text-editor">
- <state line="66" column="23" selection-start="2084" selection-end="2084" vertical-scroll-proportion="0.0">
+ <entry file="file://$PROJECT_DIR$/generateHourlys.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="23" column="6" selection-start="1012" selection-end="1012" vertical-scroll-proportion="0.68944097">
<folding />
- </state>
- </provider>
- </entry>
- <entry file="file://$PROJECT_DIR$/common.inc.php">
- <provider selected="true" editor-type-id="text-editor">
- <state line="3" column="21" selection-start="90" selection-end="90" vertical-scroll-proportion="-1.9615384">
- <folding />
- </state>
- </provider>
- </entry>
- <entry file="file://$PROJECT_DIR$/viewcalls.php">
- <provider selected="true" editor-type-id="text-editor">
- <state line="66" column="38" selection-start="2349" selection-end="2349" vertical-scroll-proportion="0.31213874">
- <folding>
- <element signature="n#style#0;n#span#0;n#td#0;n#tr#0;n#table#0;n#div#0;n#!!top" expanded="true" />
- <element signature="n#style#0;n#div#0;n#td#1;n#tr#0;n#table#0;n#div#0;n#!!top" expanded="true" />
- <element signature="n#style#0;n#span#0;n#td#2;n#tr#0;n#table#0;n#div#0;n#!!top" expanded="true" />
- </folding>
</state>
</provider>
</entry>
--- a/404.html
+++ b/404.html
@@ -1,158 +1,160 @@
<!DOCTYPE html>
<html lang="en">
- <head>
- <meta charset="utf-8">
- <title>Page Not Found :(</title>
- <style>
- ::-moz-selection {
- background: #b3d4fc;
- text-shadow: none;
- }
+<head>
+ <meta charset="utf-8">
+ <title>Page Not Found :(</title>
+ <style>
+ ::-moz-selection {
+ background: #b3d4fc;
+ text-shadow: none;
+ }
- ::selection {
- background: #b3d4fc;
- text-shadow: none;
- }
+ ::selection {
+ background: #b3d4fc;
+ text-shadow: none;
+ }
- html {
- padding: 30px 10px;
- font-size: 20px;
- line-height: 1.4;
- color: #737373;
- background: #f0f0f0;
- -webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
- }
+ html {
+ padding: 30px 10px;
+ font-size: 20px;
+ line-height: 1.4;
+ color: #737373;
+ background: #f0f0f0;
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+ }
- html,
- input {
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- }
+ html,
+ input {
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ }
- body {
- max-width: 500px;
- _width: 500px;
- padding: 30px 20px 50px;
- border: 1px solid #b3b3b3;
- border-radius: 4px;
- margin: 0 auto;
- box-shadow: 0 1px 10px #a7a7a7, inset 0 1px 0 #fff;
- background: #fcfcfc;
- }
+ body {
+ max-width: 500px;
+ _width: 500px;
+ padding: 30px 20px 50px;
+ border: 1px solid #b3b3b3;
+ border-radius: 4px;
+ margin: 0 auto;
+ box-shadow: 0 1px 10px #a7a7a7, inset 0 1px 0 #fff;
+ background: #fcfcfc;
+ }
- h1 {
- margin: 0 10px;
- font-size: 50px;
- text-align: center;
- }
+ h1 {
+ margin: 0 10px;
+ font-size: 50px;
+ text-align: center;
+ }
- h1 span {
- color: #bbb;
- }
+ h1 span {
+ color: #bbb;
+ }
- h3 {
- margin: 1.5em 0 0.5em;
- }
+ h3 {
+ margin: 1.5em 0 0.5em;
+ }
- p {
- margin: 1em 0;
- }
+ p {
+ margin: 1em 0;
+ }
- ul {
- padding: 0 0 0 40px;
- margin: 1em 0;
- }
+ ul {
+ padding: 0 0 0 40px;
+ margin: 1em 0;
+ }
- .container {
- max-width: 380px;
- _width: 380px;
- margin: 0 auto;
- }
+ .container {
+ max-width: 380px;
+ _width: 380px;
+ margin: 0 auto;
+ }
/* google search */
- #goog-fixurl ul {
- list-style: none;
- padding: 0;
- margin: 0;
- }
+ #goog-fixurl ul {
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ }
- #goog-fixurl form {
- margin: 0;
- }
+ #goog-fixurl form {
+ margin: 0;
+ }
- #goog-wm-qt,
- #goog-wm-sb {
- border: 1px solid #bbb;
- font-size: 16px;
- line-height: normal;
- vertical-align: top;
- color: #444;
- border-radius: 2px;
- }
+ #goog-wm-qt,
+ #goog-wm-sb {
+ border: 1px solid #bbb;
+ font-size: 16px;
+ line-height: normal;
+ vertical-align: top;
+ color: #444;
+ border-radius: 2px;
+ }
- #goog-wm-qt {
- width: 220px;
- height: 20px;
- padding: 5px;
- margin: 5px 10px 0 0;
- box-shadow: inset 0 1px 1px #ccc;
- }
+ #goog-wm-qt {
+ width: 220px;
+ height: 20px;
+ padding: 5px;
+ margin: 5px 10px 0 0;
+ box-shadow: inset 0 1px 1px #ccc;
+ }
- #goog-wm-sb {
- display: inline-block;
- height: 32px;
- padding: 0 10px;
- margin: 5px 0 0;
- white-space: nowrap;
- cursor: pointer;
- background-color: #f5f5f5;
- background-image: -webkit-linear-gradient(rgba(255,255,255,0), #f1f1f1);
- background-image: -moz-linear-gradient(rgba(255,255,255,0), #f1f1f1);
- background-image: -ms-linear-gradient(rgba(255,255,255,0), #f1f1f1);
- background-image: -o-linear-gradient(rgba(255,255,255,0), #f1f1f1);
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
- *overflow: visible;
- *display: inline;
- *zoom: 1;
- }
+ #goog-wm-sb {
+ display: inline-block;
+ height: 32px;
+ padding: 0 10px;
+ margin: 5px 0 0;
+ white-space: nowrap;
+ cursor: pointer;
+ background-color: #f5f5f5;
+ background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
+ background-image: -moz-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
+ background-image: -ms-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
+ background-image: -o-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ *overflow: visible;
+ *display: inline;
+ *zoom: 1;
+ }
- #goog-wm-sb:hover,
- #goog-wm-sb:focus {
- border-color: #aaa;
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
- background-color: #f8f8f8;
- }
+ #goog-wm-sb:hover,
+ #goog-wm-sb:focus {
+ border-color: #aaa;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
+ background-color: #f8f8f8;
+ }
- #goog-wm-qt:hover,
- #goog-wm-qt:focus {
- border-color: #105cb6;
- outline: 0;
- color: #222;
- }
+ #goog-wm-qt:hover,
+ #goog-wm-qt:focus {
+ border-color: #105cb6;
+ outline: 0;
+ color: #222;
+ }
- input::-moz-focus-inner {
- padding: 0;
- border: 0;
- }
- </style>
- </head>
- <body>
- <div class="container">
- <h1>Not found <span>:(</span></h1>
- <p>Sorry, but the page you were trying to view does not exist.</p>
- <p>It looks like this was the result of either:</p>
- <ul>
- <li>a mistyped address</li>
- <li>an out-of-date link</li>
- </ul>
- <script>
- var GOOG_FIXURL_LANG = (navigator.language || '').slice(0,2),GOOG_FIXURL_SITE = location.host;
- </script>
- <script src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
- </div>
- </body>
+ input::-moz-focus-inner {
+ padding: 0;
+ border: 0;
+ }
+ </style>
+</head>
+<body>
+<div class="container">
+ <h1>Not found <span>:(</span></h1>
+
+ <p>Sorry, but the page you were trying to view does not exist.</p>
+
+ <p>It looks like this was the result of either:</p>
+ <ul>
+ <li>a mistyped address</li>
+ <li>an out-of-date link</li>
+ </ul>
+ <script>
+ var GOOG_FIXURL_LANG = (navigator.language || '').slice(0, 2), GOOG_FIXURL_SITE = location.host;
+ </script>
+ <script src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
+</div>
+</body>
</html>
--- /dev/null
+++ b/calllog.php
@@ -1,1 +1,21 @@
+<?php
+include ('common.inc.php');
+$sth = $conn->prepare('select * from recordings
+ order by call_timestamp desc limit 1000');
+$sth->execute(Array());
+
+$row = 0;
+echo "<table>";
+foreach ($sth->fetchAll() as $data) {
+
+
+ echo "<tr>";
+ for ($c = 0; $c < count($data); $c++) {
+ echo '<td>' . $data[$c] . "</td>\n";
+ }
+ echo "</tr>";
+}
+$row++;
+echo "</table>";
+
--- a/calls.json.php
+++ b/calls.json.php
@@ -1,39 +1,105 @@
<?php
+include('common.inc.php');
+function getTGIDValuesByHour($TGID, $timeFrom, $timeTo)
+{
+ global $conn;
+ $sth = $conn->prepare('select tgid, min(call_timestamp) as time, count(*), min(length), max(length), avg(length), stddev(length) from recordings
+where call_timestamp between to_timestamp(?) and to_timestamp(?)
+ group by tgid, date_trunc(\'hour\', call_timestamp) order by time');
+
+ $sth->execute(Array($timeFrom, $timeTo));
+ return $sth->fetchAll(PDO::FETCH_ASSOC);
-function json_graph($sensorID, $timefrom, $timeto) {
- $values = getSensorValuesByHour($sensorID, $timefrom, $timeto);
- $label = $sensorID;
- $data = Array();
- $tzoffset = $this->get_timezone_offset("UTC");
- foreach ($values as $value) {
- $data[] = Array((strtotime($value['time']) + $tzoffset) * 1000, intval($value['avg']));
- }
- $this->output
- ->set_content_type('application/json')
- ->set_output(json_encode(Array("label" => $label, "data" => $data,
- "previous" => Array(
- "from" => $timefrom - (24 * 60 * 60),
- "to" => $timefrom)
- ,
- "next" => Array(
- "to" => $timeto + (24 * 60 * 60),
- "from" => $timeto)
- )
- ));
}
-function json_data_description($sensorID, $timefrom, $timeto) {
+function getTGIDValuesByDay($TGID, $dayFrom, $dayTo)
+{
+ global $conn;
+ $sth = $conn->prepare('select min(time) as time, min(value), max(value), avg(value), stddev(value) from sensor_values where sensor_id = ?
+ group by sensor_id, date_trunc(\'day\', time) order by time');
+
+ $sth->execute(Array($TGID));
+ return $sth->fetchAll(PDO::FETCH_ASSOC);
+}
+function getTGIDDataYears($TGID, $timeFrom, $timeTo)
+{
+ global $conn;
+ $sth = $conn->prepare("select distinct extract('year' from call_timestamp) as year from recordings where tgid = ? order by year");
+
+ $sth->execute(Array($TGID));
+ return $sth->fetchAll(PDO::FETCH_ASSOC);
+}
+
+function getTGIDDataMonths($TGID, $timeFrom, $timeTo)
+{
+ global $conn;
+ $sth = $conn->prepare("select distinct extract('month' from call_timestamp) as month, extract('year' from call_timestamp) as year from recordings where tgid = ? order by year, month");
+
+ $sth->execute(Array($TGID));
+ return $sth->fetchAll(PDO::FETCH_ASSOC);
+}
+
+function getTGIDDataDays($TGID, $timeFrom, $timeTo)
+{
+ global $conn;
+ $sth = $conn->prepare("select distinct extract('day' from call_timestamp) as day, extract('month' from call_timestamp) as month, extract('year' from call_timestamp) as year from recordings where tgid = ? order by year,month,day");
+
+
+ $sth->execute(Array($TGID));
+ return $sth->fetchAll(PDO::FETCH_ASSOC);
+}
+$action = (isset($_REQUEST['action']) ? $_REQUEST['action'] : '');
+$TGID = (isset($_REQUEST['tgid']) ? $_REQUEST['tgid'] : '');
+$timefrom = (isset($_REQUEST['from']) ? $_REQUEST['from'] : '');
+$timeto = (isset($_REQUEST['to']) ? $_REQUEST['to'] : '');
+
+if ($action == "data") {
+$sth = $conn->prepare('select * from recordings
+ order by call_timestamp desc limit 100');
+
+$sth->execute(Array());
+
+echo json_encode ($sth->fetchAll(PDO::FETCH_ASSOC));
+}
+if ($action == "data_description") {
$timefrom = strtotime($timefrom);
$timeto = strtotime($timeto);
- $years = getSensorDataYears($sensorID, $timefrom, $timeto);
+ $years = getTGIDDataYears($TGID, $timefrom, $timeto);
- $months = getSensorDataMonths($sensorID, $timefrom, $timeto);
- $days = getSensorDataDays($sensorID, $timefrom, $timeto);
+ $months = getTGIDDataMonths($TGID, $timefrom, $timeto);
+ $days = getTGIDDataDays($TGID, $timefrom, $timeto);
- return json_encode(Array("years" => $years, "months" => $months, "days" => $days
- ));
+ echo json_encode(Array("years" => $years, "months" => $months, "days" => $days
+ ));
}
+
+
+if (strpos($action, "graph") !== false) {
+ $values = getTGIDValuesByHour($TGID, $timefrom, $timeto);
+ $label = $TGID;
+ $data = Array();
+ $tzoffset = get_timezone_offset("UTC");
+ foreach ($values as $value) {
+ if ($action == "graphlength") {
+ $data[$value['tgid']][] = Array((strtotime($value['time']) + $tzoffset) * 1000, intval($value['avg']));
+ } else if ($action == "graphcount") {
+ $data[$value['tgid']][] = Array((strtotime($value['time']) + $tzoffset) * 1000, intval($value['count']));
+ }
+ }
+ echo json_encode(Array("label" => $label, "data" => $data,
+ "previous" => Array(
+ "from" => $timefrom - (24 * 60 * 60),
+ "to" => $timefrom)
+ ,
+ "next" => Array(
+ "to" => $timeto + (24 * 60 * 60),
+ "from" => $timeto)
+ )
+ );
+}
+
+
?>
--- a/common.inc.php
+++ b/common.inc.php
@@ -1,14 +1,25 @@
<?php
date_default_timezone_set("Australia/Sydney");
+try {
+ $conn = new PDO("pgsql:dbname=scannr;user=postgres;password=snmc;host=localhost");
+ $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
+} catch (PDOException $e) {
+ die('Unable to connect to database server.');
+}
+catch (Exception $e) {
+ die('Unknown error in ' . __FILE__ . '.');
+}
+$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$basePath = "";
$DATA_DIR = "./data";
/** Returns the offset from the origin timezone to the remote timezone, in seconds.
- * @param $remote_tz;
- * @param $origin_tz; If null the servers current timezone is used as the origin.
- * @return int;
+ * @param $remote_tz;
+ * @param $origin_tz; If null the servers current timezone is used as the origin.
+ * @return int;
*/
-function get_timezone_offset($remote_tz, $origin_tz = null) {
+function get_timezone_offset($remote_tz, $origin_tz = null)
+{
if ($origin_tz === null) {
if (!is_string($origin_tz = date_default_timezone_get())) {
return false; // A UTC timestamp was returned -- bail out!
@@ -22,138 +33,71 @@
return $offset;
}
-function getSensorValuesByHour($sensorID, $timeFrom, $timeTo) {
- $sql = 'select min(call_timestamp) as time, count(*), min(length), max(length), avg(length), stddev(length) from recordings
- group by tgid, date_trunc(\'hour\', call_timestamp) order by time';
- $query = $this->db->query($sql, Array($sensorID, $timeFrom, $timeTo));
- return $query->result_array();
-}
-
-function getSensorValuesByDay($sensorID, $dayFrom, $dayTo) {
- $sql = 'select min(time) as time, min(value), max(value), avg(value), stddev(value) from sensor_values where sensor_id = ?
- group by sensor_id, date_trunc(\'day\', time) order by time';
-
- $query = $this->db->query($sql, Array($sensorID));
- return $query->result_array();
-}
-
-function getSensorDataYears($sensorID, $timeFrom, $timeTo) {
- $sql = "select distinct extract('year' from call_timestamp) as year from recordings where tgid = ? order by year";
-
- $query = $this->db->query($sql, Array($sensorID));
- return $query->result_array();
-}
-
-function getSensorDataMonths($sensorID, $timeFrom, $timeTo) {
- $sql = "select distinct extract('month' from time) as month, extract('year' from time) as year from sensor_values where sensor_id = ? order by year, month";
-
- $query = $this->db->query($sql, Array($sensorID));
- return $query->result_array();
-}
-
-function getSensorDataDays($sensorID, $timeFrom, $timeTo) {
- $sql = "select distinct extract('day' from time) as day, extract('month' from time) as month, extract('year' from time) as year from sensor_values where sensor_id = ? order by year,month,day";
-
- $query = $this->db->query($sql, Array($sensorID));
- return $query->result_array();
-}
-
-function include_header($title) {
+function include_header($title)
+{
global $basePath;
?>
<!DOCTYPE html>
+ <!--[if lt IE 7]>
+ <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
+ <!--[if IE 7]>
+ <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
+ <!--[if IE 8]>
+ <html class="no-js lt-ie9"> <![endif]-->
+ <!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
+ <head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <title></title>
+ <meta name="description" content="">
+ <meta name="viewport" content="width=device-width">
- <!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
- <!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
- <!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]-->
- <!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]-->
- <!--[if gt IE 8]><!--> <html lang="en"> <!--<![endif]-->
- <head>
- <meta charset="utf-8" />
+ <!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
- <!-- Set the viewport width to device width for mobile -->
- <meta name="viewport" content="width=device-width" />
+ <link rel="stylesheet" href="css/normalize.css">
+ <link rel="stylesheet" href="css/main.css">
+ <script src="js/vendor/modernizr-2.6.1.min.js"></script>
+ <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
+ <!--<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.0.min.js"><\/script>')</script>-->
+ <script type="text/javascript" src="<?php echo $basePath ?>js/flotr2/flotr2.js"></script>
+ <script src="js/plugins.js"></script>
+ <script src="js/main.js"></script>
+ </head>
+ <body>
+ <!--[if lt IE 7]>
+ <p class="chromeframe">You are using an outdated browser. <a href="http://browsehappy.com/">Upgrade your browser
+ today</a> or <a href="http://www.google.com/chromeframe/?redirect=true">install Google Chrome Frame</a> to
+ better experience this site.</p>
+ <![endif]-->
- <title><?php echo $title; ?> - Scannr</title>
+ <!-- Add your site or application content here -->
+<?php
+}
- <!-- Included CSS Files -->
- <link rel="stylesheet" href="<?php echo $basePath ?>stylesheets/foundation.css">
- <link rel="stylesheet" href="<?php echo $basePath ?>stylesheets/app.css">
-
- <!--[if lt IE 9]>
- <link rel="stylesheet" href="<?php echo $basePath ?>stylesheets/ie.css">
- <![endif]-->
+function include_footer()
+{
+ global $basePath;
+ ?>
- <!-- IE Fix for HTML5 Tags -->
- <!--[if lt IE 9]>
- <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
- <![endif]-->
+ <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
+ <script>
+ var _gaq = [
+ ['_setAccount', 'UA-XXXXX-X'],
+ ['_trackPageview']
+ ];
+ (function (d, t) {
+ var g = d.createElement(t), s = d.getElementsByTagName(t)[0];
+ g.src = ('https:' == location.protocol ? '//ssl' : '//www') + '.google-analytics.com/ga.js';
+ s.parentNode.insertBefore(g, s)
+ }(document, 'script'));
+ </script>
+ </body>
+ </html>
- </head>
- <body xmlns:schema="http://schema.org/" xmlns:foaf="http://xmlns.com/foaf/0.1/">
+<?php
- <!-- navBar -->
- <div id="navbar" class="container">
- <div class="row">
- <div class="four columns">
- <h1><a href="/">Disclosr</a></h1>
- </div>
- <div class="eight columns hide-on-phones">
- <strong class="right">
- <a href="getAgency.php">Agencies</a>
- <a href="about.php">About/FAQ</a>
- </strong>
- </div>
- </div>
- </div>
- <!-- /navBar -->
-
- <!-- container -->
- <div class="container">
- <?php
- }
-
- function include_footer() {
- global $basePath;
- ?>
-
- </div>
- <!-- container -->
-
-
-
-
- <!-- Included JS Files -->
- <script src="<?php echo $basePath; ?>js/foundation.js"></script>
- <script src="<?php echo $basePath; ?>js/app.js"></script>
- <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
- <script>window.jQuery || document.write('<script src="js/jquery-1.8.2.min.js"><\/script>')</script>
-
- <script type="text/javascript" src="<?php echo $basePath ?>js/flotr2/flotr2.js"></script>
- <?php
- if (strpos($_SERVER['SERVER_NAME'], ".gs")) {
- ?>
- <script type="text/javascript">
-
- var _gaq = _gaq || [];
- _gaq.push(['_setAccount', 'UA-12341040-2']);
- _gaq.push(['_trackPageview']);
-
- (function() {
- var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
- ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
- var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
- })();
-
- </script>
-
- </body>
- </html>
-
- <?php
- }
}
--- /dev/null
+++ b/cron.php
@@ -1,1 +1,9 @@
+<?php
+/*- scheduled tasks
+- combine recordings into conversations
+ - using ffmpeg
+ - conversations and recordings_to_conversations tables
+- remove all other wav files
+- delete old uninteresting conversations*/
+?>
--- a/db.sql
+++ b/db.sql
@@ -1,10 +1,7 @@
+-- /usr/pgsql-9.1/bin/pg_dump --schema-only scannr
--
-- PostgreSQL database dump
--
-
--- Dumped from database version 9.1.2
--- Dumped by pg_dump version 9.1.2
--- Started on 2012-10-08 22:16:52
SET statement_timeout = 0;
SET client_encoding = 'UTF8';
@@ -13,7 +10,6 @@
SET client_min_messages = warning;
--
--- TOC entry 162 (class 3079 OID 11639)
-- Name: plpgsql; Type: EXTENSION; Schema: -; Owner:
--
@@ -21,8 +17,6 @@
--
--- TOC entry 1856 (class 0 OID 0)
--- Dependencies: 162
-- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner:
--
@@ -36,8 +30,6 @@
SET default_with_oids = false;
--
--- TOC entry 161 (class 1259 OID 62391)
--- Dependencies: 1847 6
-- Name: recordings; Type: TABLE; Schema: public; Owner: postgres; Tablespace:
--
@@ -54,3576 +46,22 @@
ALTER TABLE public.recordings OWNER TO postgres;
--
--- TOC entry 1850 (class 0 OID 62391)
--- Dependencies: 161
--- Data for Name: recordings; Type: TABLE DATA; Schema: public; Owner: postgres
+-- Name: tgids; Type: TABLE; Schema: public; Owner: postgres; Tablespace:
--
-COPY recordings (filename, tgid, tgname, sitename, call_timestamp, length) FROM stdin;
-2012-09-30-1348998992.35-demo.wav 44028 CanberraBlackMnt 2012-09-30 19:56:35.268+10 254088
-2012-09-30-1348998995.69-demo.wav 44028 CanberraBlackMnt 2012-09-30 19:56:38.733+10 256136
-2012-09-30-1348998999.93-demo.wav 44028 CanberraBlackMnt 2012-09-30 19:56:45.913+10 587902
-2012-09-30-1348999006.13-demo.wav 44028 CanberraBlackMnt 2012-09-30 19:56:54.567+10 698570
-2012-09-30-1348999016.18-demo.wav 44028 CanberraBlackMnt 2012-09-30 19:57:00.87+10 481854
-2012-09-30-1348999732.25-demo.wav 44028 CanberraBlackMnt 2012-09-30 20:09:14.875+10 234110
-2012-10-01-1349049204.29-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 09:53:26.799+10 208816
-2012-10-01-1349049226.73-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 09:53:51.106+10 368776
-2012-10-01-1349049233.21-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 09:54:09.788+10 1388118
-2012-10-01-1349049249.98-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 09:54:17.872+10 663688
-2012-10-01-1349049264.24-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 09:54:30.636+10 538760
-2012-10-01-1349049270.91-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 09:54:33.547+10 223368
-2012-10-01-1349049332.89-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 09:55:35.416+10 211876
-2012-10-01-1349049500.43-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 09:58:24.513+10 342452
-2012-10-01-1349049504.69-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 09:58:26.976+10 194696
-2012-10-01-1349049507.06-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 09:58:29.354+10 194670
-2012-10-01-1349049509.44-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 09:58:34.742+10 396850
-2012-10-01-1349049779.09-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:03:04.97+10 492576
-2012-10-01-1349049786.9-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:03:12.308+10 452698
-2012-10-01-1349049792.46-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:03:25.6+10 1095920
-2012-10-01-1349049807.7-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:03:31.677+10 290840
-2012-10-01-1349049861.14-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:04:25.582+10 373762
-2012-10-01-1349049865.67-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:04:28.013+10 198792
-2012-10-01-1349049868.1-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:04:39.641+10 964280
-2012-10-01-1349049882.76-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 10:05:00.226+10 1464278
-2012-10-01-1349049900.31-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 10:05:10.501+10 856174
-2012-10-01-1349049931.19-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:05:33.892+10 194482
-2012-10-01-1349050089.47-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:08:12.583+10 258960
-2012-10-01-1349050092.74-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:08:14.999+10 190600
-2012-10-01-1349050095.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:08:20.876+10 469114
-2012-10-01-1349050101.01-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:08:25.274+10 360540
-2012-10-01-1349050181.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:09:44.577+10 257894
-2012-10-01-1349050559.5-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:16:02.327+10 234682
-2012-10-01-1349050565.45-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:16:09.695+10 358536
-2012-10-01-1349050569.81-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:16:13.005+10 270436
-2012-10-01-1349051158.46-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:26:02.008+10 297526
-2012-10-01-1349051163.5-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:26:18.926+10 1243718
-2012-10-01-1349051179.11-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:26:22.771+10 248802
-2012-10-01-1349051328.94-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:28:54.168+10 437650
-2012-10-01-1349051335.09-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:28:59.01+10 331850
-2012-10-01-1349051339.22-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:29:08.43+10 774258
-2012-10-01-1349051348.6-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:29:12.398+10 265692
-2012-10-01-1349051352.59-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:29:18.435+10 435010
-2012-10-01-1349051358.85-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:29:24.367+10 417732
-2012-10-01-1349051364.58-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:29:27.978+10 224558
-2012-10-01-1349051368.18-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:29:32.295+10 280020
-2012-10-01-1349051408.58-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 10:30:12.993+10 371612
-2012-10-01-1349051417.13-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 10:30:19.93+10 233608
-2012-10-01-1349051420.43-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 10:30:25.975+10 464998
-2012-10-01-1349051426.17-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 10:30:33.558+10 570774
-2012-10-01-1349051433.87-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 10:30:38.878+10 356748
-2012-10-01-1349051661.64-demo.wav 40092 PCL CNP CanberraMtAinsli 2012-10-01 10:34:25.365+10 311050
-2012-10-01-1349051687.5-demo.wav 40092 PCL CNP CanberraBlackMnt 2012-10-01 10:34:51.165+10 307336
-2012-10-01-1349051692.82-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:35:06.313+10 1132378
-2012-10-01-1349051706.91-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:35:11.48+10 383112
-2012-10-01-1349051712.82-demo.wav 40092 PCL CNP CanberraBlackMnt 2012-10-01 10:35:20.369+10 630920
-2012-10-01-1349051720.67-demo.wav 40092 PCL CNP CanberraBlackMnt 2012-10-01 10:35:26.837+10 518280
-2012-10-01-1349051727.62-demo.wav 40092 PCL CNP CanberraBlackMnt 2012-10-01 10:35:32.323+10 371982
-2012-10-01-1349051732.52-demo.wav 40092 PCL CNP CanberraBlackMnt 2012-10-01 10:35:39.776+10 563772
-2012-10-01-1349051739.99-demo.wav 40092 PCL CNP CanberraBlackMnt 2012-10-01 10:35:44.011+10 278058
-2012-10-01-1349052320.63-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:45:23.371+10 228088
-2012-10-01-1349052323.61-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:45:26.073+10 202888
-2012-10-01-1349052326.25-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:45:29.615+10 280712
-2012-10-01-1349052329.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:45:33.261+10 286856
-2012-10-01-1349052425.45-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:47:08.005+10 208910
-2012-10-01-1349052588.09-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:49:51.15+10 252292
-2012-10-01-1349052982.53-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:56:25.009+10 208422
-2012-10-01-1349053083.64-demo.wav 44028 CanberraBlackMnt 2012-10-01 10:58:06.325+10 224230
-2012-10-01-1349053087.85-demo.wav 44028 CanberraBlackMnt 2012-10-01 10:58:15.186+10 616584
-2012-10-01-1349053095.42-demo.wav 44028 CanberraBlackMnt 2012-10-01 10:58:21.824+10 538760
-2012-10-01-1349053101.98-demo.wav 44028 CanberraBlackMnt 2012-10-01 10:58:27.439+10 458888
-2012-10-01-1349053108.38-demo.wav 44028 CanberraBlackMnt 2012-10-01 10:58:32.606+10 290786
-2012-10-01-1349053112.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:58:38.485+10 471176
-2012-10-01-1349053118.6-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 10:58:40.803+10 182408
-2012-10-01-1349053121.57-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-01 10:59:08.084+10 2219500
-2012-10-01-1349053148.85-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:59:31.16+10 1873712
-2012-10-01-1349053194.38-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 10:59:57.401+10 249992
-2012-10-01-1349053229.68-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:00:32.22+10 211302
-2012-10-01-1349053232.42-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:00:34.938+10 211080
-2012-10-01-1349053235.13-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:00:49.239+10 1166940
-2012-10-01-1349053251.51-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:00.19+10 716456
-2012-10-01-1349053260.38-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:13.722+10 1062998
-2012-10-01-1349053273.91-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:20.854+10 521240
-2012-10-01-1349053281.11-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:28.628+10 631066
-2012-10-01-1349053289.38-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:32.989+10 300338
-2012-10-01-1349053293.72-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:47.926+10 1164052
-2012-10-01-1349053308.28-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:01:54.435+10 481286
-2012-10-01-1349053314.62-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:02:10.055+10 1243078
-2012-10-01-1349053330.23-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:02:18.207+10 617062
-2012-10-01-1349053338.39-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:02:24.235+10 437862
-2012-10-01-1349053344.43-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:02:27.792+10 227072
-2012-10-01-1349053378.45-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:03:00.957+10 208906
-2012-10-01-1349053381.98-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:03:10.89+10 741428
-2012-10-01-1349053391.12-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:03:16.936+10 485512
-2012-10-01-1349053397.63-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:03:22.497+10 378714
-2012-10-01-1349053442.93-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:04:06.485+10 300452
-2012-10-01-1349053447.24-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:04:11.091+10 323720
-2012-10-01-1349053452.12-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:04:36.892+10 2075594
-2012-10-01-1349053477.08-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:04:51.991+10 1199338
-2012-10-01-1349053492.21-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:05:06.299+10 1148336
-2012-10-01-1349053506.47-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:05:19.217+10 1007996
-2012-10-01-1349053519.45-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:05:34.935+10 1236016
-2012-10-01-1349053535.12-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:05:52.706+10 1414680
-2012-10-01-1349053553.0-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:05:57.772+10 347100
-2012-10-01-1349053558.49-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:06:06.996+10 687676
-2012-10-01-1349053567.17-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:06:15.592+10 646950
-2012-10-01-1349053575.78-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:06:19.957+10 289264
-2012-10-01-1349053580.14-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:06:23.365+10 206564
-2012-10-01-1349053785.31-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:09:47.819+10 209218
-2012-10-01-1349053903.59-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:11:46.162+10 214728
-2012-10-01-1349053907.37-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:11:54.624+10 606638
-2012-10-01-1349053914.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:12:03.686+10 749704
-2012-10-01-1349053923.93-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:12:11.842+10 665736
-2012-10-01-1349053959.78-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 11:12:42.289+10 209032
-2012-10-01-1349054048.61-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:14:11.87+10 270084
-2012-10-01-1349054053.38-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:14:19.771+10 534664
-2012-10-01-1349054059.95-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:14:25.471+10 460936
-2012-10-01-1349054065.66-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:14:35.964+10 806756
-2012-10-01-1349054076.78-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:14:42.058+10 438154
-2012-10-01-1349054174.16-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:16:17.712+10 298116
-2012-10-01-1349054179.25-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:16:39.385+10 1663806
-2012-10-01-1349054200.2-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:16:49.676+10 792848
-2012-10-01-1349054272.0-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:17:54.583+10 216380
-2012-10-01-1349054276.47-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:18:06.338+10 825480
-2012-10-01-1349054286.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:18:21.896+10 1289220
-2012-10-01-1349054302.08-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:18:28.465+10 527554
-2012-10-01-1349054308.7-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:18:32.185+10 273720
-2012-10-01-1349054312.35-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:18:37.09+10 370086
-2012-10-01-1349054365.83-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:19:28.394+10 211410
-2012-10-01-1349054435.92-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:20:38.677+10 231264
-2012-10-01-1349054439.91-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:20:43.627+10 311432
-2012-10-01-1349054445.03-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:21:03.791+10 1573892
-2012-10-01-1349054464.79-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:21:11.468+10 555534
-2012-10-01-1349054471.64-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:21:16.227+10 385160
-2012-10-01-1349054506.64-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:21:49.152+10 210136
-2012-10-01-1349054509.33-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:21:52.142+10 233608
-2012-10-01-1349054512.74-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:00.838+10 675976
-2012-10-01-1349054523.93-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:13.928+10 815424
-2012-10-01-1349054534.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:24.609+10 860902
-2012-10-01-1349054545.82-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:29.086+10 268420
-2012-10-01-1349054549.31-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:38.523+10 772188
-2012-10-01-1349054558.71-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:42.202+10 236470
-2012-10-01-1349054562.97-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:48.771+10 476580
-2012-10-01-1349054569.61-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:22:56.464+10 528910
-2012-10-01-1349054577.29-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:03.285+10 502540
-2012-10-01-1349054583.76-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:08.514+10 395400
-2012-10-01-1349054588.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:13.612+10 407688
-2012-10-01-1349054594.98-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:21.082+10 512136
-2012-10-01-1349054602.75-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:31.444+10 731246
-2012-10-01-1349054612.19-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:36.499+10 360278
-2012-10-01-1349054617.19-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:41.807+10 387196
-2012-10-01-1349054622.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:54.467+10 1011848
-2012-10-01-1349054634.71-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:23:56.893+10 180360
-2012-10-01-1349054637.63-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:12.616+10 1259490
-2012-10-01-1349054652.79-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:18.466+10 474092
-2012-10-01-1349054659.29-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:23.695+10 366308
-2012-10-01-1349054663.88-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:26.535+10 221320
-2012-10-01-1349054667.72-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:35.586+10 661640
-2012-10-01-1349054677.48-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:41.229+10 311108
-2012-10-01-1349054681.37-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:44.685+10 274568
-2012-10-01-1349054684.81-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:48.807+10 336008
-2012-10-01-1349054691.32-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:55.423+10 290732
-2012-10-01-1349054695.61-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:24:58.893+10 218670
-2012-10-01-1349054701.32-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:25:06.184+10 407552
-2012-10-01-1349054706.36-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:25:08.881+10 204906
-2012-10-01-1349054709.08-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:25:12.172+10 205534
-2012-10-01-1349054712.35-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:25:19.034+10 554106
-2012-10-01-1349054821.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:27:04.403+10 213796
-2012-10-01-1349054825.29-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:27:07.98+10 223368
-2012-10-01-1349054828.26-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:27:14.049+10 485512
-2012-10-01-1349054834.35-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:27:18.063+10 309384
-2012-10-01-1349054936.0-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:28:58.874+10 238184
-2012-10-01-1349054940.78-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:29:04.295+10 295048
-2012-10-01-1349054944.62-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:29:09.174+10 381064
-2012-10-01-1349054949.57-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:29:16.58+10 587792
-2012-10-01-1349054957.8-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:29:27.531+10 814364
-2012-10-01-1349054968.35-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:29:32.921+10 385160
-2012-10-01-1349054973.27-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:29:39.751+10 542856
-2012-10-01-1349054981.46-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:29:49.38+10 663688
-2012-10-01-1349054990.52-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:29:54.834+10 362632
-2012-10-01-1349054998.71-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:06.333+10 636652
-2012-10-01-1349055006.53-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:13.146+10 504120
-2012-10-01-1349055013.54-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:27.487+10 1170396
-2012-10-01-1349055029.7-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:35.772+10 509094
-2012-10-01-1349055038.66-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:44.688+10 502386
-2012-10-01-1349055044.85-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:47.238+10 198792
-2012-10-01-1349055048.48-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:30:52.7+10 335712
-2012-10-01-1349055209.56-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:33:32.286+10 223634
-2012-10-01-1349055212.63-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:33:37.318+10 393352
-2012-10-01-1349055217.73-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:33:43.564+10 487560
-2012-10-01-1349055223.76-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:33:48.122+10 363704
-2012-10-01-1349055228.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:33:53.983+10 469666
-2012-10-01-1349055345.9-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:35:49.471+10 294656
-2012-10-01-1349055399.92-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:36:43.261+10 279846
-2012-10-01-1349055422.28-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:37:05.117+10 235656
-2012-10-01-1349055448.11-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:37:30.987+10 239752
-2012-10-01-1349055452.58-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:37:48.238+10 1314952
-2012-10-01-1349055468.42-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:37:57.317+10 747640
-2012-10-01-1349055477.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:38:00.727+10 237402
-2012-10-01-1349055481.34-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:38:05.883+10 383092
-2012-10-01-1349055486.08-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:38:10.81+10 397232
-2012-10-01-1349055491.26-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:38:15.606+10 310856
-2012-10-01-1349055601.39-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:40:04.337+10 247196
-2012-10-01-1349055606.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:40:09.853+10 275554
-2012-10-01-1349055610.06-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:40:14.059+10 333960
-2012-10-01-1349055614.89-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:40:18.824+10 329864
-2012-10-01-1349055619.26-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:40:22.519+10 272520
-2012-10-01-1349055702.82-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:41:45.664+10 234078
-2012-10-01-1349055706.93-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:41:51.279+10 357196
-2012-10-01-1349055711.75-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:41:56.41+10 391304
-2012-10-01-1349055717.03-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:42:01.796+10 395852
-2012-10-01-1349055776.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:43:00.319+10 324158
-2012-10-01-1349055781.05-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:43:04.679+10 303240
-2012-10-01-1349055785.08-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:43:11.732+10 559236
-2012-10-01-1349055897.19-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-01 11:44:59.686+10 208760
-2012-10-01-1349055926.58-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-01 11:45:29.093+10 209506
-2012-10-01-1349055958.61-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-01 11:46:02.738+10 342430
-2012-10-01-1349056074.7-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 11:48:02.252+10 634454
-2012-10-01-1349056169.04-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:49:31.545+10 208840
-2012-10-01-1349056174.0-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:49:39.778+10 483904
-2012-10-01-1349056181.22-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:49:55.677+10 1214600
-2012-10-01-1349056195.95-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:49:59.847+10 323720
-2012-10-01-1349056200.05-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:50:16.066+10 1282630
-2012-10-01-1349056216.89-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:50:20.477+10 300148
-2012-10-01-1349056220.75-demo.wav 44028 CanberraBlackMnt 2012-10-01 11:50:26.508+10 483464
-2012-10-01-1349056227.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 11:50:33.017+10 477320
-2012-10-01-1349056234.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:50:42.231+10 653480
-2012-10-01-1349056242.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:50:46.555+10 346248
-2012-10-01-1349056246.76-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:50:49.061+10 188552
-2012-10-01-1349056251.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:50:59.992+10 710792
-2012-10-01-1349056262.09-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:51:07.701+10 417782
-2012-10-01-1349056267.92-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:51:12.081+10 284970
-2012-10-01-1349056272.32-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 11:51:22.905+10 886918
-2012-10-01-1349056285.13-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 11:51:28.151+10 252040
-2012-10-01-1349056288.34-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 11:51:37.188+10 723324
-2012-10-01-1349056297.92-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 11:51:46.385+10 703478
-2012-10-01-1349056330.97-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:52:14.563+10 301192
-2012-10-01-1349056336.15-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:52:20.752+10 384366
-2012-10-01-1349056341.24-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:52:26.87+10 473224
-2012-10-01-1349056347.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:52:33.259+10 483464
-2012-10-01-1349056353.45-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:52:36.216+10 227464
-2012-10-01-1349056356.69-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 11:52:41.871+10 434312
-2012-10-01-1349056364.74-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:52:58.549+10 1157636
-2012-10-01-1349056379.44-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:06.141+10 557938
-2012-10-01-1349056386.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:17.059+10 878728
-2012-10-01-1349056397.52-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:30.17+10 1058952
-2012-10-01-1349056411.08-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:34.065+10 249992
-2012-10-01-1349056414.47-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:38.393+10 328230
-2012-10-01-1349056418.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:43.661+10 405640
-2012-10-01-1349056423.81-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:46.853+10 256136
-2012-10-01-1349056427.7-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:51.214+10 293000
-2012-10-01-1349056432.34-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:53:57.734+10 450682
-2012-10-01-1349056438.25-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:54:01.891+10 303874
-2012-10-01-1349056446.1-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:54:12.57+10 544122
-2012-10-01-1349056453.49-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:54:18.439+10 414004
-2012-10-01-1349056488.89-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:54:52.26+10 281516
-2012-10-01-1349056492.46-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:54:55.083+10 221320
-2012-10-01-1349056496.26-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:55:04.238+10 669832
-2012-10-01-1349056504.4-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:55:09.436+10 421880
-2012-10-01-1349056548.66-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:55:51.888+10 269972
-2012-10-01-1349056552.12-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:55:54.303+10 182408
-2012-10-01-1349056554.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:55:56.684+10 186504
-2012-10-01-1349056558.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:56:08.125+10 811088
-2012-10-01-1349056568.45-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:56:17.338+10 742338
-2012-10-01-1349056578.89-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:56:26.515+10 621072
-2012-10-01-1349056586.72-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:56:30.434+10 244848
-2012-10-01-1349056590.63-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 11:56:37.535+10 547922
-2012-10-01-1349056719.46-demo.wav 10019 ESO 10 CanberraMtAinsli 2012-10-01 11:58:41.99+10 211308
-2012-10-01-1349056723.48-demo.wav 10019 ESO 10 CanberraMtAinsli 2012-10-01 11:58:47.581+10 338908
-2012-10-01-1349056727.78-demo.wav 10019 ESO 10 CanberraMtAinsli 2012-10-01 11:58:55.307+10 632968
-2012-10-01-1349056735.47-demo.wav 10019 ESO 10 CanberraMtAinsli 2012-10-01 11:59:01.743+10 528446
-2012-10-01-1349056927.6-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:02:10.122+10 209538
-2012-10-01-1349056953.92-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:02:37.138+10 270472
-2012-10-01-1349056958.34-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:02:42.187+10 321672
-2012-10-01-1349056962.37-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:02:50.504+10 683642
-2012-10-01-1349056970.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:02:57.852+10 594056
-2012-10-01-1349056980.62-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:10.242+10 807326
-2012-10-01-1349056991.54-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:24.589+10 1092296
-2012-10-01-1349057004.88-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:27.331+10 202888
-2012-10-01-1349057007.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:36.695+10 767384
-2012-10-01-1349057016.85-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:42.449+10 467832
-2012-10-01-1349057022.65-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:47.183+10 322002
-2012-10-01-1349057027.44-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:03:51.102+10 249250
-2012-10-01-1349057129.77-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:05:33.833+10 342022
-2012-10-01-1349057191.67-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:06:35.015+10 279932
-2012-10-01-1349057197.04-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:06:40.342+10 276616
-2012-10-01-1349057200.93-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:06:49.331+10 706646
-2012-10-01-1349057209.53-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:06:55.566+10 449656
-2012-10-01-1349057215.82-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:07:02.772+10 540132
-2012-10-01-1349057224.78-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:07:13.035+10 632814
-2012-10-01-1349057233.73-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:07:19.12+10 417804
-2012-10-01-1349057239.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:07:26.428+10 554744
-2012-10-01-1349057247.23-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:07:31.176+10 327816
-2012-10-01-1349057253.84-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:07:52.238+10 1548424
-2012-10-01-1349057273.22-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:07:57.595+10 366728
-2012-10-01-1349057279.05-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:08:04.536+10 456028
-2012-10-01-1349057285.44-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:08:11.057+10 469368
-2012-10-01-1349057291.32-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:08:19.47+10 686216
-2012-10-01-1349057300.55-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:08:25.044+10 355930
-2012-10-01-1349057305.92-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:08:34.093+10 683950
-2012-10-01-1349057393.81-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:09:56.796+10 249268
-2012-10-01-1349057397.71-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:10:01.766+10 336564
-2012-10-01-1349057402.18-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:10:08.018+10 491656
-2012-10-01-1349057408.44-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:10:11.833+10 282756
-2012-10-01-1349057412.25-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:10:15.328+10 258184
-2012-10-01-1349057519.01-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:12:03.258+10 355496
-2012-10-01-1349057563.91-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:12:47.976+10 337224
-2012-10-01-1349057569.35-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:12:53.702+10 364680
-2012-10-01-1349057574.27-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:12:58.91+10 389256
-2012-10-01-1349057617.66-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 12:13:45.888+10 690422
-2012-10-01-1349057735.66-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:15:38.817+10 264430
-2012-10-01-1349057739.36-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:15:43.312+10 331912
-2012-10-01-1349057744.03-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:15:47.742+10 311432
-2012-10-01-1349057748.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:15:56.331+10 626564
-2012-10-01-1349058442.91-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:27:28.44+10 460274
-2012-10-01-1349058471.87-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:27:56.975+10 424072
-2012-10-01-1349058480.28-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:28:02.951+10 217224
-2012-10-01-1349058483.1-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:28:10.931+10 592714
-2012-10-01-1349058491.12-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:28:26.554+10 1238134
-2012-10-01-1349058506.74-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:28:45.484+10 1511528
-2012-10-01-1349058525.66-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:28:50.242+10 319848
-2012-10-01-1349058910.35-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:35:13.462+10 259024
-2012-10-01-1349058915.75-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:35:18.293+10 213128
-2012-10-01-1349058918.57-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:35:24.596+10 505992
-2012-10-01-1349058924.8-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:35:36.961+10 1011150
-2012-10-01-1349058937.16-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:35:41.887+10 345386
-2012-10-01-1349058942.31-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:35:49.549+10 545038
-2012-10-01-1349058951.68-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-01 12:36:11.527+10 1663284
-2012-10-01-1349059035.35-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:18.789+10 280130
-2012-10-01-1349059039.23-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:21.732+10 211080
-2012-10-01-1349059042.4-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:31.473+10 764040
-2012-10-01-1349059052.2-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:38.687+10 510406
-2012-10-01-1349059061.93-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:49.132+10 544806
-2012-10-01-1349059069.39-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:54.571+10 416704
-2012-10-01-1349059075.27-demo.wav 44028 CanberraBlackMnt 2012-10-01 12:37:58.81+10 227344
-2012-10-01-1349059079.63-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:38:07.653+10 666364
-2012-10-01-1349059087.86-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:38:13.071+10 438408
-2012-10-01-1349059093.49-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:38:17.796+10 362632
-2012-10-01-1349059098.01-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:38:22.114+10 344200
-2012-10-01-1349059102.48-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:38:41.655+10 1609864
-2012-10-01-1349059123.26-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:38:55.15+10 993728
-2012-10-01-1349059136.17-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:39:07.562+10 954216
-2012-10-01-1349059148.52-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:39:13.44+10 411624
-2012-10-01-1349059154.27-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:39:32.021+10 1481848
-2012-10-01-1349059172.21-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:39:36.932+10 348494
-2012-10-01-1349059177.28-demo.wav 44028 CanberraMtAinsli 2012-10-01 12:39:47.281+10 838788
-2012-10-01-1349059187.47-demo.wav 44028 CanberraMtAinsli 2012-10-01 12:40:02.46+10 1229664
-2012-10-01-1349059202.67-demo.wav 44028 CanberraMtAinsli 2012-10-01 12:40:12.186+10 765156
-2012-10-01-1349059212.64-demo.wav 44028 CanberraMtAinsli 2012-10-01 12:40:16.217+10 296754
-2012-10-01-1349059217.04-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:40:26.382+10 784520
-2012-10-01-1349059226.57-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:40:37.57+10 915472
-2012-10-01-1349059237.73-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:40:40.768+10 228468
-2012-10-01-1349059469.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:44:32.733+10 267698
-2012-10-01-1349059472.91-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:44:48.389+10 1266876
-2012-10-01-1349059572.74-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:46:17.611+10 408684
-2012-10-01-1349059577.79-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:46:20.476+10 225416
-2012-10-01-1349059580.94-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:46:29.289+10 700524
-2012-10-01-1349059589.5-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:46:36.056+10 553096
-2012-10-01-1349059596.86-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:46:55.554+10 1565640
-2012-10-01-1349059616.51-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:47:09.725+10 1107882
-2012-10-01-1349059630.87-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:47:14.827+10 327730
-2012-10-01-1349059635.04-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 12:47:21.535+10 544904
-2012-10-01-1349059757.9-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:49:20.413+10 209472
-2012-10-01-1349059764.11-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:49:35.689+10 966792
-2012-10-01-1349059776.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:49:39.803+10 254088
-2012-10-01-1349059780.8-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:49:45.25+10 374920
-2012-10-01-1349059787.33-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:49:55.087+10 651400
-2012-10-01-1349059796.6-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:49:59.374+10 233608
-2012-10-01-1349059800.23-demo.wav 10301 CanberraMtAinsli 2012-10-01 12:50:03.036+10 233608
-2012-10-01-1349059861.23-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:51:03.796+10 212596
-2012-10-01-1349059863.98-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:51:06.85+10 233608
-2012-10-01-1349059867.06-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:51:10.124+10 256136
-2012-10-01-1349059871.31-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:51:18.753+10 624776
-2012-10-01-1349059879.13-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:51:23.59+10 370824
-2012-10-01-1349059883.87-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:51:27.266+10 282760
-2012-10-01-1349060079.55-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:54:44.988+10 456822
-2012-10-01-1349060086.27-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:54:50.538+10 358536
-2012-10-01-1349060091.02-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:55:02.208+10 925116
-2012-10-01-1349060102.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:55:11.179+10 680672
-2012-10-01-1349060156.8-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:56:00.362+10 295874
-2012-10-01-1349060161.9-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:56:09.59+10 645256
-2012-10-01-1349060170.39-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:56:17.94+10 577360
-2012-10-01-1349060287.48-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:58:10.046+10 213172
-2012-10-01-1349060290.49-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:58:14.715+10 350344
-2012-10-01-1349060295.56-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:58:23.667+10 682120
-2012-10-01-1349060304.03-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 12:58:31.455+10 576678
-2012-10-01-1349060712.54-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 13:05:16.167+10 302064
-2012-10-01-1349060716.4-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 13:05:22.02+10 471176
-2012-10-01-1349060761.76-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:06:04.277+10 210468
-2012-10-01-1349060764.57-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:06:07.458+10 241800
-2012-10-01-1349060767.57-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:06:14.441+10 575624
-2012-10-01-1349060775.87-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:06:22.256+10 500334
-2012-10-01-1349060901.07-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 13:08:25.06+10 330604
-2012-10-01-1349060906.22-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 13:08:30.459+10 354440
-2012-10-01-1349060910.65-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 13:08:35.929+10 438408
-2012-10-01-1349061214.36-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:13:36.915+10 209832
-2012-10-01-1349061486.79-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:18:10.999+10 348712
-2012-10-01-1349061492.07-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:18:24.803+10 1066686
-2012-10-01-1349061505.13-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:18:35.153+10 839816
-2012-10-01-1349061515.36-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:18:40.08+10 372472
-2012-10-01-1349061520.28-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:18:43.855+10 268614
-2012-10-01-1349061524.73-demo.wav 44028 CanberraMtAinsli 2012-10-01 13:18:48.397+10 243142
-2012-10-01-1349061788.95-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:23:11.413+10 208810
-2012-10-01-1349061795.36-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:23:22.77+10 622728
-2012-10-01-1349061803.15-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:23:26.993+10 321672
-2012-10-01-1349061807.96-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:23:32.191+10 354440
-2012-10-01-1349061813.04-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:23:44.939+10 999962
-2012-10-01-1349061825.88-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:24:04.261+10 1542376
-2012-10-01-1349061845.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:24:10.356+10 420518
-2012-10-01-1349061853.0-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:24:16.466+10 293000
-2012-10-01-1349061857.83-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:24:21.521+10 311424
-2012-10-01-1349061863.27-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:24:27.087+10 314936
-2012-10-01-1349061867.25-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:24:30.175+10 196572
-2012-10-01-1349061916.88-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:25:22.553+10 473014
-2012-10-01-1349061923.59-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:25:26.311+10 227464
-2012-10-01-1349061928.05-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:25:40.914+10 1075404
-2012-10-01-1349061941.72-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:25:44.489+10 231560
-2012-10-01-1349061944.69-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:25:47.174+10 206984
-2012-10-01-1349061947.99-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:25:54.768+10 567432
-2012-10-01-1349061954.94-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:05.085+10 788552
-2012-10-01-1349061965.25-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:16.824+10 908658
-2012-10-01-1349061977.15-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:22.892+10 417858
-2012-10-01-1349061983.14-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:30.762+10 639728
-2012-10-01-1349061991.76-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:39.174+10 620680
-2012-10-01-1349061999.86-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:44.427+10 382156
-2012-10-01-1349062005.19-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:26:49.048+10 322902
-2012-10-01-1349062010.74-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:01.89+10 932322
-2012-10-01-1349062022.08-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:04.269+10 180360
-2012-10-01-1349062024.76-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:08.316+10 301180
-2012-10-01-1349062028.47-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:13.193+10 395348
-2012-10-01-1349062066.04-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:49.334+10 276058
-2012-10-01-1349062069.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:52.132+10 219272
-2012-10-01-1349062073.14-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:27:56.722+10 297096
-2012-10-01-1349062102.05-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:28:24.841+10 233608
-2012-10-01-1349062127.34-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:28:50.609+10 274568
-2012-10-01-1349062131.6-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:28:55.44+10 323720
-2012-10-01-1349062135.81-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:29:00.398+10 385160
-2012-10-01-1349062142.57-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:29:07.941+10 450696
-2012-10-01-1349062148.27-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:29:14.427+10 514184
-2012-10-01-1349062155.0-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:29:19.935+10 357152
-2012-10-01-1349062160.56-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:29:24.602+10 306618
-2012-10-01-1349062165.33-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:29:31.48+10 511594
-2012-10-01-1349062172.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:29:35.367+10 262280
-2012-10-01-1349062175.56-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:29:38.565+10 252040
-2012-10-01-1349062178.75-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:29:48.387+10 790672
-2012-10-01-1349062188.75-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:29:51.266+10 200344
-2012-10-01-1349062192.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:30:13.667+10 1793836
-2012-10-01-1349062215.19-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:30:20.576+10 452744
-2012-10-01-1349062220.94-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:30:41.195+10 1353040
-2012-10-01-1349062241.41-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:30:43.882+10 209032
-2012-10-01-1349062246.11-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:30:57.974+10 993590
-2012-10-01-1349062258.82-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:31:04.74+10 458766
-2012-10-01-1349062264.88-demo.wav 44028 CanberraBlackMnt 2012-10-01 13:31:09.458+10 359722
-2012-10-01-1349062333.26-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:32:15.977+10 226978
-2012-10-01-1349062336.33-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:32:18.807+10 206984
-2012-10-01-1349062339.53-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:32:23.996+10 370824
-2012-10-01-1349062344.19-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:32:32.641+10 676840
-2012-10-01-1349062353.46-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:32:38.844+10 438904
-2012-10-01-1349062454.05-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:34:19.103+10 398808
-2012-10-01-1349062459.33-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:34:30.492+10 931298
-2012-10-01-1349062470.92-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:34:37.113+10 465550
-2012-10-01-1349062689.17-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:38:11.726+10 213556
-2012-10-01-1349062691.92-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:38:15.453+10 297096
-2012-10-01-1349062695.91-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:38:22.305+10 538760
-2012-10-01-1349062703.48-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:38:44.134+10 1730798
-2012-10-01-1349062724.25-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:38:46.847+10 219272
-2012-10-01-1349062727.45-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:38:53.385+10 497800
-2012-10-01-1349062733.94-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:39:04.414+10 828452
-2012-10-01-1349062745.25-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:39:14.533+10 777180
-2012-10-01-1349062755.9-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:39:19.074+10 266376
-2012-10-01-1349062847.2-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:40:49.925+10 223282
-2012-10-01-1349062850.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:40:53.914+10 303240
-2012-10-01-1349062854.05-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:40:58.568+10 381064
-2012-10-01-1349062859.16-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:09.349+10 823346
-2012-10-01-1349062870.2-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:19.561+10 784060
-2012-10-01-1349062880.65-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:23.736+10 258184
-2012-10-01-1349062884.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:28.085+10 307336
-2012-10-01-1349062888.45-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:30.9+10 204936
-2012-10-01-1349062891.31-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:34.7+10 282760
-2012-10-01-1349062894.9-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:37.435+10 207504
-2012-10-01-1349062897.94-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:42.265+10 308322
-2012-10-01-1349062902.49-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:45.956+10 229536
-2012-10-01-1349062906.13-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:41:51.954+10 458114
-2012-10-01-1349062964.42-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:42:47.826+10 287248
-2012-10-01-1349062967.97-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:42:50.45+10 206984
-2012-10-01-1349062971.27-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:42:59.016+10 645256
-2012-10-01-1349062979.31-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:43:13.715+10 1208456
-2012-10-01-1349062994.84-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:43:19.361+10 379016
-2012-10-01-1349062999.57-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:43:27.752+10 685220
-2012-10-01-1349063008.96-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:43:36.399+10 620744
-2012-10-01-1349063016.7-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:43:41.108+10 370824
-2012-10-01-1349063100.99-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:07.572+10 550632
-2012-10-01-1349063107.86-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:10.799+10 241800
-2012-10-01-1349063111.06-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:26.617+10 1294862
-2012-10-01-1349063127.52-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:34.598+10 591890
-2012-10-01-1349063135.95-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:39.906+10 333606
-2012-10-01-1349063140.22-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:44.381+10 350344
-2012-10-01-1349063144.57-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:47.468+10 209104
-2012-10-01-1349063147.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:45:51.238+10 226848
-2012-10-01-1349063152.15-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:08.048+10 1333268
-2012-10-01-1349063168.21-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:11.016+10 237704
-2012-10-01-1349063171.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:14.7+10 287538
-2012-10-01-1349063175.15-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:22.678+10 622728
-2012-10-01-1349063183.48-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:25.999+10 211080
-2012-10-01-1349063186.2-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:29.581+10 284808
-2012-10-01-1349063190.22-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:45.175+10 1255560
-2012-10-01-1349063205.32-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:46:54.666+10 784518
-2012-10-01-1349063215.01-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:47:03.216+10 672630
-2012-10-01-1349063341.62-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:06.342+10 397230
-2012-10-01-1349063346.7-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:11.347+10 389256
-2012-10-01-1349063351.89-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:17.538+10 475272
-2012-10-01-1349063358.02-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:23.057+10 359558
-2012-10-01-1349063363.9-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:29.869+10 497442
-2012-10-01-1349063370.52-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:38.241+10 633692
-2012-10-01-1349063378.38-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:49:41.534+10 202964
-2012-10-01-1349063381.83-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:49:55.497+10 1149064
-2012-10-01-1349063397.07-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:50:02.542+10 459456
-2012-10-01-1349063402.92-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:50:08.109+10 436360
-2012-10-01-1349063409.12-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:50:14.193+10 424072
-2012-10-01-1349063416.31-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:50:20.233+10 327816
-2012-10-01-1349063420.95-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:50:33.282+10 1032328
-2012-10-01-1349063433.45-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:50:36.112+10 223368
-2012-10-01-1349063436.77-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:50:45.511+10 728834
-2012-10-01-1349063446.01-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:50:54.542+10 687870
-2012-10-01-1349063623.36-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 13:53:49.668+10 526824
-2012-10-01-1349063630.1-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:53:57.102+10 585864
-2012-10-01-1349063637.28-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:53:59.894+10 221320
-2012-10-01-1349063640.09-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:54:11.569+10 915490
-2012-10-01-1349063651.72-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:54:19.485+10 591602
-2012-10-01-1349063660.27-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:54:32.385+10 1016228
-2012-10-01-1349063672.63-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:54:35.078+10 204936
-2012-10-01-1349063675.88-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:54:42.363+10 544904
-2012-10-01-1349063683.04-demo.wav 10123 GOULB1 CanberraMtAinsli 2012-10-01 13:54:48.977+10 497762
-2012-10-01-1349063779.65-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 13:56:23.183+10 294676
-2012-10-01-1349063784.16-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:56:30.216+10 506402
-2012-10-01-1349063790.43-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:56:34.973+10 383112
-2012-10-01-1349063796.69-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:56:41.146+10 374920
-2012-10-01-1349063802.49-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:56:47.311+10 370274
-2012-10-01-1349063807.97-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:56:53.211+10 435508
-2012-10-01-1349063816.88-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 13:56:59.96+10 256136
-2012-10-01-1349064151.97-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:02:35.531+10 298506
-2012-10-01-1349064156.72-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:02:40.618+10 324392
-2012-10-01-1349064161.0-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:02:47.398+10 534664
-2012-10-01-1349064167.98-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:03:09.984+10 1831908
-2012-10-01-1349064190.13-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:03:20.651+10 820074
-2012-10-01-1349064274.49-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:04:37.477+10 248332
-2012-10-01-1349064278.75-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:04:44.554+10 484490
-2012-10-01-1349064284.68-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:04:48.824+10 344200
-2012-10-01-1349064289.69-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:04:53.287+10 301192
-2012-10-01-1349064293.82-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:04:57.469+10 307024
-2012-10-01-1349064299.38-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:05:03.062+10 274952
-2012-10-01-1349064303.22-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:05:07.86+10 325596
-2012-10-01-1349064452.76-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:07:36.715+10 330622
-2012-10-01-1349064496.9-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:08:20.111+10 267388
-2012-10-01-1349064501.1-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:08:28.732+10 641160
-2012-10-01-1349064509.04-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:08:34.236+10 436268
-2012-10-01-1349064514.46-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:08:38.218+10 282788
-2012-10-01-1349064518.49-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:09:03.411+10 2032046
-2012-10-01-1349064543.68-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:09:06.211+10 191586
-2012-10-01-1349064969.22-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:16:12.476+10 272110
-2012-10-01-1349064974.22-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:16:19.03+10 403592
-2012-10-01-1349064979.22-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:16:22.268+10 252040
-2012-10-01-1349064982.65-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:16:25.674+10 252040
-2012-10-01-1349064986.26-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:16:46.447+10 1693832
-2012-10-01-1349065008.69-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:17:03.234+10 1222792
-2012-10-01-1349065024.02-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:17:07.612+10 299144
-2012-10-01-1349065027.96-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:17:12.005+10 338056
-2012-10-01-1349065360.81-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:22:46.265+10 455862
-2012-10-01-1349065367.17-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:22:49.688+10 213102
-2012-10-01-1349065369.95-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:23:07.124+10 1438484
-2012-10-01-1349065387.33-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:23:24.958+10 1412854
-2012-10-01-1349065405.16-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:23:28.366+10 233950
-2012-10-01-1349065999.04-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:21.883+10 240692
-2012-10-01-1349066003.42-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:27.033+10 305288
-2012-10-01-1349066007.51-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:31.32+10 321672
-2012-10-01-1349066011.41-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:34.295+10 245870
-2012-10-01-1349066015.28-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:40.756+10 450654
-2012-10-01-1349066021.23-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:44.435+10 270088
-2012-10-01-1349066024.56-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:47.043+10 191038
-2012-10-01-1349066028.0-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:33:56.273+10 663414
-2012-10-01-1349066036.47-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:34:02.303+10 439306
-2012-10-01-1349066042.39-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:34:10.733+10 696308
-2012-10-01-1349066051.94-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:34:20.49+10 703598
-2012-10-01-1349066061.53-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:34:32.519+10 916812
-2012-10-01-1349066073.18-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:34:43.428+10 842782
-2012-10-01-1349066084.46-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:34:48.85+10 370800
-2012-10-01-1349066276.25-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:37:59.103+10 240024
-2012-10-01-1349066279.91-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:38:02.557+10 225416
-2012-10-01-1349066282.64-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:38:14.411+10 987184
-2012-10-01-1349066294.5-demo.wav 44028 CanberraMtAinsli 2012-10-01 14:38:19.369+10 411546
-2012-10-01-1349066467.41-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:41:11.577+10 350040
-2012-10-01-1349066472.52-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:41:17.752+10 440456
-2012-10-01-1349066478.77-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:41:23.318+10 383112
-2012-10-01-1349066483.4-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:41:30.556+10 600152
-2012-10-01-1349066490.66-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:41:34.01+10 282682
-2012-10-01-1349066495.58-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 14:41:40.68+10 386096
-2012-10-01-1349066654.0-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:17.276+10 276468
-2012-10-01-1349066658.94-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:23.579+10 388518
-2012-10-01-1349066663.66-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:26.219+10 217196
-2012-10-01-1349066666.3-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:29.466+10 266350
-2012-10-01-1349066670.96-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:41.175+10 839330
-2012-10-01-1349066681.33-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:44.502+10 268052
-2012-10-01-1349066684.59-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:47.509+10 241804
-2012-10-01-1349066687.81-demo.wav 44028 CanberraBlackMnt 2012-10-01 14:44:50.628+10 234188
-2012-10-01-1349067069.83-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:51:12.316+10 209738
-2012-10-01-1349067389.37-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:56:32.859+10 294758
-2012-10-01-1349067394.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:56:48.98+10 1210672
-2012-10-01-1349067410.73-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 14:56:54.882+10 350344
-2012-10-01-1349067955.96-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:05:58.427+10 208376
-2012-10-01-1349067960.11-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:06:03.721+10 305288
-2012-10-01-1349067964.33-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:06:11.796+10 626824
-2012-10-01-1349067973.4-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:06:18.528+10 432264
-2012-10-01-1349067980.29-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:06:30.212+10 818630
-2012-10-01-1349067990.87-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:06:34.875+10 338000
-2012-10-01-1349068029.13-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:07:15.387+10 525352
-2012-10-01-1349068035.86-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:07:19.423+10 301192
-2012-10-01-1349068039.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:07:22.892+10 284808
-2012-10-01-1349068081.97-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:04.46+10 209752
-2012-10-01-1349068084.54-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:08.097+10 301192
-2012-10-01-1349068093.08-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:16.011+10 247942
-2012-10-01-1349068096.46-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:20.905+10 374618
-2012-10-01-1349068100.98-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:27.186+10 484838
-2012-10-01-1349068107.27-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:35.599+10 657172
-2012-10-01-1349068115.68-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:44.051+10 638426
-2012-10-01-1349068124.13-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:08:53.24+10 699688
-2012-10-01-1349068133.34-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:08.914+10 1302896
-2012-10-01-1349068151.36-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:14.576+10 272520
-2012-10-01-1349068154.72-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:21.655+10 576696
-2012-10-01-1349068162.54-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:27.541+10 420460
-2012-10-01-1349068167.62-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:30.276+10 225416
-2012-10-01-1349068170.35-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:35.768+10 456192
-2012-10-01-1349068175.96-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:40.111+10 298688
-2012-10-01-1349068180.65-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:48.867+10 690146
-2012-10-01-1349068188.95-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:09:52.736+10 319624
-2012-10-01-1349068192.81-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:10:00.713+10 658210
-2012-10-01-1349068200.98-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:10:21.008+10 1644990
-2012-10-01-1349068221.18-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:10:31.093+10 776646
-2012-10-01-1349068231.21-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:10:37.018+10 428414
-2012-10-01-1349068237.25-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:10:46.78+10 750052
-2012-10-01-1349068377.89-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:02.311+10 369212
-2012-10-01-1349068383.56-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:08.036+10 373368
-2012-10-01-1349068388.19-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:14.115+10 495752
-2012-10-01-1349068395.96-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:22.306+10 475724
-2012-10-01-1349068402.56-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:28+10 413134
-2012-10-01-1349068408.16-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:31.31+10 193464
-2012-10-01-1349068411.95-demo.wav 44028 CanberraMtAinsli 2012-10-01 15:13:35.022+10 243046
-2012-10-01-1349068454.62-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:14:19.28+10 388036
-2012-10-01-1349068460.79-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:14:25.21+10 370824
-2012-10-01-1349068466.42-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:14:30.638+10 352392
-2012-10-01-1349068470.79-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:14:34.169+10 282760
-2012-10-01-1349068474.73-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:14:40.914+10 517006
-2012-10-01-1349068579.67-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:16:26.207+10 548838
-2012-10-01-1349068586.56-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:16:32.826+10 526472
-2012-10-01-1349068593.18-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:16:41.272+10 680072
-2012-10-01-1349068601.9-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:16:45.716+10 282874
-2012-10-01-1349068608.16-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:16:52.276+10 344286
-2012-10-01-1349068612.56-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:16:55.239+10 223368
-2012-10-01-1349068615.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:16:58.117+10 221224
-2012-10-01-1349068618.34-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:17:04.53+10 464384
-2012-10-01-1349068624.68-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:17:10.463+10 428170
-2012-10-01-1349068630.73-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:17:14.046+10 215934
-2012-10-01-1349068634.3-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:17:27.941+10 1082870
-2012-10-01-1349068648.15-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:17:35.744+10 566894
-2012-10-01-1349068901.2-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 15:21:43.699+10 208194
-2012-10-01-1349069041.42-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:24:03.915+10 208952
-2012-10-01-1349069153.1-demo.wav 44028 CanberraBlackMnt 2012-10-01 15:25:56.54+10 287980
-2012-10-01-1349069159.02-demo.wav 44028 CanberraBlackMnt 2012-10-01 15:26:03.115+10 346248
-2012-10-01-1349069163.48-demo.wav 44028 CanberraBlackMnt 2012-10-01 15:26:08.425+10 411784
-2012-10-01-1349069168.62-demo.wav 44028 CanberraBlackMnt 2012-10-01 15:26:13.4+10 397400
-2012-10-01-1349069173.6-demo.wav 44028 CanberraBlackMnt 2012-10-01 15:26:16.6+10 235838
-2012-10-01-1349069176.83-demo.wav 44028 CanberraBlackMnt 2012-10-01 15:26:20.678+10 270794
-2012-10-01-1349069298.2-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:28:22.788+10 383772
-2012-10-01-1349069304.89-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:28:34.992+10 850056
-2012-10-01-1349069316.01-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:28:39.706+10 307620
-2012-10-01-1349069319.98-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:28:42.614+10 219272
-2012-10-01-1349069325.03-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:29:02.486+10 1460140
-2012-10-01-1349069343.67-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:29:21.392+10 1331626
-2012-10-01-1349069361.6-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:29:24.053+10 209032
-2012-10-01-1349069386.97-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:29:50.245+10 274568
-2012-10-01-1349069392.98-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:29:56.281+10 270472
-2012-10-01-1349069397.43-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:00.371+10 241800
-2012-10-01-1349069400.74-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:14.247+10 1131450
-2012-10-01-1349069414.49-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:18.227+10 300216
-2012-10-01-1349069418.43-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:27.375+10 694654
-2012-10-01-1349069427.53-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:35.73+10 682708
-2012-10-01-1349069435.99-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:41.26+10 386284
-2012-10-01-1349069441.51-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:48.057+10 527788
-2012-10-01-1349069449.58-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:30:55.237+10 433642
-2012-10-01-1349069455.8-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:31:06.707+10 916184
-2012-10-01-1349069468.09-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:31:12.423+10 353428
-2012-10-01-1349069474.2-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:31:33.921+10 1656908
-2012-10-01-1349069494.81-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:31:39.6+10 401440
-2012-10-01-1349069499.97-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:31:43.918+10 331912
-2012-10-01-1349069504.17-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:31:47.038+10 224242
-2012-10-01-1349069507.23-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:31:50.206+10 199510
-2012-10-01-1349069672.15-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:34:34.64+10 207788
-2012-10-01-1349069770.74-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:36:14.861+10 345252
-2012-10-01-1349069776.53-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:36:19.891+10 280712
-2012-10-01-1349069780.14-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:36:24.449+10 362632
-2012-10-01-1349069785.44-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:36:32.713+10 577544
-2012-10-01-1349069792.96-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:36:40.021+10 529092
-2012-10-01-1349069800.3-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:36:49.827+10 778648
-2012-10-01-1349069810.42-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:36:59.993+10 802432
-2012-10-01-1349069821.54-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 15:37:10.334+10 736672
-2012-10-01-1349069833.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:37:20.612+10 594960
-2012-10-01-1349069841.01-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:37:28+10 585864
-2012-10-01-1349069851.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:37:36.789+10 401826
-2012-10-01-1349069857.34-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:37:50.747+10 1108302
-2012-10-01-1349069872.05-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:37:57.089+10 422014
-2012-10-01-1349069879.1-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:06.931+10 650378
-2012-10-01-1349069887.2-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:14.479+10 590802
-2012-10-01-1349069895.15-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:20.548+10 451822
-2012-10-01-1349069900.67-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:25.902+10 395212
-2012-10-01-1349069906.11-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:32.36+10 519292
-2012-10-01-1349069912.64-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:39.747+10 577458
-2012-10-01-1349069920.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:54.01+10 1136502
-2012-10-01-1349069935.32-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:38:59.522+10 352392
-2012-10-01-1349069940.3-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:39:10.619+10 859786
-2012-10-01-1349069950.79-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:39:27.74+10 1384776
-2012-10-01-1349069967.93-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:39:37.567+10 748056
-2012-10-01-1349069977.83-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:39:43.773+10 454596
-2012-10-01-1349070748.71-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:52:32.025+10 277572
-2012-10-01-1349070753.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:52:40.783+10 608182
-2012-10-01-1349070761.02-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:52:43.655+10 221320
-2012-10-01-1349070764.92-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:52:56.035+10 930620
-2012-10-01-1349070776.47-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:53:01.191+10 395390
-2012-10-01-1349070784.23-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:53:07.669+10 243130
-2012-10-01-1349070855.39-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:54:17.901+10 208494
-2012-10-01-1349070889.95-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:54:54.849+10 411566
-2012-10-01-1349070895.03-demo.wav 10301 CanberraMtAinsli 2012-10-01 15:54:58.176+10 262280
-2012-10-01-1349071175.51-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 15:59:39.537+10 333338
-2012-10-01-1349071181.34-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:59:47.724+10 536712
-2012-10-01-1349071188.2-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 15:59:55.713+10 630920
-2012-10-01-1349071196.74-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:00:00.831+10 295630
-2012-10-01-1349071201.45-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:00:06.021+10 385076
-2012-10-01-1349071426.16-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:03:48.79+10 220090
-2012-10-01-1349071431.81-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:00.052+10 692360
-2012-10-01-1349071440.28-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:08.272+10 669832
-2012-10-01-1349071448.44-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:12.433+10 336008
-2012-10-01-1349071452.67-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:21.534+10 696750
-2012-10-01-1349071461.79-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:29.356+10 580078
-2012-10-01-1349071469.61-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:43.368+10 1097000
-2012-10-01-1349071483.59-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:46.776+10 245752
-2012-10-01-1349071487.0-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:04:59.059+10 941946
-2012-10-01-1349071500.73-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:05.522+10 396524
-2012-10-01-1349071506.22-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:08.993+10 229512
-2012-10-01-1349071509.23-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:19.71+10 868360
-2012-10-01-1349071519.97-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:28.028+10 655584
-2012-10-01-1349071528.29-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:36.762+10 652372
-2012-10-01-1349071537.58-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:42.92+10 441816
-2012-10-01-1349071543.19-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:46.966+10 317554
-2012-10-01-1349071549.65-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:05:59.938+10 856254
-2012-10-01-1349071560.17-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:06:05.633+10 398242
-2012-10-01-1349072088.19-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:14:52.183+10 335894
-2012-10-01-1349072093.16-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:14:59.54+10 534640
-2012-10-01-1349072101.17-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:15:08.843+10 643208
-2012-10-01-1349072109.1-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:15:14.409+10 446344
-2012-10-01-1349072114.89-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:15:23.11+10 667046
-2012-10-01-1349072123.3-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:15:31.074+10 600614
-2012-10-01-1349072131.25-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:15:37.708+10 484090
-2012-10-01-1349072247.61-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:17:31.451+10 322546
-2012-10-01-1349072252.45-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:17:35.116+10 223340
-2012-10-01-1349072255.56-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:17:45.88+10 865604
-2012-10-01-1349072266.14-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:17:50.551+10 327958
-2012-10-01-1349072273.02-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:04.515+10 909976
-2012-10-01-1349072284.84-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:11.361+10 545702
-2012-10-01-1349072292.33-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:16.927+10 385060
-2012-10-01-1349072297.1-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:20.335+10 270472
-2012-10-01-1349072301.08-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:29.901+10 743560
-2012-10-01-1349072310.08-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:39.529+10 772432
-2012-10-01-1349072320.13-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:18:46.823+10 562394
-2012-10-01-1349072424.9-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:20:28.652+10 312780
-2012-10-01-1349072430.0-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:20:33.866+10 323720
-2012-10-01-1349072434.88-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:20:42.31+10 622704
-2012-10-01-1349072442.55-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:20:45.398+10 237704
-2012-10-01-1349072445.6-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:20:49.638+10 336008
-2012-10-01-1349072450.11-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:20:52.485+10 198702
-2012-10-01-1349072452.69-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:21:17.806+10 2062712
-2012-10-01-1349072478.0-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:21:28.794+10 839208
-2012-10-01-1349072488.94-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:21:35.448+10 485880
-2012-10-01-1349072495.66-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:21:39.944+10 334984
-2012-10-01-1349072501.53-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:21:58.515+10 1423888
-2012-10-01-1349072518.67-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:22:08.159+10 796786
-2012-10-01-1349072530.13-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:22:14.59+10 372872
-2012-10-01-1349072535.35-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:22:18.142+10 235460
-2012-10-01-1349072613.61-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:23:36.071+10 208850
-2012-10-01-1349072664.74-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:24:27.961+10 271590
-2012-10-01-1349072669.07-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:24:34.312+10 438480
-2012-10-01-1349072674.44-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:24:38.263+10 323720
-2012-10-01-1349072678.63-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:24:41.014+10 200840
-2012-10-01-1349072681.21-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:25:19.403+10 3132642
-2012-10-01-1349072719.67-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:25:22.41+10 181760
-2012-10-01-1349072722.67-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:25:41.573+10 1521916
-2012-10-01-1349072741.83-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:25:44.645+10 201424
-2012-10-01-1349072744.8-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:25:55.233+10 817118
-2012-10-01-1349072755.99-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:26:11.34+10 1288844
-2012-10-01-1349072771.53-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:26:19.211+10 638562
-2012-10-01-1349072780.63-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:26:38.63+10 1449838
-2012-10-01-1349072798.8-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:26:43.556+10 351108
-2012-10-01-1349072804.11-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:26:51.986+10 658940
-2012-10-01-1349072812.36-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:26:54.802+10 203670
-2012-10-01-1349072815.49-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:27:01.413+10 497798
-2012-10-01-1349072822.75-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:27:08.543+10 485512
-2012-10-01-1349072828.71-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:27:11.605+10 218616
-2012-10-01-1349072832.21-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:27:16.507+10 323306
-2012-10-01-1349072889.36-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:28:12.523+10 264612
-2012-10-01-1349072892.78-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:28:15.658+10 241800
-2012-10-01-1349072896.04-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:28:25.175+10 766088
-2012-10-01-1349072905.38-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:28:35.364+10 837768
-2012-10-01-1349072946.48-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:29:10.714+10 354374
-2012-10-01-1349072951.64-demo.wav 10301 CanberraMtAinsli 2012-10-01 16:29:15.033+10 282760
-2012-10-01-1349072956.23-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:29:31.489+10 1277822
-2012-10-01-1349073044.14-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:30:47.226+10 259450
-2012-10-01-1349073047.45-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:30:49.994+10 213128
-2012-10-01-1349073050.11-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:30:58.936+10 743560
-2012-10-01-1349073059.11-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:31:09.397+10 826768
-2012-10-01-1349073072.03-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:31:20.642+10 687708
-2012-10-01-1349073081.08-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:31:24+10 199298
-2012-10-01-1349073084.63-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:31:39.245+10 1224950
-2012-10-01-1349073100.55-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:31:44.107+10 299144
-2012-10-01-1349073104.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:31:53.913+10 813136
-2012-10-01-1349073114.44-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:32:01.894+10 621110
-2012-10-01-1349073122.02-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:32:06.565+10 318672
-2012-10-01-1349073126.7-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:32:11.123+10 323834
-2012-10-01-1349073476.87-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:37:59.347+10 208508
-2012-10-01-1349073481.12-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:08.257+10 600200
-2012-10-01-1349073488.48-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:14.382+10 487522
-2012-10-01-1349073494.58-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:19.519+10 413820
-2012-10-01-1349073499.71-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:23.117+10 274130
-2012-10-01-1349073503.38-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:31.162+10 643512
-2012-10-01-1349073511.42-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:41.768+10 843194
-2012-10-01-1349073521.95-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:38:50.614+10 684664
-2012-10-01-1349073530.88-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:39:01.826+10 878878
-2012-10-01-1349073542.1-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:39:09.665+10 617266
-2012-10-01-1349073550.87-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:39:21.117+10 798766
-2012-10-01-1349073561.38-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:39:24.684+10 249548
-2012-10-01-1349073564.82-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:39:31.674+10 510450
-2012-10-01-1349073571.9-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:39:37.896+10 450908
-2012-10-01-1349073855.95-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:44:21.002+10 422872
-2012-10-01-1349073862.03-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:44:26.281+10 356488
-2012-10-01-1349073866.57-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:44:43.253+10 1337302
-2012-10-01-1349073883.49-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:44:48.451+10 373622
-2012-10-01-1349073888.7-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:44:52.05+10 216418
-2012-10-01-1349073892.3-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:45:14.155+10 1824770
-2012-10-01-1349073914.36-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:45:40.309+10 2114228
-2012-10-01-1349073940.56-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:45:44.675+10 331526
-2012-10-01-1349073944.81-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:45:47.746+10 183824
-2012-10-01-1349073947.9-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:45:51.81+10 265356
-2012-10-01-1349073951.99-demo.wav 44028 CanberraMtAinsli 2012-10-01 16:45:57.456+10 396920
-2012-10-01-1349074076.12-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:47:58.622+10 210794
-2012-10-01-1349074080.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:48:13.562+10 1112200
-2012-10-01-1349074093.86-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:48:20.344+10 542856
-2012-10-01-1349074100.59-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:48:24.455+10 303520
-2012-10-01-1349074104.71-demo.wav 44028 CanberraBlackMnt 2012-10-01 16:48:30.422+10 416844
-2012-10-01-1349074644.64-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:57:31.831+10 604194
-2012-10-01-1349074694.17-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 16:58:20.975+10 570280
-2012-10-01-1349074701.95-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:58:30.364+10 702888
-2012-10-01-1349074710.58-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:58:43.571+10 1037094
-2012-10-01-1349074723.73-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:58:56.823+10 1037490
-2012-10-01-1349074737.13-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:59:17.233+10 1630004
-2012-10-01-1349074757.49-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 16:59:20.472+10 184482
-2012-10-01-1349075309.02-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 17:08:33.19+10 351220
-2012-10-01-1349075313.46-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 17:08:36.992+10 297096
-2012-10-01-1349075317.27-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 17:08:53.218+10 1277604
-2012-10-01-1349075333.48-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 17:09:12.523+10 1543156
-2012-10-01-1349075352.77-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 17:09:26.318+10 1081412
-2012-10-01-1349075366.47-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 17:09:33.41+10 520122
-2012-10-01-1349075589.46-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 17:13:13.056+10 300178
-2012-10-01-1349075593.31-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 17:13:17.006+10 309384
-2012-10-01-1349075864.02-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 17:17:49.695+10 473702
-2012-10-01-1349075869.91-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-01 17:17:55.901+10 497800
-2012-10-01-1349078506.84-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:01:52.925+10 510088
-2012-10-01-1349078513.38-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:01:56.78+10 286856
-2012-10-01-1349078518.1-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:05.428+10 611342
-2012-10-01-1349078526.62-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:10.687+10 339750
-2012-10-01-1349078531.31-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:14.877+10 295048
-2012-10-01-1349078535.37-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:17.995+10 221256
-2012-10-01-1349078538.39-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:26.916+10 679076
-2012-10-01-1349078547.06-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:36.617+10 741308
-2012-10-01-1349078556.81-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:45.014+10 625236
-2012-10-01-1349078565.3-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-01 18:02:51.314+10 441204
-2012-10-01-1349079229.09-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 18:13:57.063+10 668306
-2012-10-01-1349079385.99-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 18:16:29.179+10 267492
-2012-10-01-1349079389.9-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 18:16:33.035+10 260232
-2012-10-01-1349079393.22-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 18:16:43.471+10 802234
-2012-10-01-1349079403.78-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-01 18:16:51.646+10 595020
-2012-10-01-1349079980.36-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 18:26:22.848+10 209174
-2012-10-01-1349080027.94-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 18:27:10.458+10 208146
-2012-10-01-1349080418.08-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:33:41.616+10 296550
-2012-10-01-1349080422.82-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:33:53.849+10 920506
-2012-10-01-1349080434.17-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:34:21.629+10 2249698
-2012-10-01-1349080461.86-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:34:26.468+10 339968
-2012-10-01-1349080466.69-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:34:32.059+10 386706
-2012-10-01-1349080472.23-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:34:35.174+10 227228
-2012-10-01-1349080475.43-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:34:39.422+10 301370
-2012-10-01-1349080479.65-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:34:48.224+10 656006
-2012-10-01-1349080830.54-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:40:34.219+10 309048
-2012-10-01-1349080834.45-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:40:40.761+10 530568
-2012-10-01-1349080841.9-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:40:49.326+10 616834
-2012-10-01-1349080876.42-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:41:19.057+10 222326
-2012-10-01-1349080879.28-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:41:40.365+10 1759352
-2012-10-01-1349081159.01-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:01.591+10 218870
-2012-10-01-1349081161.69-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:04.512+10 239728
-2012-10-01-1349081164.61-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:10.355+10 483436
-2012-10-01-1349081170.59-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:17.107+10 548988
-2012-10-01-1349081177.2-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:19.98+10 235102
-2012-10-01-1349081180.08-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:22.246+10 182458
-2012-10-01-1349081182.34-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:30.531+10 623040
-2012-10-01-1349081190.93-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:35.016+10 321014
-2012-10-01-1349081195.99-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:41.879+10 452436
-2012-10-01-1349081201.98-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:45.871+10 264410
-2012-10-01-1349081206.18-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:46:53.692+10 624082
-2012-10-01-1349081793.98-demo.wav 40067 CanberraBlackMnt 2012-10-01 18:56:36.471+10 209346
-2012-10-01-1349081910.49-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:58:34.523+10 338934
-2012-10-01-1349081915.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:58:38.577+10 280712
-2012-10-01-1349081918.67-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:58:42.011+10 282726
-2012-10-01-1349081922.26-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:58:44.868+10 221320
-2012-10-01-1349081924.96-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:58:50.359+10 454048
-2012-10-01-1349081930.47-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:58:53.568+10 253008
-2012-10-01-1349081933.65-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:59:17.913+10 1954976
-2012-10-01-1349081958.07-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:59:23.437+10 432182
-2012-10-01-1349081963.52-demo.wav 44028 CanberraBlackMnt 2012-10-01 18:59:30.716+10 536282
-2012-10-01-1349082633.19-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:10:35.649+10 208430
-2012-10-01-1349082639.5-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:10:43.551+10 342152
-2012-10-01-1349082643.64-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:10:46.361+10 231560
-2012-10-01-1349082646.44-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:10:56.003+10 802896
-2012-10-01-1349082656.09-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:10:59.579+10 294256
-2012-10-01-1349082659.67-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:11:06.554+10 553266
-2012-10-01-1349082666.64-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:11:32.544+10 2099254
-2012-10-01-1349082692.63-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:11:44.133+10 962590
-2012-10-01-1349082704.22-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:11:54.925+10 842024
-2012-10-01-1349082715.02-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:12:00.767+10 449722
-2012-10-01-1349082720.85-demo.wav 44028 CanberraBlackMnt 2012-10-01 19:12:10.745+10 734004
-2012-10-01-1349082959.72-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:16:02.199+10 208934
-2012-10-01-1349082989.51-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 19:16:38.254+10 733238
-2012-10-01-1349082998.83-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 19:16:41.536+10 229512
-2012-10-01-1349083002.71-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 19:16:49.292+10 553096
-2012-10-01-1349083292.9-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:21:36.259+10 281698
-2012-10-01-1349083296.35-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:21:38.886+10 215148
-2012-10-01-1349083298.97-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:21:42.588+10 305260
-2012-10-01-1349083302.68-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:21:45.045+10 200840
-2012-10-01-1349083305.8-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:22:03.222+10 1458312
-2012-10-01-1349084903.43-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:48:28.198+10 400568
-2012-10-01-1349084908.51-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 19:48:30.796+10 190600
-2012-10-01-1349085634.34-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:00:36.837+10 208356
-2012-10-01-1349086091.45-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 20:08:14.096+10 222528
-2012-10-01-1349086095.34-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 20:08:23.917+10 716270
-2012-10-01-1349086312.57-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 20:11:55.42+10 235380
-2012-10-01-1349086316.28-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 20:11:58.973+10 227464
-2012-10-01-1349086319.76-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 20:12:02.338+10 215176
-2012-10-01-1349086386.84-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:13:09.698+10 239108
-2012-10-01-1349086391.28-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:13:18.629+10 615574
-2012-10-01-1349086398.81-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:13:21.389+10 213128
-2012-10-01-1349087037.51-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:24:01.028+10 290074
-2012-10-01-1349087042.84-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:24:07.872+10 424044
-2012-10-01-1349087048.09-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:24:12.498+10 366728
-2012-10-01-1349087052.66-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:24:15.289+10 217200
-2012-10-01-1349087055.44-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:24:19.851+10 372826
-2012-10-01-1349087060.07-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:24:22.292+10 180060
-2012-10-01-1349087136.27-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:25:38.901+10 220602
-2012-10-01-1349087139.14-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:25:43.367+10 356488
-2012-10-01-1349087145.29-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:25:49.972+10 393352
-2012-10-01-1349087150.94-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:26:11.952+10 1705544
-2012-10-01-1349087172.78-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:26:16.003+10 266376
-2012-10-01-1349087177.21-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:26:20.278+10 259908
-2012-10-01-1349087180.44-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:26:23.261+10 212548
-2012-10-01-1349087183.46-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:26:47.349+10 1939322
-2012-10-01-1349087207.59-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:26:50.97+10 272478
-2012-10-01-1349087417.66-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-01 20:30:28.117+10 877634
-2012-10-01-1349087430.02-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:30:39.919+10 825480
-2012-10-01-1349087441.03-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:30:45.039+10 331886
-2012-10-01-1349087445.17-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:30:48.949+10 317576
-2012-10-01-1349087449.13-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:30:51.517+10 200840
-2012-10-01-1349087451.64-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:30:58.582+10 525714
-2012-10-01-1349087459.4-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:31:13.624+10 1190026
-2012-10-01-1349087473.83-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:31:22.811+10 749674
-2012-10-01-1349087483.04-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:31:27.516+10 343276
-2012-10-01-1349087487.75-demo.wav 44028 CanberraBlackMnt 2012-10-01 20:31:31.027+10 218756
-2012-10-01-1349087693.19-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 20:35:01.109+10 662618
-2012-10-01-1349087956.97-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-01 20:39:25.435+10 707728
-2012-10-01-1349092642.58-demo.wav 10301 CanberraMtAinsli 2012-10-01 21:57:25.443+10 236208
-2012-10-01-1349099640.68-demo.wav 10301 CanberraMtAinsli 2012-10-01 23:54:03.503+10 236510
-2012-10-01-1349099645.09-demo.wav 10301 CanberraMtAinsli 2012-10-01 23:54:12.452+10 620680
-2012-10-01-1349099653.68-demo.wav 10301 CanberraMtAinsli 2012-10-01 23:54:29.373+10 1317182
-2012-10-01-1349099669.65-demo.wav 10301 CanberraMtAinsli 2012-10-01 23:54:34.254+10 325830
-2012-10-01-1349099674.79-demo.wav 10301 CanberraMtAinsli 2012-10-01 23:54:39.31+10 323736
-2012-10-02-1349119076.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 05:17:58.661+10 209034
-2012-10-02-1349121763.96-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:02:46.488+10 209710
-2012-10-02-1349121767.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:02:50.922+10 313480
-2012-10-02-1349121800.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:03:24.225+10 303266
-2012-10-02-1349121805.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:03:29.089+10 317846
-2012-10-02-1349121809.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:03:31.706+10 196744
-2012-10-02-1349121811.98-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:03:34.418+10 204936
-2012-10-02-1349121815.0-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:03:41.644+10 558214
-2012-10-02-1349121822.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:03:47.37+10 384198
-2012-10-02-1349122370.28-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:12:53.826+10 295796
-2012-10-02-1349122374.51-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:12:57.872+10 282760
-2012-10-02-1349122378.47-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:13:02.315+10 323720
-2012-10-02-1349122382.57-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:13:16.961+10 1146110
-2012-10-02-1349122397.16-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:13:20.183+10 200648
-2012-10-02-1349122400.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:13:46.568+10 2148368
-2012-10-02-1349122426.88-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:14:08.176+10 1734836
-2012-10-02-1349122449.06-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:14:12.912+10 323654
-2012-10-02-1349122453.19-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:14:29.52+10 1365422
-2012-10-02-1349122469.78-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:14:41.225+10 899006
-2012-10-02-1349122481.6-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:14:45.579+10 267488
-2012-10-02-1349122714.58-demo.wav 40067 CanberraBlackMnt 2012-10-02 06:18:37.08+10 210002
-2012-10-02-1349122868.6-demo.wav 44014 CanberraBlackMnt 2012-10-02 06:21:15.621+10 588260
-2012-10-02-1349122876.53-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:21:25.216+10 727662
-2012-10-02-1349122952.85-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:22:37.109+10 357372
-2012-10-02-1349122978.97-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:23:02.817+10 321672
-2012-10-02-1349123062.02-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:24:24.53+10 209874
-2012-10-02-1349123159.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:03.489+10 327654
-2012-10-02-1349123163.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:06.68+10 237704
-2012-10-02-1349123166.97-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:15.962+10 757548
-2012-10-02-1349123176.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:20.841+10 390552
-2012-10-02-1349123181.09-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:24.973+10 265356
-2012-10-02-1349123185.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:29.312+10 331418
-2012-10-02-1349123190.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:37.525+10 596770
-2012-10-02-1349123197.83-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:26:45.437+10 614118
-2012-10-02-1349123267.39-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:27:51.055+10 305552
-2012-10-02-1349123273.83-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:28:09.507+10 1319048
-2012-10-02-1349123672.64-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:34:35.913+10 272330
-2012-10-02-1349123740.31-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:35:44.289+10 330588
-2012-10-02-1349123745.43-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:35:50.761+10 447272
-2012-10-02-1349123751.02-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:35:53.68+10 223368
-2012-10-02-1349123755.97-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:00.619+10 387274
-2012-10-02-1349123761.3-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:36:09.769+10 708646
-2012-10-02-1349123770.04-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:36:15.557+10 462984
-2012-10-02-1349123775.72-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 06:36:19.6+10 327772
-2012-10-02-1349123780.26-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:26.836+10 555144
-2012-10-02-1349123788.69-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:35.019+10 531366
-2012-10-02-1349123795.4-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:44.788+10 756580
-2012-10-02-1349123807.57-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:51.278+10 310470
-2012-10-02-1349123811.69-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:54.277+10 217098
-2012-10-02-1349123814.55-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 06:36:56.892+10 188898
-2012-10-02-1349123942.77-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:39:06.674+10 325956
-2012-10-02-1349123948.45-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:39:13.118+10 390428
-2012-10-02-1349123953.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:39:18.796+10 452744
-2012-10-02-1349123959.11-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:39:22.48+10 282760
-2012-10-02-1349123964.23-demo.wav 44028 CanberraBlackMnt 2012-10-02 06:39:31.046+10 514784
-2012-10-02-1349124076.79-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:20.402+10 301390
-2012-10-02-1349124080.67-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:23.608+10 247944
-2012-10-02-1349124083.78-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:26.256+10 206984
-2012-10-02-1349124088.47-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:30.801+10 196744
-2012-10-02-1349124092.24-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:44.231+10 1006370
-2012-10-02-1349124105.34-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:51.855+10 546952
-2012-10-02-1349124112.15-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:41:55.955+10 309732
-2012-10-02-1349124116.58-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:42:04.853+10 672338
-2012-10-02-1349124125.13-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:42:12.271+10 590238
-2012-10-02-1349124132.81-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:42:17.151+10 305504
-2012-10-02-1349124414.97-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:01.545+10 552574
-2012-10-02-1349124421.84-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:05.82+10 336008
-2012-10-02-1349124427.73-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:10.636+10 245852
-2012-10-02-1349124430.97-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:17.415+10 519458
-2012-10-02-1349124437.62-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:26.154+10 703668
-2012-10-02-1349124446.44-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:29.855+10 256494
-2012-10-02-1349124450.72-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:47:33.348+10 195542
-2012-10-02-1349124925.99-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:55:31.344+10 449924
-2012-10-02-1349124932.01-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:55:43.952+10 1003656
-2012-10-02-1349124945.59-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 06:55:48.621+10 254088
-2012-10-02-1349124949.18-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 06:55:57.607+10 708744
-2012-10-02-1349124958.64-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 06:56:01.722+10 258184
-2012-10-02-1349124962.24-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 06:56:05.064+10 237704
-2012-10-02-1349124965.66-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 06:56:10.469+10 403522
-2012-10-02-1349124970.75-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 06:56:18.29+10 591022
-2012-10-02-1349124978.56-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 06:56:22.507+10 268250
-2012-10-02-1349125009.37-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:56:53.241+10 325768
-2012-10-02-1349125014.54-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:56:57.851+10 278664
-2012-10-02-1349125018.14-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:57:04.71+10 553022
-2012-10-02-1349125025.32-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:57:11.441+10 514162
-2012-10-02-1349125031.89-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:57:24.487+10 1055746
-2012-10-02-1349125044.82-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:57:30.5+10 451626
-2012-10-02-1349125155.87-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:59:20.781+10 411440
-2012-10-02-1349125162.89-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:59:27.64+10 399496
-2012-10-02-1349125168.2-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:59:31.756+10 299014
-2012-10-02-1349125173.46-demo.wav 44036 CanberraBlackMnt 2012-10-02 06:59:35.87+10 195702
-2012-10-02-1349125246.55-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:00:52.054+10 462218
-2012-10-02-1349125252.25-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:00:55.004+10 229512
-2012-10-02-1349125255.52-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:00:59.726+10 352392
-2012-10-02-1349125260.52-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:01:05.309+10 400132
-2012-10-02-1349125266.15-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:01:10.094+10 318742
-2012-10-02-1349125324.96-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:07.445+10 208582
-2012-10-02-1349125328.34-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:11.608+10 276616
-2012-10-02-1349125332.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:17.765+10 425912
-2012-10-02-1349125338.05-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:22.024+10 333960
-2012-10-02-1349125342.2-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:27.128+10 413682
-2012-10-02-1349125347.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:31.132+10 273706
-2012-10-02-1349125357.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:44.258+10 497128
-2012-10-02-1349125364.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:02:49.091+10 369926
-2012-10-02-1349125415.32-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:03:38.818+10 294102
-2012-10-02-1349125420.24-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:03:48.054+10 653918
-2012-10-02-1349125428.31-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:03:50.447+10 180360
-2012-10-02-1349125430.73-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:03:54.738+10 336008
-2012-10-02-1349125437.35-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:04:05.422+10 678024
-2012-10-02-1349125447.44-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:04:13.7+10 526472
-2012-10-02-1349125454.85-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:04:28.278+10 1123846
-2012-10-02-1349125470.39-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:04:32.681+10 192648
-2012-10-02-1349125537.83-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:05:41.818+10 333010
-2012-10-02-1349125543.5-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:05:49.905+10 535568
-2012-10-02-1349125551.56-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:05:54.8+10 272520
-2012-10-02-1349125555.05-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:05:58.118+10 258182
-2012-10-02-1349125558.52-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:06:02.043+10 264860
-2012-10-02-1349125562.36-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:06:07.721+10 434372
-2012-10-02-1349125652.85-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:07:36.603+10 314550
-2012-10-02-1349125658.07-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:07:44.498+10 535978
-2012-10-02-1349125664.69-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:08:01.978+10 1417414
-2012-10-02-1349125682.21-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:08:05.344+10 229180
-2012-10-02-1349125757.11-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:09:21.322+10 352450
-2012-10-02-1349125765.24-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:09:29.742+10 379016
-2012-10-02-1349125770.44-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:09:35.406+10 417902
-2012-10-02-1349125775.67-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:09:41.881+10 497614
-2012-10-02-1349125782.87-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:09:48.405+10 452680
-2012-10-02-1349125788.92-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:09:56.697+10 622842
-2012-10-02-1349125797.01-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:10:03.269+10 510310
-2012-10-02-1349125804.1-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:10:07.735+10 302678
-2012-10-02-1349125837.77-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:10:40.252+10 206984
-2012-10-02-1349125843.57-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 07:10:51.152+10 637064
-2012-10-02-1349125851.61-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:11:01.21+10 805000
-2012-10-02-1349125861.39-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:11:07.68+10 528520
-2012-10-02-1349125868.28-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:11:15.894+10 590224
-2012-10-02-1349125876.11-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:11:20.831+10 337296
-2012-10-02-1349125881.12-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:11:25.357+10 292968
-2012-10-02-1349125885.62-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:11:29.662+10 275976
-2012-10-02-1349125974.66-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:12:57.842+10 266666
-2012-10-02-1349125979.44-demo.wav 44036 CanberraMtAinsli 2012-10-02 07:13:02.149+10 227464
-2012-10-02-1349126084.21-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:14:46.83+10 220264
-2012-10-02-1349126087.16-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:14:51.089+10 329864
-2012-10-02-1349126093.28-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:15:05.778+10 1046014
-2012-10-02-1349126107.48-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:15:24.086+10 1334184
-2012-10-02-1349126125.0-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:15:29.334+10 362130
-2012-10-02-1349126129.85-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:15:31.983+10 180360
-2012-10-02-1349126132.32-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:15:38.889+10 551048
-2012-10-02-1349126139.03-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:15:41.34+10 192648
-2012-10-02-1349126308.14-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 07:18:31.781+10 304136
-2012-10-02-1349126312.93-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:18:38.24+10 444894
-2012-10-02-1349126318.63-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:18:45.919+10 612488
-2012-10-02-1349126326.48-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:18:52.058+10 469128
-2012-10-02-1349126332.32-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:01.571+10 748942
-2012-10-02-1349126341.84-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:04.688+10 183076
-2012-10-02-1349126345.47-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:09.356+10 290824
-2012-10-02-1349126349.58-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:12.767+10 206114
-2012-10-02-1349126353.06-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:26.303+10 1049238
-2012-10-02-1349126366.54-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:30.92+10 304752
-2012-10-02-1349126371.14-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:34.183+10 195450
-2012-10-02-1349126374.37-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:39.136+10 335120
-2012-10-02-1349126381.56-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 07:19:44.874+10 255774
-2012-10-02-1349126526.12-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:22:09.647+10 296886
-2012-10-02-1349126530.89-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:22:14.863+10 331878
-2012-10-02-1349126535.83-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:22:19.583+10 313362
-2012-10-02-1349126542.34-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:22:24.704+10 200840
-2012-10-02-1349126545.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:22:29.409+10 368720
-2012-10-02-1349126549.7-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:22:32.518+10 204812
-2012-10-02-1349126553.33-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:22:43.285+10 836734
-2012-10-02-1349126563.98-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:22:46.747+10 231560
-2012-10-02-1349126568.61-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:22:51.868+10 276616
-2012-10-02-1349127134.03-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 07:32:17.401+10 281438
-2012-10-02-1349127137.66-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 07:32:20.989+10 280712
-2012-10-02-1349127226.95-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:33:49.677+10 228198
-2012-10-02-1349127231.46-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:33:54.653+10 268424
-2012-10-02-1349127235.33-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:34:00.078+10 399496
-2012-10-02-1349127241.14-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:34:04.447+10 278664
-2012-10-02-1349127244.74-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:34:07.319+10 215720
-2012-10-02-1349127248.04-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:34:11.083+10 236974
-2012-10-02-1349127292.08-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:34:57.941+10 492108
-2012-10-02-1349127298.23-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:35:01.132+10 243848
-2012-10-02-1349127301.42-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:35:10.83+10 754836
-2012-10-02-1349127313.84-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:23.09+10 774300
-2012-10-02-1349127324.09-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:29.643+10 462482
-2012-10-02-1349127330.16-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:33.918+10 315528
-2012-10-02-1349127334.7-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:38.012+10 278654
-2012-10-02-1349127338.92-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:44.08+10 430984
-2012-10-02-1349127345.0-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:53.421+10 707126
-2012-10-02-1349127353.71-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:35:57.574+10 325768
-2012-10-02-1349127357.83-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:36:00.077+10 188474
-2012-10-02-1349127360.35-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:36:05.976+10 472118
-2012-10-02-1349127366.67-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:36:15.828+10 768136
-2012-10-02-1349127376.04-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:36:21.87+10 468004
-2012-10-02-1349127382.16-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:36:26.604+10 350414
-2012-10-02-1349127386.82-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 07:36:45.838+10 1594092
-2012-10-02-1349127502.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:38:25.55+10 260424
-2012-10-02-1349127507.19-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:38:35.152+10 669832
-2012-10-02-1349127515.46-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:38:39.81+10 364680
-2012-10-02-1349127520.11-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:38:42.729+10 221320
-2012-10-02-1349127522.94-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:38:50.688+10 622578
-2012-10-02-1349127535.09-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:00.562+10 415002
-2012-10-02-1349127543.15-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:16.575+10 1125972
-2012-10-02-1349127556.79-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:21.248+10 304012
-2012-10-02-1349127561.45-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:30.705+10 739366
-2012-10-02-1349127570.94-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:34.168+10 217930
-2012-10-02-1349127575.22-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:38.793+10 236042
-2012-10-02-1349127580.21-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:44.104+10 313106
-2012-10-02-1349127585.59-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:50.214+10 360088
-2012-10-02-1349127592.18-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:39:56.928+10 361756
-2012-10-02-1349127597.22-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:40:05.476+10 658698
-2012-10-02-1349127605.77-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:40:10.086+10 345056
-2012-10-02-1349127610.41-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:40:19.638+10 755040
-2012-10-02-1349127619.94-demo.wav 44028 CanberraMtAinsli 2012-10-02 07:40:23.611+10 278920
-2012-10-02-1349127624.39-demo.wav 40067 CanberraBlackMnt 2012-10-02 07:40:35.286+10 916120
-2012-10-02-1349127653.64-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:40:57.677+10 340104
-2012-10-02-1349127659.56-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 07:41:13.867+10 1204360
-2012-10-02-1349127674.64-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 07:41:18.184+10 297096
-2012-10-02-1349127679.58-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 07:41:23.41+10 321672
-2012-10-02-1349127684.11-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 07:41:28.736+10 354902
-2012-10-02-1349127689.09-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:41:36.787+10 647304
-2012-10-02-1349127697.46-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:41:43.164+10 479368
-2012-10-02-1349127703.49-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:41:48.17+10 333260
-2012-10-02-1349127708.41-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:41:52.118+10 247852
-2012-10-02-1349127712.57-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:41:57.523+10 415836
-2012-10-02-1349127718.7-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:01.878+10 263312
-2012-10-02-1349127722.16-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:10.109+10 611272
-2012-10-02-1349127730.41-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:13.981+10 238268
-2012-10-02-1349127734.24-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:17.792+10 242044
-2012-10-02-1349127738.28-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:22.812+10 380456
-2012-10-02-1349127743.77-demo.wav 44036 CanberraBlackMnt 2012-10-02 07:42:29.542+10 485512
-2012-10-02-1349127750.51-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:42.731+10 1028232
-2012-10-02-1349127763.87-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:46.734+10 237704
-2012-10-02-1349127767.53-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:54.053+10 533048
-2012-10-02-1349127774.3-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:42:59.162+10 353410
-2012-10-02-1349127779.6-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:43:04.575+10 415874
-2012-10-02-1349127785.16-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:43:09.533+10 340410
-2012-10-02-1349127837.39-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:44:00.401+10 248160
-2012-10-02-1349127841.81-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 07:44:05.393+10 301192
-2012-10-02-1349128013.49-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:46:55.988+10 207652
-2012-10-02-1349128128.48-demo.wav 40067 CanberraBlackMnt 2012-10-02 07:48:51.703+10 272076
-2012-10-02-1349128477.43-demo.wav 40067 CanberraBlackMnt 2012-10-02 07:54:39.992+10 213326
-2012-10-02-1349128537.29-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 07:55:39.766+10 208388
-2012-10-02-1349128612.24-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:56:56.508+10 357398
-2012-10-02-1349128617.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:57:02.983+10 428156
-2012-10-02-1349128623.26-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:57:09.013+10 483464
-2012-10-02-1349128629.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 07:57:11.98+10 209032
-2012-10-02-1349128984.03-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:03:08.385+10 365720
-2012-10-02-1349128990.43-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:03:14.733+10 362632
-2012-10-02-1349128995.9-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:03:21.495+10 471156
-2012-10-02-1349129001.77-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:03:26.393+10 388368
-2012-10-02-1349129006.66-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:03:46.296+10 1626118
-2012-10-02-1349129030.58-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:03:57.413+10 556468
-2012-10-02-1349129037.71-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:05.579+10 632988
-2012-10-02-1349129045.85-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:09.582+10 284134
-2012-10-02-1349129053.18-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:16.234+10 226552
-2012-10-02-1349129057.9-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:04:24.13+10 523088
-2012-10-02-1349129065.66-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:04:28.692+10 256136
-2012-10-02-1349129068.98-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:04:31.61+10 222584
-2012-10-02-1349129075.21-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:43.604+10 705290
-2012-10-02-1349129083.82-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:46.459+10 223368
-2012-10-02-1349129087.1-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:51.324+10 354440
-2012-10-02-1349129091.59-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:04:57.417+10 486288
-2012-10-02-1349129099.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:07.592+10 687284
-2012-10-02-1349129107.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:10.496+10 227464
-2012-10-02-1349129111.26-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:13.877+10 221320
-2012-10-02-1349129114.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:19.045+10 358536
-2012-10-02-1349129123.32-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:26.684+10 284592
-2012-10-02-1349129126.95-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:32.744+10 455558
-2012-10-02-1349129133.92-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:38.152+10 356430
-2012-10-02-1349129138.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:41.915+10 286856
-2012-10-02-1349129143.25-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:05:49.939+10 552518
-2012-10-02-1349129155.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:06:13.701+10 1519972
-2012-10-02-1349129173.95-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:06:16.556+10 219272
-2012-10-02-1349129177.01-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:06:20.8+10 319624
-2012-10-02-1349129184.21-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 08:06:33.727+10 792710
-2012-10-02-1349129194.77-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 08:06:52.893+10 1521354
-2012-10-02-1349129213.86-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 08:07:07.201+10 1119798
-2012-10-02-1349129227.92-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 08:07:26.139+10 1532040
-2012-10-02-1349129333.62-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:08:56.099+10 207936
-2012-10-02-1349129336.34-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:08:59.561+10 272520
-2012-10-02-1349129341.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:09:04.202+10 219272
-2012-10-02-1349129345.49-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:09:10.772+10 444534
-2012-10-02-1349129354.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:09:16.867+10 202012
-2012-10-02-1349129697.75-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 08:15:00.268+10 209464
-2012-10-02-1349129703.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:15:19.469+10 1327138
-2012-10-02-1349129720.41-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:15:26.487+10 510344
-2012-10-02-1349129726.7-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:15:33.346+10 553096
-2012-10-02-1349129733.59-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:15:35.85+10 190600
-2012-10-02-1349129736.45-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 08:15:43.817+10 618632
-2012-10-02-1349129743.99-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 08:15:50.542+10 551048
-2012-10-02-1349129750.74-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 08:15:56.251+10 462854
-2012-10-02-1349129756.42-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 08:16:01.541+10 400356
-2012-10-02-1349130137.28-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:22:20.127+10 239360
-2012-10-02-1349130141.25-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:22:23.733+10 209032
-2012-10-02-1349130144.03-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:22:28.166+10 348296
-2012-10-02-1349130148.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:22:41.133+10 1065424
-2012-10-02-1349130161.32-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:22:45.422+10 304058
-2012-10-02-1349130165.69-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:22:54.672+10 749360
-2012-10-02-1349130177.93-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:07.735+10 767234
-2012-10-02-1349130188.01-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:13.908+10 475232
-2012-10-02-1349130194.13-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:21.228+10 547808
-2012-10-02-1349130202.1-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:44.37+10 1872008
-2012-10-02-1349130224.59-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:47.034+10 206984
-2012-10-02-1349130227.35-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:51.58+10 354440
-2012-10-02-1349130231.81-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:23:59.506+10 647226
-2012-10-02-1349130243.02-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:24:08.963+10 498598
-2012-10-02-1349130251.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:24:17.575+10 551048
-2012-10-02-1349130258.04-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:24:22.695+10 391304
-2012-10-02-1349130265.81-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:24:35.167+10 788598
-2012-10-02-1349130276.61-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:24:40.973+10 368776
-2012-10-02-1349130281.27-demo.wav 44028 CanberraMtAinsli 2012-10-02 08:24:44.307+10 254082
-2012-10-02-1349130363.85-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:08.881+10 419192
-2012-10-02-1349130369.05-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:13.63+10 385160
-2012-10-02-1349130373.93-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:16.758+10 239752
-2012-10-02-1349130377.03-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:26.263+10 776160
-2012-10-02-1349130386.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:36.98+10 852244
-2012-10-02-1349130397.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:46.215+10 728628
-2012-10-02-1349130406.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:50.282+10 257416
-2012-10-02-1349130410.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:26:55.689+10 404908
-2012-10-02-1349131017.75-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 08:37:00.263+10 209882
-2012-10-02-1349131173.84-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:39:36.325+10 208984
-2012-10-02-1349131179.54-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:39:47.887+10 699332
-2012-10-02-1349131267.16-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:41:09.636+10 207684
-2012-10-02-1349131271.47-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:41:27.244+10 1327240
-2012-10-02-1349131287.52-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:41:30.052+10 213128
-2012-10-02-1349131550.59-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:45:53.118+10 210266
-2012-10-02-1349131553.39-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:45:56.053+10 223368
-2012-10-02-1349131557.98-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:46:00.233+10 190600
-2012-10-02-1349131561.76-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:46:13.74+10 996696
-2012-10-02-1349131576.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:46:19.181+10 243374
-2012-10-02-1349131580.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:46:24.332+10 316346
-2012-10-02-1349131585.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 08:46:29.292+10 249504
-2012-10-02-1349131591.44-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:46:37.922+10 544980
-2012-10-02-1349131604.21-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:46:59.867+10 1317000
-2012-10-02-1349131620.26-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:47:05.72+10 456840
-2012-10-02-1349131625.95-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:47:14.684+10 731994
-2012-10-02-1349131637.49-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:47:29.135+10 977878
-2012-10-02-1349131678.8-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:48:01.53+10 229464
-2012-10-02-1349131682.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:48:06.76+10 383112
-2012-10-02-1349131687.43-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:48:31.036+10 1932416
-2012-10-02-1349131711.94-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:48:37.019+10 427082
-2012-10-02-1349131958.84-demo.wav 44036 CanberraBlackMnt 2012-10-02 08:52:41.325+10 207964
-2012-10-02-1349131961.62-demo.wav 44036 CanberraBlackMnt 2012-10-02 08:52:44.547+10 245896
-2012-10-02-1349131965.75-demo.wav 44036 CanberraBlackMnt 2012-10-02 08:52:49.3+10 299144
-2012-10-02-1349131970.07-demo.wav 44036 CanberraBlackMnt 2012-10-02 08:52:53.255+10 260990
-2012-10-02-1349132025.52-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:53:49.22+10 310104
-2012-10-02-1349132030.38-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:53:53.638+10 274568
-2012-10-02-1349132034.82-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:54:16.429+10 1813832
-2012-10-02-1349132057.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:54:21.086+10 323720
-2012-10-02-1349132061.55-demo.wav 40067 CanberraMtAinsli 2012-10-02 08:54:25.745+10 354440
-2012-10-02-1349132067.56-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:54:33.113+10 465520
-2012-10-02-1349132073.38-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:54:37.707+10 364680
-2012-10-02-1349132078.68-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:54:48.298+10 776538
-2012-10-02-1349132088.59-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:54:52.158+10 251034
-2012-10-02-1349132360.26-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:59:22.734+10 207704
-2012-10-02-1349132363.24-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:59:25.62+10 200840
-2012-10-02-1349132365.93-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:59:30.804+10 409736
-2012-10-02-1349132371.09-demo.wav 40067 CanberraBlackMnt 2012-10-02 08:59:34.919+10 323708
-2012-10-02-1349132375.51-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 08:59:52.093+10 1385706
-2012-10-02-1349132393.07-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:00:02.109+10 757328
-2012-10-02-1349132403.25-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:00:05.984+10 229512
-2012-10-02-1349132448.34-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:00:52.029+10 307654
-2012-10-02-1349132453.82-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:01:07.58+10 1157256
-2012-10-02-1349132467.91-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:01:12.222+10 362632
-2012-10-02-1349132531.44-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 09:02:26.177+10 1240548
-2012-10-02-1349132547.1-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 09:02:31.228+10 344570
-2012-10-02-1349132551.72-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 09:02:38.434+10 563336
-2012-10-02-1349132559.74-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:02:54.048+10 1202312
-2012-10-02-1349132681.11-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:04:43.866+10 229442
-2012-10-02-1349132685.52-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:05:21.154+10 2968332
-2012-10-02-1349132758.52-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 09:06:03.01+10 376388
-2012-10-02-1349132763.43-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 09:06:05.729+10 192648
-2012-10-02-1349132994.72-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:09:57.244+10 208436
-2012-10-02-1349133000.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:10:04.964+10 354440
-2012-10-02-1349133074.34-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 09:11:18.1+10 315576
-2012-10-02-1349133079.1-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:11:24.655+10 467080
-2012-10-02-1349133086.81-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:11:35.893+10 764038
-2012-10-02-1349133096.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:11:41.109+10 387208
-2012-10-02-1349133101.27-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:11:43.83+10 215176
-2012-10-02-1349133104.25-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:11:52.122+10 607892
-2012-10-02-1349133113.04-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:12:13.589+10 1728096
-2012-10-02-1349133151.64-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:12:34.1+10 206984
-2012-10-02-1349133173.84-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:12:56.142+10 194696
-2012-10-02-1349133201.96-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:13:25.773+10 321384
-2012-10-02-1349133207.18-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:13:29.537+10 198792
-2012-10-02-1349133210.52-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:13:34.578+10 342152
-2012-10-02-1349133215.3-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:13:43.558+10 692036
-2012-10-02-1349133224.0-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:13:48.23+10 306892
-2012-10-02-1349133228.76-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:13:54.897+10 512184
-2012-10-02-1349133236.91-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:14:02.92+10 505990
-2012-10-02-1349133243.49-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:14:06.748+10 269158
-2012-10-02-1349133247.91-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:14:25.551+10 1483470
-2012-10-02-1349133288.17-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:14:51.134+10 247944
-2012-10-02-1349133292.65-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:14:59.157+10 545992
-2012-10-02-1349133345.64-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:15:48.708+10 255920
-2012-10-02-1349133350.41-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:15:58.277+10 661640
-2012-10-02-1349133358.48-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:16:06.061+10 637064
-2012-10-02-1349133366.4-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:16:11.818+10 453092
-2012-10-02-1349133372.11-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:16:21.771+10 757522
-2012-10-02-1349133429.3-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 09:17:11.817+10 209676
-2012-10-02-1349133435.56-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 09:17:26.005+10 878728
-2012-10-02-1349133446.59-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 09:17:30.447+10 323720
-2012-10-02-1349133451.34-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 09:17:35.109+10 317560
-2012-10-02-1349133455.86-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 09:17:40.139+10 339822
-2012-10-02-1349133537.16-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 09:18:59.675+10 209556
-2012-10-02-1349133543.05-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:19:08.286+10 440456
-2012-10-02-1349133549.34-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:19:16.453+10 593604
-2012-10-02-1349133556.66-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:19:22.513+10 493704
-2012-10-02-1349133562.7-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:19:28.528+10 485880
-2012-10-02-1349133568.75-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:19:39.324+10 888966
-2012-10-02-1349133579.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:19:45.018+10 397776
-2012-10-02-1349133585.3-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:19:49.9+10 328352
-2012-10-02-1349133592.88-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 09:20:00.004+10 598310
-2012-10-02-1349133600.25-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 09:20:17.449+10 1442208
-2012-10-02-1349133643.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:20:45.838+10 206984
-2012-10-02-1349133647.08-demo.wav i1045263 CanberraBlackMnt 2012-10-02 09:21:08.978+10 1840640
-2012-10-02-1349133669.1-demo.wav i1045263 CanberraBlackMnt 2012-10-02 09:21:11.817+10 227464
-2012-10-02-1349133673.14-demo.wav i1045263 CanberraBlackMnt 2012-10-02 09:21:26.667+10 1136776
-2012-10-02-1349133686.94-demo.wav i1045263 CanberraBlackMnt 2012-10-02 09:21:31.835+10 411784
-2012-10-02-1349133694.53-demo.wav i1045263 CanberraBlackMnt 2012-10-02 09:21:44.72+10 855076
-2012-10-02-1349133819.14-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:23:42.018+10 240038
-2012-10-02-1349133858.25-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:24:20.773+10 209976
-2012-10-02-1349133862.08-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:24:27.475+10 450074
-2012-10-02-1349133868.03-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:24:31.479+10 290952
-2012-10-02-1349133956.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:25:58.988+10 209610
-2012-10-02-1349133962.36-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:26:17.394+10 1265800
-2012-10-02-1349133978.39-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:26:25.113+10 562390
-2012-10-02-1349133985.7-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:26:29.644+10 331912
-2012-10-02-1349133990.47-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:26:43.758+10 1116144
-2012-10-02-1349134006.4-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:26:51.767+10 451046
-2012-10-02-1349134012.81-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:26:56.568+10 315528
-2012-10-02-1349134017.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:27:06.68+10 764040
-2012-10-02-1349134027.14-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:27:11.483+10 364680
-2012-10-02-1349134031.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:27:20.559+10 695816
-2012-10-02-1349134044.05-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:27:31.913+10 660726
-2012-10-02-1349134052.94-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:27:41.277+10 702600
-2012-10-02-1349134062.41-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:27:47.13+10 399496
-2012-10-02-1349134104.95-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:28:27.434+10 208792
-2012-10-02-1349134108.32-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:28:32.794+10 376968
-2012-10-02-1349134113.5-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:28:37.898+10 368776
-2012-10-02-1349134118.52-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:28:53.193+10 1235080
-2012-10-02-1349134134.28-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:28:58.854+10 380402
-2012-10-02-1349134139.54-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:29:03.4+10 317030
-2012-10-02-1349134144.84-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:29:14.452+10 807662
-2012-10-02-1349134156.97-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:29:22.57+10 451486
-2012-10-02-1349134163.41-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:29:27.022+10 290612
-2012-10-02-1349134167.64-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:29:38.727+10 934024
-2012-10-02-1349134179.78-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:29:46.176+10 538760
-2012-10-02-1349134188.47-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:29:52.38+10 327816
-2012-10-02-1349134192.64-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:29:57.261+10 389256
-2012-10-02-1349134197.45-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:30:06.096+10 722070
-2012-10-02-1349134206.95-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:30:10.499+10 285040
-2012-10-02-1349134211.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:30:17.181+10 500988
-2012-10-02-1349134218.14-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:30:23.721+10 467352
-2012-10-02-1349134224.35-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:30:27.644+10 274568
-2012-10-02-1349134229.17-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:30:33.434+10 356986
-2012-10-02-1349134233.73-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:30:42.031+10 697834
-2012-10-02-1349134284.31-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:31:26.801+10 209004
-2012-10-02-1349134305.76-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:31:48.285+10 210692
-2012-10-02-1349134309.39-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:31:58.906+10 796840
-2012-10-02-1349134319.19-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:32:03.373+10 352392
-2012-10-02-1349134323.67-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:32:06.754+10 254088
-2012-10-02-1349134348.94-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:32:31.41+10 209032
-2012-10-02-1349134352.37-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:32:37.185+10 401918
-2012-10-02-1349134476.15-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 09:34:41.177+10 419996
-2012-10-02-1349134508.66-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:35:13.937+10 442854
-2012-10-02-1349134514.53-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:35:27.428+10 1081380
-2012-10-02-1349134528.43-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:35:35.244+10 573576
-2012-10-02-1349134535.65-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:35:41.496+10 491576
-2012-10-02-1349134542.49-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:36:00.825+10 1540120
-2012-10-02-1349134627.86-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:37:11.131+10 273606
-2012-10-02-1349134632.21-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:37:20.25+10 672638
-2012-10-02-1349134640.55-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:37:28.883+10 702600
-2012-10-02-1349134649.17-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:37:38.73+10 758534
-2012-10-02-1349134659.08-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:37:42.936+10 264084
-2012-10-02-1349134663.38-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:37:47.991+10 387062
-2012-10-02-1349134766.89-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:39:30.408+10 297676
-2012-10-02-1349134771.93-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:39:39.292+10 618632
-2012-10-02-1349134780.25-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:39:44.38+10 348296
-2012-10-02-1349134784.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:39:53.774+10 772232
-2012-10-02-1349134794.99-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:40:02.225+10 607352
-2012-10-02-1349134803.91-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:40:06.597+10 225416
-2012-10-02-1349134861.18-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:41:05.113+10 328464
-2012-10-02-1349134866.07-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:41:09.418+10 280712
-2012-10-02-1349134869.69-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:41:12.736+10 256136
-2012-10-02-1349134874.23-demo.wav 44036 CanberraBlackMnt 2012-10-02 09:41:17.441+10 268364
-2012-10-02-1349134882.47-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:41:31.127+10 727834
-2012-10-02-1349134893.25-demo.wav 44036 CanberraMtAinsli 2012-10-02 09:41:36.566+10 277166
-2012-10-02-1349134897.46-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:41:45.162+10 645264
-2012-10-02-1349134906.12-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:41:48.943+10 237704
-2012-10-02-1349134909.48-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:41:55.721+10 524424
-2012-10-02-1349134916.01-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:41:58.323+10 194696
-2012-10-02-1349134918.59-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:42:02.836+10 355280
-2012-10-02-1349134923.33-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:42:10.699+10 620680
-2012-10-02-1349135137.03-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:45:40.074+10 257334
-2012-10-02-1349135165.15-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:46:08.417+10 273336
-2012-10-02-1349135187.07-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:46:29.964+10 243848
-2012-10-02-1349135190.18-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:46:33.839+10 309384
-2012-10-02-1349135194.47-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:46:38.354+10 323096
-2012-10-02-1349135199.75-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:46:44.972+10 434312
-2012-10-02-1349135205.26-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:46:50.443+10 426674
-2012-10-02-1349135211.51-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:46:56.903+10 417518
-2012-10-02-1349135217.56-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:47:10.875+10 1120340
-2012-10-02-1349135231.09-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:47:16.744+10 475272
-2012-10-02-1349135237.13-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:47:20.493+10 280712
-2012-10-02-1349135240.97-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:47:24.528+10 299144
-2012-10-02-1349135245.49-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:47:27.958+10 208808
-2012-10-02-1349135273.9-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:47:56.588+10 227464
-2012-10-02-1349135278.15-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:48:08.584+10 878728
-2012-10-02-1349135289.59-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:14.23+10 383408
-2012-10-02-1349135295.78-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:18.823+10 256136
-2012-10-02-1349135299.42-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:22.684+10 274568
-2012-10-02-1349135303.1-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:30.674+10 579166
-2012-10-02-1349135310.95-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:34.279+10 216908
-2012-10-02-1349135314.51-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:42.35+10 625592
-2012-10-02-1349135322.59-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:49.271+10 513332
-2012-10-02-1349135329.53-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:48:53.801+10 298526
-2012-10-02-1349135334.84-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:49:02.605+10 650860
-2012-10-02-1349135343.04-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:49:10.978+10 666090
-2012-10-02-1349135351.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:49:15.046+10 290164
-2012-10-02-1349135355.33-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:49:18.62+10 238558
-2012-10-02-1349135361.9-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:49:26.513+10 338378
-2012-10-02-1349135367.42-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 09:49:49.274+10 1837058
-2012-10-02-1349135389.49-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 09:49:58.885+10 788616
-2012-10-02-1349135645.18-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:54:09.265+10 343316
-2012-10-02-1349135650.52-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:54:15.054+10 377884
-2012-10-02-1349135655.4-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:54:23.65+10 692360
-2012-10-02-1349135664.86-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:54:29.377+10 376968
-2012-10-02-1349135670.16-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 09:54:51.082+10 1757320
-2012-10-02-1349135691.3-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 09:54:58.666+10 616582
-2012-10-02-1349135698.86-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 09:55:03.187+10 362632
-2012-10-02-1349135704.13-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:55:23.417+10 1620230
-2012-10-02-1349135751.47-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 09:55:55.969+10 378622
-2012-10-02-1349135757.67-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 09:56:14.16+10 1382478
-2012-10-02-1349135775.21-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:56:22.66+10 623920
-2012-10-02-1349135783.16-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:56:26.552+10 284808
-2012-10-02-1349135788.05-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:56:37.86+10 825410
-2012-10-02-1349135868.19-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:57:50.695+10 209024
-2012-10-02-1349135895.75-demo.wav 44028 CanberraMtAinsli 2012-10-02 09:58:19.565+10 321664
-2012-10-02-1349135900.69-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:58:38.607+10 1505678
-2012-10-02-1349135919.62-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:58:45.163+10 464892
-2012-10-02-1349135926.0-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:58:48.513+10 211080
-2012-10-02-1349135930.09-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:59:02.116+10 991100
-2012-10-02-1349135942.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 09:59:06.041+10 304324
-2012-10-02-1349135949.91-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:59:24.941+10 1261828
-2012-10-02-1349135966.06-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:59:31.894+10 489608
-2012-10-02-1349135973.25-demo.wav 40067 CanberraMtAinsli 2012-10-02 09:59:35.881+10 221320
-2012-10-02-1349135976.93-demo.wav 40067 CanberraBlackMnt 2012-10-02 09:59:48.146+10 944050
-2012-10-02-1349135988.88-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:00:07.284+10 1542704
-2012-10-02-1349136007.49-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:00:14.907+10 624776
-2012-10-02-1349136015.65-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:00:18.592+10 247920
-2012-10-02-1349136131.51-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:02:14.102+10 219224
-2012-10-02-1349136136.05-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:02:18.983+10 245896
-2012-10-02-1349136139.75-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:02:29.158+10 791998
-2012-10-02-1349136149.56-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:02:44.756+10 1278088
-2012-10-02-1349136167.52-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:02:52.204+10 395400
-2012-10-02-1349136225.08-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:03:50.003+10 413006
-2012-10-02-1349136234.13-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:03:58.519+10 368776
-2012-10-02-1349136239.96-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:04:04.804+10 405064
-2012-10-02-1349136245.73-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:04:10.1+10 357278
-2012-10-02-1349136250.62-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:04:13.194+10 217224
-2012-10-02-1349136253.48-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:04:16.574+10 199886
-2012-10-02-1349136256.89-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:04:24.312+10 577958
-2012-10-02-1349136264.78-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:04:37.86+10 1099232
-2012-10-02-1349136278.13-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:04:42.253+10 316072
-2012-10-02-1349136282.53-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:04:46.368+10 262006
-2012-10-02-1349136313.81-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:05:19.239+10 455266
-2012-10-02-1349136319.68-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:05:22.987+10 278664
-2012-10-02-1349136323.96-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:05:30.754+10 569480
-2012-10-02-1349136330.96-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:05:36.416+10 403980
-2012-10-02-1349136336.88-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:05:47.755+10 913390
-2012-10-02-1349136399.73-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:06:42.251+10 209350
-2012-10-02-1349136403.44-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:06:52.217+10 733114
-2012-10-02-1349136414.29-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:06:57.194+10 243848
-2012-10-02-1349136417.72-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:07:03.702+10 503944
-2012-10-02-1349136424.55-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:07:07.354+10 231350
-2012-10-02-1349136428.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:07:17.641+10 791896
-2012-10-02-1349136438.48-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:07:25.663+10 604296
-2012-10-02-1349136445.96-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:07:30.209+10 356488
-2012-10-02-1349136450.53-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:07:35.696+10 434312
-2012-10-02-1349136456.29-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:07:42.108+10 489608
-2012-10-02-1349136462.39-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:07:45.25+10 237704
-2012-10-02-1349136465.84-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:07:49.221+10 280712
-2012-10-02-1349136469.45-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:07:55.267+10 441126
-2012-10-02-1349136475.56-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:07:58.601+10 192502
-2012-10-02-1349136592.73-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:09:55.292+10 213154
-2012-10-02-1349136598.19-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:10:07.361+10 766786
-2012-10-02-1349136610.07-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:10:20.264+10 858248
-2012-10-02-1349136620.54-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:10:24.921+10 368776
-2012-10-02-1349136625.8-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:10:28.766+10 249992
-2012-10-02-1349136629.48-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:10:43.676+10 1194120
-2012-10-02-1349136644.92-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:10:55.032+10 852104
-2012-10-02-1349136655.51-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:11:00.629+10 430216
-2012-10-02-1349136661.29-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:11:06.771+10 460936
-2012-10-02-1349136762.39-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:12:45.073+10 225092
-2012-10-02-1349136766.09-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:12:48.855+10 233608
-2012-10-02-1349136769.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:13:01.787+10 994608
-2012-10-02-1349136782.0-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:13:07.099+10 409254
-2012-10-02-1349136788.26-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:13:16.285+10 675532
-2012-10-02-1349136796.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:13:24.293+10 647304
-2012-10-02-1349136805.08-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:13:30.321+10 440456
-2012-10-02-1349137002.73-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:16:50.43+10 646514
-2012-10-02-1349137011.76-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:17:06.918+10 1271714
-2012-10-02-1349137027.11-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:17:11.276+10 350344
-2012-10-02-1349137052.16-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:17:35.646+10 293000
-2012-10-02-1349137073.03-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:17:55.497+10 206984
-2012-10-02-1349137104.55-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:18:27.044+10 209250
-2012-10-02-1349137128.42-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:18:51.032+10 217234
-2012-10-02-1349137131.43-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:18:55.42+10 336008
-2012-10-02-1349137165.97-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:19:28.532+10 214688
-2012-10-02-1349137168.88-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:19:31.706+10 237704
-2012-10-02-1349137172.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:19:45.374+10 1103990
-2012-10-02-1349137185.64-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:19:59.026+10 1120558
-2012-10-02-1349137199.25-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:20:09.728+10 875936
-2012-10-02-1349137210.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:20:15.071+10 421156
-2012-10-02-1349137218.4-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:20:30.717+10 973482
-2012-10-02-1349137233.48-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:20:46.706+10 1111474
-2012-10-02-1349137311.15-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:21:57.116+10 501186
-2012-10-02-1349137318.26-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:10.569+10 1034724
-2012-10-02-1349137331.26-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:14.955+10 311432
-2012-10-02-1349137335.38-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:22.275+10 579720
-2012-10-02-1349137343.13-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:27.077+10 331574
-2012-10-02-1349137347.49-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:35.711+10 633938
-2012-10-02-1349137355.88-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:46.029+10 788654
-2012-10-02-1349137366.24-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:22:50.558+10 302536
-2012-10-02-1349137424.22-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:23:47.717+10 293198
-2012-10-02-1349137469.98-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:24:33.552+10 298318
-2012-10-02-1349137474.86-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:24:43.392+10 716936
-2012-10-02-1349137484.52-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:24:48.083+10 289866
-2012-10-02-1349137489.39-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:24:52.66+10 274564
-2012-10-02-1349137493.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:24:57.253+10 338056
-2012-10-02-1349137497.57-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:25:06.855+10 729560
-2012-10-02-1349137513.09-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:25:16.393+10 220798
-2012-10-02-1349137516.9-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:25:30.89+10 1175932
-2012-10-02-1349137531.12-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:25:34.113+10 252040
-2012-10-02-1349137534.39-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:25:36.569+10 184456
-2012-10-02-1349137537.94-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:25:40.175+10 188552
-2012-10-02-1349137580.62-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:26:23.713+10 259456
-2012-10-02-1349137584.97-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:26:27.668+10 225416
-2012-10-02-1349137589.87-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:26:33.156+10 273450
-2012-10-02-1349137657.04-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:27:39.523+10 208396
-2012-10-02-1349137783.96-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:29:49.524+10 468724
-2012-10-02-1349137790.51-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:29:57.108+10 553096
-2012-10-02-1349137863.06-demo.wav 40067 CanberraBlackMnt 2012-10-02 10:31:05.588+10 209268
-2012-10-02-1349137869.02-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:31:19.751+10 903304
-2012-10-02-1349137880.68-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:31:22.813+10 180360
-2012-10-02-1349137883.41-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:29.129+10 479368
-2012-10-02-1349137889.41-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:33.836+10 374920
-2012-10-02-1349137894.14-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:36.739+10 215176
-2012-10-02-1349137897.77-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:41.923+10 336802
-2012-10-02-1349137902.64-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:46.405+10 286266
-2012-10-02-1349137907.77-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:50.871+10 243086
-2012-10-02-1349137911.83-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:31:59.482+10 642390
-2012-10-02-1349137919.89-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:32:02.514+10 221320
-2012-10-02-1349137923.93-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:32:09.164+10 440452
-2012-10-02-1349137929.86-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:32:13.456+10 290308
-2012-10-02-1349137933.61-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:32:17.108+10 287778
-2012-10-02-1349137937.93-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:32:24.365+10 533974
-2012-10-02-1349137945.37-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:32:29.486+10 346018
-2012-10-02-1349137978.36-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:00.516+10 180360
-2012-10-02-1349137980.81-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:03.945+10 264328
-2012-10-02-1349137984.69-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:07.884+10 268424
-2012-10-02-1349137988.2-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:13.37+10 434312
-2012-10-02-1349137993.85-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:20.154+10 527590
-2012-10-02-1349138000.44-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:26.533+10 454706
-2012-10-02-1349138006.89-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:33:30.011+10 204010
-2012-10-02-1349138010.51-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 10:33:36.592+10 511784
-2012-10-02-1349138017.89-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:33:53.671+10 1325192
-2012-10-02-1349138034.05-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:33:56.621+10 215176
-2012-10-02-1349138037.49-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:34:05.942+10 710762
-2012-10-02-1349138046.92-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:34:12.321+10 452108
-2012-10-02-1349138054.05-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:34:17.95+10 327816
-2012-10-02-1349138058.58-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:34:21.842+10 274568
-2012-10-02-1349138062.03-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:34:25.192+10 242072
-2012-10-02-1349138066.08-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:34:30.615+10 333072
-2012-10-02-1349138071.1-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:34:36.267+10 432498
-2012-10-02-1349138076.84-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:34:46.085+10 776218
-2012-10-02-1349138124.77-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:35:29.304+10 380518
-2012-10-02-1349138129.6-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:35:31.762+10 182408
-2012-10-02-1349138132.06-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:35:39.529+10 628872
-2012-10-02-1349138140.47-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 10:36:01.314+10 1751350
-2012-10-02-1349138162.29-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:36:09.432+10 597378
-2012-10-02-1349138170.5-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 10:36:16.567+10 507510
-2012-10-02-1349138177.59-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:36:28.314+10 901256
-2012-10-02-1349138191.38-demo.wav 40032 ESA 1 CanberraBlackMnt 2012-10-02 10:36:37.102+10 481416
-2012-10-02-1349138245.07-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:37:29.363+10 359464
-2012-10-02-1349138251.43-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:37:34.915+10 288388
-2012-10-02-1349138256.12-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:37:52.952+10 1415634
-2012-10-02-1349138274.1-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:38:01.547+10 628872
-2012-10-02-1349138306.97-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:38:30.815+10 323720
-2012-10-02-1349138312.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:38:42.76+10 868488
-2012-10-02-1349138323.33-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:38:50.4+10 594056
-2012-10-02-1349138330.59-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:39:01.213+10 884618
-2012-10-02-1349138342.07-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:39:10.83+10 672000
-2012-10-02-1349138354.61-demo.wav 40032 ESA 1 CanberraMtAinsli 2012-10-02 10:39:25.024+10 872690
-2012-10-02-1349138365.95-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:39:36.411+10 878566
-2012-10-02-1349138377.39-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:39:47.894+10 883248
-2012-10-02-1349138389.95-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:39:52.169+10 186504
-2012-10-02-1349138437.04-demo.wav 44028 CanberraMtAinsli 2012-10-02 10:40:51.13+10 1185536
-2012-10-02-1349138452.06-demo.wav 44028 CanberraMtAinsli 2012-10-02 10:41:06.568+10 1218628
-2012-10-02-1349138467.04-demo.wav 44028 CanberraMtAinsli 2012-10-02 10:41:11.752+10 395400
-2012-10-02-1349138471.94-demo.wav 44028 CanberraMtAinsli 2012-10-02 10:41:15.436+10 295024
-2012-10-02-1349138523.49-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:42:08.576+10 427770
-2012-10-02-1349138529.17-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 10:42:14.805+10 473224
-2012-10-02-1349138535.11-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 10:42:18.852+10 313480
-2012-10-02-1349138539.08-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 10:42:29.595+10 884872
-2012-10-02-1349138587.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:43:12.131+10 380606
-2012-10-02-1349138592.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:43:17.044+10 389256
-2012-10-02-1349138598.07-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:43:32.242+10 1189576
-2012-10-02-1349138612.76-demo.wav 44028 CanberraBlackMnt 2012-10-02 10:43:35.848+10 258184
-2012-10-02-1349138768.46-demo.wav 40032 ESA 1 CanberraBlackMnt 2012-10-02 10:46:19.292+10 908032
-2012-10-02-1349138856.31-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:47:42.323+10 500128
-2012-10-02-1349138862.81-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 10:47:46.061+10 274568
-2012-10-02-1349138938.98-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:49:01.497+10 209674
-2012-10-02-1349138945.22-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:49:22.311+10 1437832
-2012-10-02-1349138966.01-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:49:30.684+10 395400
-2012-10-02-1349138971.81-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:49:35.342+10 297052
-2012-10-02-1349138975.76-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:49:38.276+10 213128
-2012-10-02-1349138978.95-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:49:41.195+10 190600
-2012-10-02-1349138981.52-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:49:44.162+10 207404
-2012-10-02-1349139049.53-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 10:50:52.986+10 289836
-2012-10-02-1349139053.6-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:51:04.978+10 956552
-2012-10-02-1349139065.26-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:51:09.933+10 393352
-2012-10-02-1349139070.22-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:51:19.577+10 727052
-2012-10-02-1349139079.8-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:51:26.537+10 510258
-2012-10-02-1349139086.84-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 10:51:30.295+10 226994
-2012-10-02-1349139133.07-demo.wav 40066 CanberraMtAinsli 2012-10-02 10:52:15.591+10 209182
-2012-10-02-1349139137.18-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:52:28.78+10 977032
-2012-10-02-1349139151.4-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:52:36.468+10 422024
-2012-10-02-1349139157.69-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:52:41.333+10 305288
-2012-10-02-1349139162.31-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:52:44.636+10 194696
-2012-10-02-1349139165.9-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:52:53.865+10 666896
-2012-10-02-1349139174.81-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:53:13.426+10 1561936
-2012-10-02-1349139193.72-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 10:53:16.077+10 198792
-2012-10-02-1349139196.61-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:53:22.888+10 528520
-2012-10-02-1349139205.93-demo.wav 44027 CanberraMtAinsli 2012-10-02 10:53:44.722+10 1581192
-2012-10-02-1349139228.21-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:53:55.105+10 577672
-2012-10-02-1349139237.04-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:53:59.331+10 192648
-2012-10-02-1349139240.22-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:54:02.426+10 186504
-2012-10-02-1349139243.22-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:54:06.605+10 286854
-2012-10-02-1349139247.14-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:54:10.577+10 285102
-2012-10-02-1349139250.88-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:54:14.405+10 255546
-2012-10-02-1349139255.12-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:54:19.669+10 382198
-2012-10-02-1349139260.89-demo.wav 44036 CanberraBlackMnt 2012-10-02 10:54:23.466+10 217224
-2012-10-02-1349139269.99-demo.wav 44027 CanberraMtAinsli 2012-10-02 10:54:37.216+10 603338
-2012-10-02-1349139280.19-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:54:46.05+10 491656
-2012-10-02-1349139287.77-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:54:56.511+10 735330
-2012-10-02-1349139297.09-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:55:02.349+10 405250
-2012-10-02-1349139302.8-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:55:11.377+10 707398
-2012-10-02-1349139311.74-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:55:16.114+10 320602
-2012-10-02-1349139316.85-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:55:21.904+10 421146
-2012-10-02-1349139322.69-demo.wav 44027 CanberraBlackMnt 2012-10-02 10:55:26.322+10 274948
-2012-10-02-1349139390.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 10:56:35.459+10 438492
-2012-10-02-1349139491.39-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 10:58:15.368+10 329940
-2012-10-02-1349139498.34-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 10:58:22.938+10 387208
-2012-10-02-1349139658.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:01:02.827+10 348702
-2012-10-02-1349139664.93-demo.wav 44028 CanberraMtAinsli 2012-10-02 11:01:12.747+10 657544
-2012-10-02-1349139675.7-demo.wav 44028 CanberraMtAinsli 2012-10-02 11:01:30.753+10 1265800
-2012-10-02-1349139692.5-demo.wav 44028 CanberraMtAinsli 2012-10-02 11:01:34.757+10 190600
-2012-10-02-1349139695.78-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:01:41.616+10 493704
-2012-10-02-1349139702.39-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:01:46.354+10 333960
-2012-10-02-1349139707.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:01:58.06+10 878728
-2012-10-02-1349139739.81-demo.wav 44028 CanberraMtAinsli 2012-10-02 11:02:23.77+10 333960
-2012-10-02-1349139744.18-demo.wav 44028 CanberraMtAinsli 2012-10-02 11:02:26.864+10 225416
-2012-10-02-1349139747.19-demo.wav 44028 CanberraMtAinsli 2012-10-02 11:02:30.133+10 245896
-2012-10-02-1349139752.47-demo.wav 44036 CanberraBlackMnt 2012-10-02 11:02:38.985+10 544904
-2012-10-02-1349139761.87-demo.wav 44036 CanberraBlackMnt 2012-10-02 11:02:44.072+10 184456
-2012-10-02-1349139765.33-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:03:04.247+10 1591432
-2012-10-02-1349139785.41-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:11.056+10 470430
-2012-10-02-1349139791.6-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:19.494+10 665736
-2012-10-02-1349139799.83-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:22.796+10 249736
-2012-10-02-1349139803.62-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:28.346+10 356052
-2012-10-02-1349139808.58-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:34.678+10 454882
-2012-10-02-1349139815.07-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:38.284+10 214296
-2012-10-02-1349139818.59-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:49.225+10 836684
-2012-10-02-1349139830.55-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:03:56.929+10 497228
-2012-10-02-1349139837.53-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:04.824+10 611354
-2012-10-02-1349139846.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:15.046+10 708678
-2012-10-02-1349139856.48-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:26.609+10 840724
-2012-10-02-1349139867.01-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:34.87+10 646260
-2012-10-02-1349139877.37-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:41.14+10 304732
-2012-10-02-1349139882.12-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:50.279+10 685296
-2012-10-02-1349139891.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:04:55.461+10 340104
-2012-10-02-1349139895.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:00.534+10 409018
-2012-10-02-1349139900.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:03.389+10 212386
-2012-10-02-1349139903.69-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:09.259+10 452342
-2012-10-02-1349139909.91-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:18.095+10 684606
-2012-10-02-1349139918.3-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:21.796+10 295048
-2012-10-02-1349139922.06-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:24.618+10 215176
-2012-10-02-1349139927.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:05:48.301+10 1755422
-2012-10-02-1349139978.9-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:22.846+10 331902
-2012-10-02-1349139983.25-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:35.876+10 1060978
-2012-10-02-1349139996.16-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:39.338+10 253862
-2012-10-02-1349139999.78-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:46.595+10 562414
-2012-10-02-1349140007.14-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:50.711+10 274930
-2012-10-02-1349140011.24-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:56.245+10 417302
-2012-10-02-1349140016.46-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:06:59.451+10 218402
-2012-10-02-1349140019.74-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:07:09.085+10 762766
-2012-10-02-1349140029.35-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:07:17.745+10 698170
-2012-10-02-1349140038.02-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:07:23.933+10 489530
-2012-10-02-1349140044.2-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:07:28.08+10 314514
-2012-10-02-1349140048.42-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:07:32.354+10 299458
-2012-10-02-1349140053.02-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:07:37.284+10 319610
-2012-10-02-1349140058.05-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:07:48.049+10 839318
-2012-10-02-1349140068.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:07:53.201+10 387178
-2012-10-02-1349140073.65-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:07:57.523+10 325768
-2012-10-02-1349140077.72-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:08:02.419+10 395396
-2012-10-02-1349140085.5-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:17.019+10 967882
-2012-10-02-1349140097.83-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:23.776+10 501896
-2012-10-02-1349140106.67-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:30.34+10 307282
-2012-10-02-1349140110.73-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:40.303+10 803678
-2012-10-02-1349140120.64-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:45.356+10 393068
-2012-10-02-1349140125.62-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:49.492+10 280872
-2012-10-02-1349140130.0-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:08:57.498+10 585350
-2012-10-02-1349140137.94-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 11:09:06.888+10 751396
-2012-10-02-1349140149.54-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 11:09:13.96+10 370824
-2012-10-02-1349140154.66-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 11:09:17.707+10 252040
-2012-10-02-1349140250.82-demo.wav i1045311 CanberraBlackMnt 2012-10-02 11:10:53.302+10 208648
-2012-10-02-1349140277.01-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:11:20.415+10 285982
-2012-10-02-1349140303.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:11:46.063+10 206984
-2012-10-02-1349140348.06-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:12:30.67+10 218098
-2012-10-02-1349140414.62-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:13:37.316+10 224122
-2012-10-02-1349140417.94-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:13:40.236+10 194696
-2012-10-02-1349140421.35-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:13:58.416+10 1433736
-2012-10-02-1349140441.31-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:19.229+10 1504860
-2012-10-02-1349140459.5-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:22.548+10 256136
-2012-10-02-1349140463.23-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:25.881+10 223368
-2012-10-02-1349140466.08-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:31.638+10 467080
-2012-10-02-1349140472.08-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:35.053+10 249982
-2012-10-02-1349140475.35-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:38.929+10 241072
-2012-10-02-1349140479.17-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:41.832+10 196624
-2012-10-02-1349140482.74-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:14:46.409+10 308388
-2012-10-02-1349140487.09-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:15:09.646+10 1840808
-2012-10-02-1349140608.65-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:16:53.864+10 438034
-2012-10-02-1349140614.47-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:16:56.897+10 204936
-2012-10-02-1349140617.49-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:04.137+10 559240
-2012-10-02-1349140624.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:11.523+10 598152
-2012-10-02-1349140631.83-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:16.386+10 383082
-2012-10-02-1349140637.69-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:23.405+10 473950
-2012-10-02-1349140643.7-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:26.707+10 205972
-2012-10-02-1349140648.92-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:35.145+10 490374
-2012-10-02-1349140655.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:44.969+10 792516
-2012-10-02-1349140665.23-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:49.021+10 275364
-2012-10-02-1349140669.32-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:54.858+10 406822
-2012-10-02-1349140675.08-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:17:59.819+10 392976
-2012-10-02-1349140680.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:18:03.646+10 259012
-2012-10-02-1349140684.46-demo.wav 44036 CanberraBlackMnt 2012-10-02 11:18:25.956+10 1807088
-2012-10-02-1349140706.23-demo.wav 44036 CanberraBlackMnt 2012-10-02 11:18:28.446+10 186504
-2012-10-02-1349140709.87-demo.wav 44036 CanberraBlackMnt 2012-10-02 11:18:32.513+10 223368
-2012-10-02-1349140713.67-demo.wav 44036 CanberraBlackMnt 2012-10-02 11:18:37.123+10 290952
-2012-10-02-1349140894.23-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:21:37.282+10 254010
-2012-10-02-1349140898.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:21:40.887+10 180360
-2012-10-02-1349140901.02-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:21:47.459+10 542856
-2012-10-02-1349140908.38-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:21:52.292+10 321542
-2012-10-02-1349140912.65-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:21:55.976+10 218914
-2012-10-02-1349141079.45-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:24:43.218+10 316322
-2012-10-02-1349141259.11-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:27:41.604+10 209760
-2012-10-02-1349141345.41-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:29:08.024+10 217424
-2012-10-02-1349141349.01-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:29:12.603+10 299106
-2012-10-02-1349141452.49-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:30:56.788+10 360792
-2012-10-02-1349141479.05-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:31:22.626+10 299144
-2012-10-02-1349141505.08-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:31:47.557+10 209032
-2012-10-02-1349141507.83-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:31:54.351+10 546952
-2012-10-02-1349141515.2-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:00.045+10 405640
-2012-10-02-1349141520.99-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:05.708+10 379146
-2012-10-02-1349141528.43-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:12.088+10 306470
-2012-10-02-1349141532.38-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:18.706+10 522002
-2012-10-02-1349141538.9-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:21.387+10 195966
-2012-10-02-1349141541.93-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:25.582+10 289732
-2012-10-02-1349141546.05-demo.wav i1045214 CanberraBlackMnt 2012-10-02 11:32:29.855+10 314192
-2012-10-02-1349141551.0-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:32:49.169+10 1529326
-2012-10-02-1349141593.26-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:33:17.13+10 323720
-2012-10-02-1349141627.5-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:33:51.15+10 307238
-2012-10-02-1349141755.63-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:35:59.499+10 325710
-2012-10-02-1349141759.88-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:36:02.194+10 194696
-2012-10-02-1349141763.04-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:36:06.74+10 311432
-2012-10-02-1349141766.93-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:36:11.191+10 358536
-2012-10-02-1349141771.45-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:36:16.438+10 397440
-2012-10-02-1349141776.81-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:36:22.722+10 435398
-2012-10-02-1349141785.63-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:36:45.832+10 1694570
-2012-10-02-1349141806.1-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:36:49.978+10 325768
-2012-10-02-1349141810.57-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 11:36:59.777+10 774280
-2012-10-02-1349141821.29-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 11:37:18.157+10 1414388
-2012-10-02-1349141964.08-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 11:39:26.576+10 208676
-2012-10-02-1349142037.46-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:40:39.996+10 209942
-2012-10-02-1349142041.39-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:40:51.469+10 847238
-2012-10-02-1349142052.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:40:56.143+10 329864
-2012-10-02-1349142056.91-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:41:04.231+10 612480
-2012-10-02-1349142064.34-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:41:09.306+10 417338
-2012-10-02-1349142069.44-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:41:14.174+10 363016
-2012-10-02-1349142108.28-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:41:51.959+10 307668
-2012-10-02-1349142113.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:42:06.32+10 1093808
-2012-10-02-1349142126.6-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:42:08.808+10 186504
-2012-10-02-1349142128.94-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:42:12.541+10 303240
-2012-10-02-1349142133.07-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:42:17.695+10 387208
-2012-10-02-1349142141.15-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:42:23.662+10 211080
-2012-10-02-1349142201.88-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:43:25.07+10 268938
-2012-10-02-1349142323.13-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:45:27.737+10 383316
-2012-10-02-1349142355.21-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:45:59.5+10 358622
-2012-10-02-1349142360.87-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:46:08.098+10 602826
-2012-10-02-1349142368.47-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:46:13.395+10 413832
-2012-10-02-1349142373.95-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:46:17.384+10 278304
-2012-10-02-1349142459.94-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:47:44.387+10 371664
-2012-10-02-1349142466.01-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:47:50.243+10 356488
-2012-10-02-1349142470.75-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:47:54.79+10 340104
-2012-10-02-1349142474.92-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:47:58.81+10 325768
-2012-10-02-1349142479.06-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:48:01.666+10 219272
-2012-10-02-1349142481.98-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:48:05.066+10 258080
-2012-10-02-1349142521.54-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:48:44.213+10 221044
-2012-10-02-1349142525.81-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 11:49:00.379+10 1218696
-2012-10-02-1349142540.57-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 11:49:04.04+10 290952
-2012-10-02-1349142544.98-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:49:22.303+10 1454644
-2012-10-02-1349142562.46-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:49:25.541+10 256136
-2012-10-02-1349142566.05-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:49:32.847+10 571528
-2012-10-02-1349142573.13-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:49:36.611+10 290922
-2012-10-02-1349142576.74-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:49:39.292+10 211114
-2012-10-02-1349142579.58-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:49:42.402+10 185366
-2012-10-02-1349142645.48-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:50:48.884+10 288904
-2012-10-02-1349142650.24-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:50:59.012+10 733710
-2012-10-02-1349142660.0-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:51:02.157+10 180360
-2012-10-02-1349142663.2-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:51:10.243+10 592004
-2012-10-02-1349142730.37-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:16.919+10 548586
-2012-10-02-1349142737.28-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:22.598+10 448648
-2012-10-02-1349142743.06-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:25.9+10 239748
-2012-10-02-1349142746.18-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:30.846+10 329412
-2012-10-02-1349142751.16-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:36.428+10 444552
-2012-10-02-1349142757.06-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:41.404+10 364680
-2012-10-02-1349142761.71-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:46.143+10 370824
-2012-10-02-1349142766.58-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:52:52.939+10 524492
-2012-10-02-1349142775.53-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:53:13.644+10 1517486
-2012-10-02-1349142795.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:53:23.024+10 608392
-2012-10-02-1349142803.17-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:53:28.751+10 469128
-2012-10-02-1349142810.23-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:53:34.032+10 317564
-2012-10-02-1349142816.71-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:53:52.106+10 1292416
-2012-10-02-1349142881.88-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:54:46.359+10 375622
-2012-10-02-1349142887.77-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:54:55.945+10 684364
-2012-10-02-1349142896.65-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:55:03.81+10 602248
-2012-10-02-1349142903.95-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:55:10.112+10 486168
-2012-10-02-1349142911.09-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:55:14.164+10 227172
-2012-10-02-1349142914.94-demo.wav 40067 CanberraBlackMnt 2012-10-02 11:55:20.019+10 427904
-2012-10-02-1349142920.96-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:55:37.327+10 1372214
-2012-10-02-1349142937.77-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:55:42.848+10 426120
-2012-10-02-1349142964.11-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:06.632+10 213128
-2012-10-02-1349142966.83-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:12.04+10 434312
-2012-10-02-1349142973.61-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:18.197+10 387208
-2012-10-02-1349142979.15-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:23.812+10 391304
-2012-10-02-1349142985.8-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:32.714+10 582326
-2012-10-02-1349142993.89-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:41.041+10 599208
-2012-10-02-1349143004.18-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:56:55.796+10 976930
-2012-10-02-1349143016.32-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:00.933+10 370732
-2012-10-02-1349143021.19-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:10.792+10 754400
-2012-10-02-1349143031.08-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:18.623+10 619682
-2012-10-02-1349143038.82-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:24.797+10 449066
-2012-10-02-1349143045.19-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:29.248+10 333440
-2012-10-02-1349143050.32-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:33.666+10 270316
-2012-10-02-1349143055.05-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:39.775+10 395398
-2012-10-02-1349143060.38-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:43.669+10 270308
-2012-10-02-1349143064.27-demo.wav 40067 CanberraMtAinsli 2012-10-02 11:57:47.131+10 188442
-2012-10-02-1349143098.84-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:58:22.164+10 280676
-2012-10-02-1349143102.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:58:28.785+10 530568
-2012-10-02-1349143109.07-demo.wav 44028 CanberraBlackMnt 2012-10-02 11:58:32.645+10 303240
-2012-10-02-1349143216.41-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:00:18.944+10 208892
-2012-10-02-1349143277.55-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 12:01:20.077+10 208996
-2012-10-02-1349143281.19-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:01:25.691+10 371864
-2012-10-02-1349143286.66-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:01:34.563+10 662836
-2012-10-02-1349143295.65-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:01:41.501+10 491656
-2012-10-02-1349143303.39-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:01:46.687+10 272520
-2012-10-02-1349143307.48-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:02:07.216+10 1321990
-2012-10-02-1349143327.44-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:02:09.928+10 209032
-2012-10-02-1349143330.85-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:02:18.35+10 619586
-2012-10-02-1349143339.32-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:02:30.665+10 949844
-2012-10-02-1349143352.35-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:02:34.542+10 184456
-2012-10-02-1349143354.84-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:02:40.013+10 434312
-2012-10-02-1349143361.12-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:02:43.3+10 184154
-2012-10-02-1349143403.18-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:03:27.102+10 328932
-2012-10-02-1349143409.08-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:03:39.944+10 913708
-2012-10-02-1349143420.85-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:03:44.554+10 313480
-2012-10-02-1349143477.29-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:04:41.462+10 347960
-2012-10-02-1349143481.8-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:04:45.063+10 272520
-2012-10-02-1349143485.63-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:04:50.469+10 405640
-2012-10-02-1349143491.38-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:05:04.362+10 1089840
-2012-10-02-1349143634.93-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:07:20.468+10 463922
-2012-10-02-1349143642.77-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:07:26.88+10 345114
-2012-10-02-1349143647.05-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:07:33.181+10 516232
-2012-10-02-1349143683.04-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:08:09.087+10 507432
-2012-10-02-1349143691.27-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:08:16.65+10 450696
-2012-10-02-1349143697.33-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:08:22.807+10 458888
-2012-10-02-1349143788.53-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:09:51.176+10 222650
-2012-10-02-1349143792.51-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:10:02.185+10 810180
-2012-10-02-1349143803.13-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:08.407+10 438974
-2012-10-02-1349143808.68-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:12.685+10 327816
-2012-10-02-1349143813.8-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:21.14+10 615480
-2012-10-02-1349143821.79-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:26.005+10 356488
-2012-10-02-1349143828.89-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:32.147+10 274568
-2012-10-02-1349143832.69-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:36.614+10 329156
-2012-10-02-1349143838.97-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:45.212+10 521860
-2012-10-02-1349143845.37-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:10:55.58+10 808578
-2012-10-02-1349143856.46-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:11:00.493+10 335374
-2012-10-02-1349143861.39-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:11:17.306+10 1336336
-2012-10-02-1349143880.02-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:11:28.792+10 731272
-2012-10-02-1349143889.99-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:11:32.764+10 231560
-2012-10-02-1349143922.85-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:12:05.53+10 223982
-2012-10-02-1349143925.7-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:12:10.412+10 393352
-2012-10-02-1349143930.64-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:12:13.284+10 221320
-2012-10-02-1349143934.19-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:12:19.093+10 409736
-2012-10-02-1349143942.83-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:12:25.107+10 191974
-2012-10-02-1349144012.47-demo.wav 44036 CanberraBlackMnt 2012-10-02 12:13:34.974+10 209412
-2012-10-02-1349144017.63-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:13:43.445+10 485512
-2012-10-02-1349144024.25-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:13:48.692+10 372872
-2012-10-02-1349144028.89-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:13:51.117+10 188552
-2012-10-02-1349144031.72-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:13:55.057+10 280712
-2012-10-02-1349144035.19-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:13:57.562+10 200840
-2012-10-02-1349144040.92-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:08.712+10 652794
-2012-10-02-1349144049.73-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:12.302+10 217224
-2012-10-02-1349144052.58-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:15.316+10 229512
-2012-10-02-1349144055.44-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:18.508+10 259982
-2012-10-02-1349144058.9-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:28.269+10 779210
-2012-10-02-1349144068.45-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:37.059+10 690274
-2012-10-02-1349144077.74-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:40.855+10 199316
-2012-10-02-1349144081.1-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:43.917+10 227242
-2012-10-02-1349144085.28-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:49.389+10 322464
-2012-10-02-1349144089.54-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:14:53.107+10 233372
-2012-10-02-1349144093.39-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:15:09.887+10 1372266
-2012-10-02-1349144110.01-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:15:13.541+10 243990
-2012-10-02-1349144113.84-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:15:17.896+10 279476
-2012-10-02-1349144655.11-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:18.275+10 263928
-2012-10-02-1349144659.66-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:23.619+10 331912
-2012-10-02-1349144663.84-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:27.479+10 307336
-2012-10-02-1349144668.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:31.612+10 239752
-2012-10-02-1349144671.79-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:36.492+10 395230
-2012-10-02-1349144676.88-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:40.178+10 267760
-2012-10-02-1349144680.4-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:44.645+10 356488
-2012-10-02-1349144685.09-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:24:48.139+10 196678
-2012-10-02-1349144689.21-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:25:09.004+10 1658710
-2012-10-02-1349144709.92-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:25:24.796+10 1247978
-2012-10-02-1349144724.99-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:25:27.508+10 213128
-2012-10-02-1349144728.68-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:25:51.371+10 1902870
-2012-10-02-1349144752.38-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:26:01.693+10 782570
-2012-10-02-1349144762.64-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:26:16.242+10 1140108
-2012-10-02-1349144776.47-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:26:21.25+10 405640
-2012-10-02-1349144781.71-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:26:26.323+10 391304
-2012-10-02-1349144843.35-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:27:30.961+10 639624
-2012-10-02-1349144851.59-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:27:33.977+10 198792
-2012-10-02-1349144854.11-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:27:39.32+10 433800
-2012-10-02-1349144859.67-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:27:47.489+10 601488
-2012-10-02-1349144867.85-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:27:53.853+10 484088
-2012-10-02-1349144874.12-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:28:04.731+10 835358
-2012-10-02-1349144885.01-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:28:14.461+10 751208
-2012-10-02-1349144894.59-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:28:26.696+10 958062
-2012-10-02-1349144906.84-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:28:29.887+10 192296
-2012-10-02-1349144911.18-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:28:39.427+10 629840
-2012-10-02-1349144919.56-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:28:47.546+10 653144
-2012-10-02-1349144928.37-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:28:59.988+10 976176
-2012-10-02-1349144940.49-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:29:03.705+10 268424
-2012-10-02-1349144943.91-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:29:09.001+10 426120
-2012-10-02-1349144949.14-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:29:13.708+10 354722
-2012-10-02-1349145027.49-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:30:30.099+10 218954
-2012-10-02-1349145075.35-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:31:20.045+10 391934
-2012-10-02-1349145080.57-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:31:25.308+10 397448
-2012-10-02-1349145085.45-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:31:28.48+10 252040
-2012-10-02-1349145088.8-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:31:36.436+10 642316
-2012-10-02-1349145097.3-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:31:40.088+10 217904
-2012-10-02-1349145100.29-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:31:48.12+10 642316
-2012-10-02-1349145182.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:33:06.042+10 303328
-2012-10-02-1349145187.48-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:33:11.035+10 301192
-2012-10-02-1349145191.29-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:33:15.55+10 358536
-2012-10-02-1349145195.82-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:33:19.826+10 335028
-2012-10-02-1349145203.64-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 12:33:31.67+10 675738
-2012-10-02-1349145212.4-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 12:33:36.822+10 372868
-2012-10-02-1349145217.65-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 12:33:41.535+10 303000
-2012-10-02-1349145283.22-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:34:47.174+10 332756
-2012-10-02-1349145324.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:35:28.536+10 314384
-2012-10-02-1349145363.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:36:06.213+10 224630
-2012-10-02-1349145394.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:36:38.42+10 354490
-2012-10-02-1349145429.78-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:37:13.594+10 320626
-2012-10-02-1349145433.92-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:37:16.991+10 260232
-2012-10-02-1349145438.14-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:37:21.761+10 304732
-2012-10-02-1349145442.38-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:37:25.893+10 295048
-2012-10-02-1349145446.13-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:37:29.801+10 307336
-2012-10-02-1349145450.05-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:37:36.293+10 525586
-2012-10-02-1349145458.23-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:37:59.615+10 1794930
-2012-10-02-1349145479.88-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:38:04.497+10 389256
-2012-10-02-1349145484.67-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:38:11.403+10 567424
-2012-10-02-1349145520.59-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:38:43.962+10 282760
-2012-10-02-1349145525.65-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:39:00.072+10 1209278
-2012-10-02-1349145542.28-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:39:07.826+10 467080
-2012-10-02-1349145550.47-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:39:16.392+10 499848
-2012-10-02-1349145557.54-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:39:19.917+10 196744
-2012-10-02-1349145560.71-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:39:30.222+10 782976
-2012-10-02-1349145570.57-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:39:39.618+10 696400
-2012-10-02-1349145579.89-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:39:47.753+10 663688
-2012-10-02-1349145589.49-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:39:51.757+10 192648
-2012-10-02-1349145592.39-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:39:56.255+10 323720
-2012-10-02-1349145703.7-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:41:46.414+10 228508
-2012-10-02-1349145707.9-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:42:01.745+10 1163400
-2012-10-02-1349145722.55-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:42:06.642+10 346248
-2012-10-02-1349145727.15-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:42:09.546+10 200840
-2012-10-02-1349145829.54-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:43:55.33+10 484782
-2012-10-02-1349145835.73-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 12:43:59.653+10 327816
-2012-10-02-1349145927.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:45:31.019+10 285372
-2012-10-02-1349145932.04-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:45:38.5+10 540808
-2012-10-02-1349145939.16-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:45:44.928+10 452930
-2012-10-02-1349145945.32-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:45:49.842+10 315940
-2012-10-02-1349145979.04-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:46:21.587+10 209268
-2012-10-02-1349146042.8-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 12:47:25.323+10 209444
-2012-10-02-1349146048.32-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:47:42.471+10 1190024
-2012-10-02-1349146063.5-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:47:49.268+10 482454
-2012-10-02-1349146069.51-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:47:56.126+10 557192
-2012-10-02-1349146077.05-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:48:01.98+10 407688
-2012-10-02-1349146083.32-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:48:09.988+10 561288
-2012-10-02-1349146090.5-demo.wav 44028 CanberraMtAinsli 2012-10-02 12:48:14.007+10 292998
-2012-10-02-1349146130.37-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:48:56.008+10 474562
-2012-10-02-1349146136.77-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:00.985+10 352392
-2012-10-02-1349146143.0-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:07.684+10 395400
-2012-10-02-1349146147.97-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:14.385+10 540664
-2012-10-02-1349146154.65-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:18.31+10 253318
-2012-10-02-1349146158.85-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:23.59+10 390356
-2012-10-02-1349146167.14-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:31.661+10 378186
-2012-10-02-1349146172.4-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:35.699+10 278664
-2012-10-02-1349146175.89-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:49:39.702+10 321672
-2012-10-02-1349146180.95-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:49:46.289+10 447148
-2012-10-02-1349146186.95-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:49:49.768+10 233608
-2012-10-02-1349146189.91-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:49:56.516+10 552958
-2012-10-02-1349146197.15-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:50:04.156+10 560492
-2012-10-02-1349146204.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:50:12.58+10 659476
-2012-10-02-1349146213.12-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:50:15.914+10 226430
-2012-10-02-1349146216.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:50:19.041+10 219874
-2012-10-02-1349146221.65-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:50:28.405+10 568742
-2012-10-02-1349146230.77-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:50:35.806+10 424072
-2012-10-02-1349146236.01-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:50:42.538+10 549000
-2012-10-02-1349146243.34-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:50:48.888+10 462984
-2012-10-02-1349146250.06-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:50:54.631+10 385160
-2012-10-02-1349146256.69-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:51:10.489+10 1154624
-2012-10-02-1349146270.75-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:51:17.796+10 594042
-2012-10-02-1349146278.33-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:51:23.172+10 407586
-2012-10-02-1349146283.67-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:51:28.596+10 415880
-2012-10-02-1349146289.09-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:51:38.569+10 745472
-2012-10-02-1349146301.72-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:51:52.271+10 881798
-2012-10-02-1349146313.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:51:59.068+10 457176
-2012-10-02-1349146320.68-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:52:03.966+10 278664
-2012-10-02-1349146324.44-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:52:07.125+10 225416
-2012-10-02-1349146328.62-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:52:18.689+10 846096
-2012-10-02-1349146460.22-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:54:22.68+10 208350
-2012-10-02-1349146542.92-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:55:46.139+10 268700
-2012-10-02-1349146547.31-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:55:49.538+10 186504
-2012-10-02-1349146549.74-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:55:56.922+10 604278
-2012-10-02-1349146557.15-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:55:59.747+10 194076
-2012-10-02-1349146560.26-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:56:12.221+10 1005704
-2012-10-02-1349146576.3-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:56:21.554+10 442504
-2012-10-02-1349146582.97-demo.wav 44028 CanberraBlackMnt 2012-10-02 12:56:27.265+10 362632
-2012-10-02-1349146707.72-demo.wav 40067 CanberraBlackMnt 2012-10-02 12:58:33.902+10 520082
-2012-10-02-1349146786.6-demo.wav 40067 CanberraMtAinsli 2012-10-02 12:59:49.099+10 210418
-2012-10-02-1349146963.1-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:02:48.801+10 478850
-2012-10-02-1349147072.96-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:04:35.53+10 210654
-2012-10-02-1349147075.84-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:04:40.683+10 407688
-2012-10-02-1349147081.63-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:04:44.385+10 233608
-2012-10-02-1349147084.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:04:49.409+10 405638
-2012-10-02-1349147090.28-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:05:07.419+10 1421342
-2012-10-02-1349147107.69-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:05:11.311+10 287706
-2012-10-02-1349147173.54-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:06:16.569+10 252180
-2012-10-02-1349147176.86-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:06:20.23+10 282760
-2012-10-02-1349147181.51-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:06:28.228+10 561288
-2012-10-02-1349147189.12-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:06:40.869+10 959228
-2012-10-02-1349147201.11-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:06:48.844+10 615570
-2012-10-02-1349147212.18-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 13:06:57.756+10 465306
-2012-10-02-1349147218.38-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 13:07:05.516+10 598152
-2012-10-02-1349147225.85-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 13:07:14.103+10 665214
-2012-10-02-1349147344.52-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:09:13.37+10 741406
-2012-10-02-1349147353.51-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:09:16.614+10 260232
-2012-10-02-1349147357.18-demo.wav i1045264 CanberraBlackMnt 2012-10-02 13:09:29.822+10 1063048
-2012-10-02-1349147370.12-demo.wav i1045264 CanberraBlackMnt 2012-10-02 13:09:36.458+10 534664
-2012-10-02-1349147376.91-demo.wav i1045264 CanberraBlackMnt 2012-10-02 13:09:46.22+10 768022
-2012-10-02-1349147409.68-demo.wav i1045264 CanberraBlackMnt 2012-10-02 13:10:21.649+10 1007752
-2012-10-02-1349147422.84-demo.wav i1045264 CanberraBlackMnt 2012-10-02 13:10:28.109+10 429346
-2012-10-02-1349147429.56-demo.wav i1045264 CanberraBlackMnt 2012-10-02 13:10:32.736+10 255544
-2012-10-02-1349147435.55-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:10:55.53+10 1681102
-2012-10-02-1349147613.88-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:13:36.366+10 208368
-2012-10-02-1349147670.57-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:14:33.33+10 229870
-2012-10-02-1349147674.25-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:14:51.657+10 1455050
-2012-10-02-1349147691.88-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:14:54.433+10 215176
-2012-10-02-1349147695.02-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:15:02.265+10 608392
-2012-10-02-1349147702.53-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:15:04.675+10 182158
-2012-10-02-1349147705.75-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:15:25.523+10 1655090
-2012-10-02-1349147726.42-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:15:30.996+10 385160
-2012-10-02-1349147913.27-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:18:37.029+10 317272
-2012-10-02-1349147920.16-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:18:53.809+10 1144046
-2012-10-02-1349147935.98-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:18:59.689+10 311432
-2012-10-02-1349147940.36-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:19:03.683+10 278664
-2012-10-02-1349147943.87-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:19:12.742+10 703320
-2012-10-02-1349147953.22-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:19:22.459+10 776304
-2012-10-02-1349147964.09-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:19:29.253+10 434312
-2012-10-02-1349147969.74-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:19:33.688+10 320690
-2012-10-02-1349147974.13-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:19:41.288+10 602248
-2012-10-02-1349147983.06-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:19:46.297+10 272520
-2012-10-02-1349147987.16-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:19:56.06+10 721864
-2012-10-02-1349147996.62-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:20:03.104+10 539358
-2012-10-02-1349148004.52-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:20:07.41+10 241800
-2012-10-02-1349148007.87-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:20:24.238+10 1374344
-2012-10-02-1349148025.3-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:20:35.793+10 876984
-2012-10-02-1349148385.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:26:27.958+10 210002
-2012-10-02-1349148389.0-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:26:33.03+10 334494
-2012-10-02-1349148393.51-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:26:40.432+10 583816
-2012-10-02-1349148401.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:26:43.576+10 200840
-2012-10-02-1349148441.59-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:27:26.516+10 413974
-2012-10-02-1349148447.96-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:27:33.864+10 490226
-2012-10-02-1349148454.28-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:27:40.189+10 495752
-2012-10-02-1349148460.54-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:27:46.41+10 472456
-2012-10-02-1349148466.77-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:27:52.36+10 407392
-2012-10-02-1349148472.56-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:27:55.369+10 181518
-2012-10-02-1349148475.52-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:28:00.551+10 364720
-2012-10-02-1349148480.69-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 13:28:04.9+10 289050
-2012-10-02-1349148507.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:28:30.119+10 206982
-2012-10-02-1349148510.26-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:28:32.768+10 213128
-2012-10-02-1349148514.35-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:28:38.384+10 333960
-2012-10-02-1349148518.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:28:46.838+10 686216
-2012-10-02-1349148528.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:28:55.262+10 539864
-2012-10-02-1349148535.4-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:29:00.063+10 334598
-2012-10-02-1349148541.71-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:29:04.323+10 204792
-2012-10-02-1349148545.86-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:29:09.108+10 254378
-2012-10-02-1349148550.02-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:29:16.208+10 518576
-2012-10-02-1349148556.5-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:29:19.861+10 284808
-2012-10-02-1349148561.45-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:29:23.833+10 200840
-2012-10-02-1349148608.82-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:30:13.668+10 406174
-2012-10-02-1349148615.05-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:30:25.792+10 903304
-2012-10-02-1349148626.89-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:30:30.131+10 272520
-2012-10-02-1349148630.27-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:30:35.731+10 458878
-2012-10-02-1349148636.08-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:30:41.746+10 475480
-2012-10-02-1349148642.7-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:30:45.638+10 211282
-2012-10-02-1349148674.73-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:31:17.002+10 194696
-2012-10-02-1349148677.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:31:19.712+10 206984
-2012-10-02-1349148699.12-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:31:41.997+10 243848
-2012-10-02-1349148702.75-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:31:46.368+10 305288
-2012-10-02-1349148707.2-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:31:51.395+10 354440
-2012-10-02-1349148711.59-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:31:55.318+10 313480
-2012-10-02-1349148715.45-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:32:02.977+10 631956
-2012-10-02-1349148723.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:32:13.601+10 859712
-2012-10-02-1349148735.77-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:32:25.996+10 830642
-2012-10-02-1349148746.13-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:32:43.001+10 1401626
-2012-10-02-1349148763.31-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:32:47.739+10 321344
-2012-10-02-1349148768.03-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:32:52.764+10 355884
-2012-10-02-1349148773.37-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:33:19.046+10 2149408
-2012-10-02-1349148799.35-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:33:31.733+10 986892
-2012-10-02-1349148812.04-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 13:33:36.654+10 354378
-2012-10-02-1349148877.81-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:34:40.315+10 209622
-2012-10-02-1349148880.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:34:44.464+10 321672
-2012-10-02-1349148885.1-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:34:48.913+10 321672
-2012-10-02-1349148889.62-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:34:52.583+10 252040
-2012-10-02-1349148893.52-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:34:57.927+10 366728
-2012-10-02-1349148901.08-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:35:03.702+10 221320
-2012-10-02-1349148937.17-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:35:40.376+10 269130
-2012-10-02-1349149224.89-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 13:40:27.386+10 209346
-2012-10-02-1349149230.74-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:40:39.528+10 739464
-2012-10-02-1349149242.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:40:50.089+10 661340
-2012-10-02-1349149250.4-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:40:55.035+10 331230
-2012-10-02-1349149255.31-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:40:58.385+10 247498
-2012-10-02-1349149258.89-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 13:41:10.967+10 1012524
-2012-10-02-1349149453.06-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:44:18.647+10 467116
-2012-10-02-1349149662.98-demo.wav 44028 CanberraBlackMnt 2012-10-02 13:47:45.473+10 208508
-2012-10-02-1349149666.73-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:47:53.595+10 575600
-2012-10-02-1349149675.83-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:47:59.767+10 331912
-2012-10-02-1349149679.96-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:48:02.495+10 215176
-2012-10-02-1349149683.01-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:48:09.148+10 511942
-2012-10-02-1349149689.33-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:48:20.155+10 847208
-2012-10-02-1349149700.37-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:48:33.651+10 1054684
-2012-10-02-1349149713.93-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:48:42.535+10 659360
-2012-10-02-1349149983.39-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:53:05.906+10 210310
-2012-10-02-1349150120.38-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:55:23.758+10 284198
-2012-10-02-1349150124.26-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:55:31.003+10 567432
-2012-10-02-1349150132.94-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:55:39.01+10 510088
-2012-10-02-1349150139.16-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:55:44.322+10 387250
-2012-10-02-1349150144.68-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:55:51.629+10 521124
-2012-10-02-1349150151.77-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:55:55.792+10 272588
-2012-10-02-1349150299.36-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:58:23.742+10 370286
-2012-10-02-1349150303.97-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:58:28.416+10 358536
-2012-10-02-1349150310.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:58:32.739+10 180360
-2012-10-02-1349150313.19-demo.wav 40067 CanberraBlackMnt 2012-10-02 13:58:45.677+10 989734
-2012-10-02-1349150351.41-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:59:17.104+10 481416
-2012-10-02-1349150358.07-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:59:23.006+10 413832
-2012-10-02-1349150363.14-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:59:25.32+10 182408
-2012-10-02-1349150393.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 13:59:55.871+10 221320
-2012-10-02-1349150423.77-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:00:27.377+10 302932
-2012-10-02-1349150474.79-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:01:18.871+10 340970
-2012-10-02-1349150480.31-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:01:26.113+10 487560
-2012-10-02-1349150486.47-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:01:34.281+10 655496
-2012-10-02-1349150494.5-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:01:37.6+10 259946
-2012-10-02-1349150497.91-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:01:41.365+10 226402
-2012-10-02-1349150501.63-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:01:44.492+10 208240
-2012-10-02-1349150507.85-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:02:05.541+10 1487444
-2012-10-02-1349150601.95-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:03:25.589+10 303442
-2012-10-02-1349150633.25-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:03:55.788+10 209674
-2012-10-02-1349150664.54-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:04:27.564+10 255108
-2012-10-02-1349150669.14-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:04:41.921+10 1075336
-2012-10-02-1349150684.42-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:05:03.441+10 1597576
-2012-10-02-1349150703.57-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:05:10.684+10 600200
-2012-10-02-1349150710.99-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:05:20.767+10 765018
-2012-10-02-1349151253.71-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 14:14:19.205+10 459696
-2012-10-02-1349151259.36-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 14:14:21.773+10 202888
-2012-10-02-1349151296.72-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 14:15:00.947+10 354596
-2012-10-02-1349151301.21-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 14:15:04.542+10 274568
-2012-10-02-1349151305.14-demo.wav 44011 ACTION 44011 CanberraMtAinsli 2012-10-02 14:15:11.109+10 501896
-2012-10-02-1349151312.03-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:15:21.018+10 751044
-2012-10-02-1349151322.18-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:15:29.219+10 592008
-2012-10-02-1349151329.79-demo.wav 44028 CanberraMtAinsli 2012-10-02 14:15:50.573+10 1421954
-2012-10-02-1349151350.69-demo.wav 44028 CanberraMtAinsli 2012-10-02 14:15:56.621+10 499848
-2012-10-02-1349151356.83-demo.wav 44028 CanberraMtAinsli 2012-10-02 14:16:04.551+10 649352
-2012-10-02-1349151364.68-demo.wav 44028 CanberraMtAinsli 2012-10-02 14:16:07.138+10 196582
-2012-10-02-1349151450.13-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:33.709+10 302386
-2012-10-02-1349151454.43-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:37.109+10 227464
-2012-10-02-1349151458.13-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:43.46+10 448648
-2012-10-02-1349151463.62-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:48.662+10 418734
-2012-10-02-1349151468.78-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:51.552+10 199286
-2012-10-02-1349151471.78-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:54.727+10 209320
-2012-10-02-1349151475.48-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:17:59.179+10 274802
-2012-10-02-1349151480.16-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:18:05.035+10 370398
-2012-10-02-1349151486.3-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:18:10.19+10 328586
-2012-10-02-1349151546.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:19:10.304+10 290780
-2012-10-02-1349151550.64-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:19:19.241+10 723080
-2012-10-02-1349151559.36-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:19:23.758+10 370652
-2012-10-02-1349151564.1-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:19:26.71+10 220690
-2012-10-02-1349151568.14-demo.wav 44031 CanberraBlackMnt 2012-10-02 14:19:49.455+10 1791938
-2012-10-02-1349151634.64-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:20:38.33+10 308204
-2012-10-02-1349151640.21-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:20:50.407+10 858248
-2012-10-02-1349151650.54-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:20:56.229+10 481416
-2012-10-02-1349151657.51-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:01.349+10 325660
-2012-10-02-1349151661.58-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:10.204+10 722260
-2012-10-02-1349151670.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:21.72+10 938560
-2012-10-02-1349151682.08-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:26.554+10 363240
-2012-10-02-1349151686.83-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:30.35+10 235662
-2012-10-02-1349151690.83-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:36.092+10 442678
-2012-10-02-1349151696.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:41.868+10 462984
-2012-10-02-1349151702.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:51.806+10 754244
-2012-10-02-1349151714.09-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:21:58.475+10 354326
-2012-10-02-1349151771.13-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:22:54.471+10 282122
-2012-10-02-1349151775.77-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:22:58.891+10 260538
-2012-10-02-1349151780.15-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:23:07.652+10 629440
-2012-10-02-1349151787.92-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:23:10.493+10 219272
-2012-10-02-1349151790.76-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:23:12.886+10 182408
-2012-10-02-1349151846.89-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:24:09.824+10 247778
-2012-10-02-1349151851.16-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:24:14.181+10 252202
-2012-10-02-1349151854.3-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:24:18.634+10 366728
-2012-10-02-1349151859.26-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:24:23.899+10 389256
-2012-10-02-1349151865.5-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:24:27.745+10 190600
-2012-10-02-1349151921.97-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:25:28.109+10 515198
-2012-10-02-1349151928.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:25:36.978+10 715412
-2012-10-02-1349152009.35-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:26:52.643+10 275792
-2012-10-02-1349152013.13-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:26:55.54+10 200840
-2012-10-02-1349152015.81-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:27:01.721+10 499848
-2012-10-02-1349152021.96-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:27:05.413+10 290952
-2012-10-02-1349152025.72-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:27:21.28+10 1296520
-2012-10-02-1349152041.57-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:27:24.448+10 235656
-2012-10-02-1349152045.83-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:27:50.831+10 2060920
-2012-10-02-1349152071.6-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:28:00.236+10 719218
-2012-10-02-1349152080.37-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:28:04.903+10 381064
-2012-10-02-1349152085.12-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:28:11.171+10 484132
-2012-10-02-1349152091.31-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:28:26.021+10 1173532
-2012-10-02-1349152106.17-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:28:33.02+10 510832
-2012-10-02-1349152113.89-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 14:28:40.913+10 588198
-2012-10-02-1349152121.81-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:02.814+10 1763464
-2012-10-02-1349152142.98-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:05.488+10 209032
-2012-10-02-1349152145.63-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:07.956+10 192648
-2012-10-02-1349152148.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:12.436+10 362632
-2012-10-02-1349152152.71-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:19.071+10 532412
-2012-10-02-1349152159.9-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:25.188+10 442724
-2012-10-02-1349152165.41-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:38.516+10 1077290
-2012-10-02-1349152178.68-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:46.14+10 566482
-2012-10-02-1349152186.29-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:29:54.43+10 664978
-2012-10-02-1349152194.67-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:30:01.957+10 586306
-2012-10-02-1349152202.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:30:08.095+10 483362
-2012-10-02-1349152208.48-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:30:11.98+10 265118
-2012-10-02-1349152212.26-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:30:23.463+10 914908
-2012-10-02-1349152250.04-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:30:54.108+10 344200
-2012-10-02-1349152254.65-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:30:59.284+10 389256
-2012-10-02-1349152259.59-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:05.69+10 510044
-2012-10-02-1349152267.42-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:09.606+10 182408
-2012-10-02-1349152271.83-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:16.736+10 413042
-2012-10-02-1349152277.05-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:22.488+10 458558
-2012-10-02-1349152282.81-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:25.486+10 197786
-2012-10-02-1349152286.07-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:29.83+10 263150
-2012-10-02-1349152291.68-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:54.124+10 1884296
-2012-10-02-1349152314.34-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:31:59.458+10 430216
-2012-10-02-1349152320.75-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:32:06.055+10 446600
-2012-10-02-1349152326.18-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:32:11.781+10 446688
-2012-10-02-1349152334.8-demo.wav 44013 ACTION 44013 CanberraBlackMnt 2012-10-02 14:32:19.688+10 409020
-2012-10-02-1349152341.71-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:32:37.106+10 1292424
-2012-10-02-1349152357.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:32:41.285+10 323720
-2012-10-02-1349152394.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:33:18.142+10 286856
-2012-10-02-1349152400.3-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:33:26.819+10 546952
-2012-10-02-1349152407.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:33:30.292+10 204936
-2012-10-02-1349152410.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:33:36.606+10 460838
-2012-10-02-1349152596.54-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:36:40.914+10 367020
-2012-10-02-1349152601.04-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:36:45.046+10 337852
-2012-10-02-1349152606.74-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:36:53.369+10 529120
-2012-10-02-1349152614.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:36:58.004+10 308826
-2012-10-02-1349152618.26-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:37:04.129+10 492154
-2012-10-02-1349152624.5-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:37:16.018+10 966792
-2012-10-02-1349152638.08-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:37:28.051+10 837768
-2012-10-02-1349152648.19-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:37:33.636+10 458888
-2012-10-02-1349152654.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:37:38.055+10 315542
-2012-10-02-1349152658.74-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:37:48.302+10 801564
-2012-10-02-1349152668.63-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:37:51.796+10 208084
-2012-10-02-1349152672.24-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:38:05.25+10 1091552
-2012-10-02-1349152687.85-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:38:11.153+10 277144
-2012-10-02-1349152691.28-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:38:14.17+10 245896
-2012-10-02-1349152694.57-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:38:17.01+10 206984
-2012-10-02-1349152697.73-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:38:40.629+10 1917064
-2012-10-02-1349152720.89-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:38:48.624+10 649352
-2012-10-02-1349152728.86-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:38:59.698+10 908228
-2012-10-02-1349152749.37-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:39:18.328+10 749210
-2012-10-02-1349152758.45-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:39:25.739+10 589770
-2012-10-02-1349152766.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:39:31.713+10 458826
-2012-10-02-1349152773.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:39:36.873+10 267356
-2012-10-02-1349152777.0-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:39:41.786+10 398078
-2012-10-02-1349152781.91-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:39:59.483+10 1429932
-2012-10-02-1349152800.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:40:06.712+10 543336
-2012-10-02-1349152892.12-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:41:35.022+10 241222
-2012-10-02-1349152896.5-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:41:49.108+10 1063048
-2012-10-02-1349152909.41-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:41:51.883+10 209032
-2012-10-02-1349152913.12-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 14:42:14.135+10 1759150
-2012-10-02-1349152935.14-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 14:42:20.253+10 428168
-2012-10-02-1349153001.85-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 14:43:26.046+10 353438
-2012-10-02-1349153007.65-demo.wav 44028 CanberraBlackMnt 2012-10-02 14:43:39.435+10 987272
-2012-10-02-1349153061.2-demo.wav 44036 CanberraBlackMnt 2012-10-02 14:44:25.237+10 340280
-2012-10-02-1349153125.49-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:45:29.467+10 335326
-2012-10-02-1349153130.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:45:35.707+10 417928
-2012-10-02-1349153136.04-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:45:40.191+10 350344
-2012-10-02-1349153141.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:45:47.372+10 513312
-2012-10-02-1349153147.5-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:45:52.911+10 456840
-2012-10-02-1349153153.06-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:45:57.06+10 338056
-2012-10-02-1349153158.16-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:46:02.661+10 377368
-2012-10-02-1349153163.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:46:10.864+10 596586
-2012-10-02-1349153174.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:46:22.002+10 651282
-2012-10-02-1349153207.74-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:46:51.747+10 331912
-2012-10-02-1349153212.08-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:46:57.206+10 432264
-2012-10-02-1349153218.12-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:47:00.638+10 213128
-2012-10-02-1349153220.79-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:47:04.34+10 291078
-2012-10-02-1349153228.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:47:29.341+10 1438738
-2012-10-02-1349153249.59-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:47:32.032+10 206984
-2012-10-02-1349153252.19-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:47:34.726+10 213128
-2012-10-02-1349153254.96-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:47:38.298+10 280712
-2012-10-02-1349153258.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:47:40.873+10 204936
-2012-10-02-1349153261.84-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:47:50.441+10 689530
-2012-10-02-1349153271.38-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:12.403+10 1763862
-2012-10-02-1349153292.62-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:15.249+10 219272
-2012-10-02-1349153295.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:18.416+10 241800
-2012-10-02-1349153298.9-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:48:32.276+10 1126536
-2012-10-02-1349153315.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:48.092+10 1047778
-2012-10-02-1349153328.37-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:50.867+10 206984
-2012-10-02-1349153331.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:54.357+10 276606
-2012-10-02-1349153334.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:48:57.706+10 207466
-2012-10-02-1349153389.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:49:52.315+10 215746
-2012-10-02-1349153392.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:49:55.006+10 198792
-2012-10-02-1349153395.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:50:02.17+10 573712
-2012-10-02-1349153402.39-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:50:08.033+10 414640
-2012-10-02-1349153408.16-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:13.628+10 458888
-2012-10-02-1349153413.75-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:18.206+10 374920
-2012-10-02-1349153418.33-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:22.513+10 352392
-2012-10-02-1349153423.47-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:26.833+10 280038
-2012-10-02-1349153426.95-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:32.425+10 440546
-2012-10-02-1349153432.56-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:41.357+10 701030
-2012-10-02-1349153441.48-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:50:55.504+10 1162946
-2012-10-02-1349153455.63-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:51:12.175+10 1376854
-2012-10-02-1349153472.3-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 14:51:24.874+10 1046020
-2012-10-02-1349153485.62-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:51:46.432+10 1744490
-2012-10-02-1349153506.55-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:51:49.002+10 209032
-2012-10-02-1349153509.93-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:51:52.608+10 227464
-2012-10-02-1349153512.73-demo.wav 40067 CanberraMtAinsli 2012-10-02 14:51:55.018+10 194696
-2012-10-02-1349153563.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:52:48.509+10 414218
-2012-10-02-1349153568.63-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:52:52.476+10 323714
-2012-10-02-1349153572.61-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:52:57.466+10 365994
-2012-10-02-1349153578.05-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:53:04.688+10 497230
-2012-10-02-1349153585.44-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:53:11.023+10 469354
-2012-10-02-1349153591.21-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:53:13.496+10 194696
-2012-10-02-1349153594.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:53:24.601+10 812222
-2012-10-02-1349153605.44-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 14:53:33.791+10 698744
-2012-10-02-1349153677.49-demo.wav 40067 CanberraBlackMnt 2012-10-02 14:54:40.528+10 254516
-2012-10-02-1349153738.93-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 14:55:45.031+10 512908
-2012-10-02-1349153784.15-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 14:56:29.079+10 411850
-2012-10-02-1349153973.43-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 14:59:36.319+10 242072
-2012-10-02-1349153976.44-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 14:59:40.032+10 303240
-2012-10-02-1349153980.45-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 14:59:52.877+10 1042568
-2012-10-02-1349153993.51-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 15:00:01.396+10 598162
-2012-10-02-1349154093.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:01:38.251+10 412456
-2012-10-02-1349154098.39-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:01:40.939+10 213128
-2012-10-02-1349154101.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:01:48.42+10 577642
-2012-10-02-1349154109.38-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:01:56.5+10 595286
-2012-10-02-1349154117.42-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 15:02:02.79+10 450694
-2012-10-02-1349154124.24-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 15:02:09.106+10 405036
-2012-10-02-1349154189.53-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:03:13.693+10 349000
-2012-10-02-1349154194.33-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:03:16.565+10 186504
-2012-10-02-1349154197.46-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:03:35.898+10 1548424
-2012-10-02-1349154216.03-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:03:39.647+10 305288
-2012-10-02-1349154242.17-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:04:07.609+10 456840
-2012-10-02-1349154249.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:04:26.86+10 1482888
-2012-10-02-1349154267.96-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:04:39.461+10 966788
-2012-10-02-1349154279.59-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:04:42.587+10 221984
-2012-10-02-1349154282.78-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:04:52.407+10 807048
-2012-10-02-1349154292.76-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:04:55.908+10 266376
-2012-10-02-1349154297.14-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:05:09.544+10 1042568
-2012-10-02-1349154311.93-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:21.19+10 780424
-2012-10-02-1349154321.37-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:23.758+10 200840
-2012-10-02-1349154323.89-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:27.14+10 274568
-2012-10-02-1349154327.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:30.011+10 219272
-2012-10-02-1349154330.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:35.371+10 411080
-2012-10-02-1349154336.24-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:40.11+10 327698
-2012-10-02-1349154340.31-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:45.741+10 458724
-2012-10-02-1349154346.03-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:55.216+10 765690
-2012-10-02-1349154355.46-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:05:59.683+10 303890
-2012-10-02-1349154360.0-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 15:06:08.191+10 686258
-2012-10-02-1349154368.85-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 15:06:13.167+10 362632
-2012-10-02-1349154373.39-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 15:06:17.043+10 309268
-2012-10-02-1349154460.83-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:07:48.266+10 626352
-2012-10-02-1349154502.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:08:25.578+10 234416
-2012-10-02-1349154505.93-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:08:28.097+10 182408
-2012-10-02-1349154508.46-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:08:33.618+10 430216
-2012-10-02-1349154513.77-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:08:42.535+10 735186
-2012-10-02-1349154523.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:08:47.16+10 299930
-2012-10-02-1349154527.33-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:08:58.504+10 924540
-2012-10-02-1349154538.77-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:09:05.156+10 483936
-2012-10-02-1349154545.58-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:09:08.299+10 191864
-2012-10-02-1349154550.3-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:09:27.791+10 1470600
-2012-10-02-1349154568.76-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:09:41.039+10 1029912
-2012-10-02-1349154582.18-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:09:47.021+10 400778
-2012-10-02-1349154588.0-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 15:10:02.521+10 1220744
-2012-10-02-1349154602.76-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 15:10:05.063+10 190600
-2012-10-02-1349154605.92-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:10:12.217+10 527048
-2012-10-02-1349154613.15-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:10:17.668+10 379016
-2012-10-02-1349154617.94-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:10:21.504+10 299144
-2012-10-02-1349154623.01-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:10:29.303+10 528520
-2012-10-02-1349154631.8-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:10:37.217+10 456840
-2012-10-02-1349154637.78-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:10:43.677+10 491656
-2012-10-02-1349154643.89-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:10:50.312+10 529354
-2012-10-02-1349154650.65-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:11:04.05+10 1124488
-2012-10-02-1349154667.93-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:11:23.757+10 1325642
-2012-10-02-1349154684.88-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:11:41.312+10 1373436
-2012-10-02-1349154701.61-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:11:43.833+10 188552
-2012-10-02-1349154703.95-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:12:04.579+10 1672544
-2012-10-02-1349154726.56-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:12:09.941+10 243160
-2012-10-02-1349154730.62-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:12:19.963+10 784386
-2012-10-02-1349154740.58-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:12:25.023+10 374920
-2012-10-02-1349154745.68-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:12:33.144+10 587876
-2012-10-02-1349154753.68-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:12:42.512+10 741086
-2012-10-02-1349154763.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:12:47.265+10 340092
-2012-10-02-1349154803.5-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:13:28.459+10 416866
-2012-10-02-1349154809.67-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:13:34.344+10 390588
-2012-10-02-1349154814.47-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:13:39.855+10 452744
-2012-10-02-1349154819.98-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:13:43.987+10 336156
-2012-10-02-1349154968.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:16:11.703+10 265638
-2012-10-02-1349154972.28-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:16:16.137+10 325768
-2012-10-02-1349154976.41-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:16:23.029+10 555142
-2012-10-02-1349154983.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:16:27.79+10 314074
-2012-10-02-1349154988.7-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:16:47.442+10 1574330
-2012-10-02-1349155008.5-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:16:55.242+10 562906
-2012-10-02-1349155015.39-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:17:00.409+10 422024
-2012-10-02-1349155020.69-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:17:07.381+10 561282
-2012-10-02-1349155027.59-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:17:14.16+10 541518
-2012-10-02-1349155040.22-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:17:24.633+10 366104
-2012-10-02-1349155045.46-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:17:33.032+10 630656
-2012-10-02-1349155054.5-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:17:41.534+10 589000
-2012-10-02-1349155063.11-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:17:54.71+10 971040
-2012-10-02-1349155074.85-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:18:01.011+10 517336
-2012-10-02-1349155081.42-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:18:04.568+10 198856
-2012-10-02-1349155085.01-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:18:10.531+10 460936
-2012-10-02-1349155138.89-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:02.753+10 325544
-2012-10-02-1349155144.7-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:17.851+10 1104008
-2012-10-02-1349155158.11-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:22.735+10 389256
-2012-10-02-1349155162.86-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:27.044+10 354440
-2012-10-02-1349155167.16-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:40.816+10 1139836
-2012-10-02-1349155180.94-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:46.225+10 429432
-2012-10-02-1349155186.52-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:54.906+10 638918
-2012-10-02-1349155195.04-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:19:58.274+10 223244
-2012-10-02-1349155201.53-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:20:21.749+10 1690966
-2012-10-02-1349155222.24-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:20:25.052+10 237704
-2012-10-02-1349155225.29-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:20:27.845+10 217224
-2012-10-02-1349155228.0-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:20:30.782+10 235656
-2012-10-02-1349155231.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:20:42.318+10 948360
-2012-10-02-1349155242.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:20:46.818+10 368776
-2012-10-02-1349155246.94-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:20:50.107+10 268424
-2012-10-02-1349155255.82-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:01.708+10 495752
-2012-10-02-1349155262.13-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:06.656+10 381064
-2012-10-02-1349155266.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:09.305+10 213128
-2012-10-02-1349155269.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:15.481+10 504852
-2012-10-02-1349155275.61-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:22.199+10 516074
-2012-10-02-1349155282.48-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:26.78+10 362326
-2012-10-02-1349155288.94-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:21:35.25+10 530568
-2012-10-02-1349155295.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:21:44.816+10 790500
-2012-10-02-1349155305.05-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:51.661+10 555144
-2012-10-02-1349155311.78-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:21:55.283+10 297096
-2012-10-02-1349155315.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:22:05.609+10 859878
-2012-10-02-1349155326.38-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:22:13.84+10 623926
-2012-10-02-1349155334.0-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:22:18.084+10 342152
-2012-10-02-1349155338.39-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:22:30.67+10 1031884
-2012-10-02-1349155350.82-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:22:37.595+10 534178
-2012-10-02-1349155358.05-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:22:42.094+10 338420
-2012-10-02-1349155362.55-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:22:46.894+10 306652
-2012-10-02-1349155423.07-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:23:46.008+10 244682
-2012-10-02-1349155426.47-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:23:56.183+10 817268
-2012-10-02-1349155437.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:24:01.814+10 400560
-2012-10-02-1349155444.22-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:24:13.714+10 794760
-2012-10-02-1349155454.54-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:24:19.411+10 409736
-2012-10-02-1349155461.07-demo.wav 44036 CanberraBlackMnt 2012-10-02 15:24:25.553+10 370738
-2012-10-02-1349155466.33-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:24:31.774+10 458888
-2012-10-02-1349155471.97-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:24:36.607+10 387208
-2012-10-02-1349155477.33-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:24:43.339+10 501896
-2012-10-02-1349155484.57-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:24:50.437+10 493704
-2012-10-02-1349155490.57-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:24:54.458+10 323720
-2012-10-02-1349155495.54-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:24:58.655+10 258184
-2012-10-02-1349155499.59-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:25:02.325+10 231530
-2012-10-02-1349155503.75-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:25:08.657+10 354826
-2012-10-02-1349155509.55-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:25:17.847+10 696264
-2012-10-02-1349155518.22-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:25:20.559+10 196744
-2012-10-02-1349155520.99-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:25:40.995+10 1675400
-2012-10-02-1349155541.12-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:25:43.628+10 213128
-2012-10-02-1349155565.47-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:26:07.661+10 186504
-2012-10-02-1349155567.78-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:26:10.263+10 211080
-2012-10-02-1349155571.38-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:26:26.812+10 1288762
-2012-10-02-1349155587.67-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:26:34.407+10 562758
-2012-10-02-1349155594.71-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:26:39.547+10 407688
-2012-10-02-1349155600.06-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:26:52.361+10 1020304
-2012-10-02-1349155612.9-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:26:58.712+10 479074
-2012-10-02-1349155621.1-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:27:09.004+10 624176
-2012-10-02-1349155629.52-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:27:17.16+10 639962
-2012-10-02-1349155637.29-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:27:23.559+10 528502
-2012-10-02-1349155643.68-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:27:28.537+10 371426
-2012-10-02-1349155649.15-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:27:33.518+10 368460
-2012-10-02-1349155787.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:29:50.531+10 292572
-2012-10-02-1349155792.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:29:55.802+10 309384
-2012-10-02-1349155796.58-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:30:04.086+10 630850
-2012-10-02-1349155804.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:30:14.308+10 766244
-2012-10-02-1349155815.14-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:30:22.576+10 625598
-2012-10-02-1349155944.77-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:32:28.333+10 300004
-2012-10-02-1349155950.15-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:32:36.708+10 549000
-2012-10-02-1349155956.84-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:32:45.683+10 741512
-2012-10-02-1349155966.62-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:32:50.595+10 331672
-2012-10-02-1349155970.78-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:32:55.77+10 358040
-2012-10-02-1349155975.94-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 15:32:59.768+10 284930
-2012-10-02-1349155980.47-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:12.697+10 1023858
-2012-10-02-1349155992.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:15.089+10 192648
-2012-10-02-1349155995.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:17.462+10 190424
-2012-10-02-1349155998.19-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:35.297+10 1433714
-2012-10-02-1349156015.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:37.643+10 188552
-2012-10-02-1349156017.76-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:49.314+10 967932
-2012-10-02-1349156031.78-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:55.914+10 290754
-2012-10-02-1349156036.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:33:59.816+10 266472
-2012-10-02-1349156085.09-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:34:48.409+10 280294
-2012-10-02-1349156089.99-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:34:56.738+10 567432
-2012-10-02-1349156096.87-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:35:03.856+10 587908
-2012-10-02-1349156104.02-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:35:08.293+10 360584
-2012-10-02-1349156109.17-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:35:11.931+10 233550
-2012-10-02-1349156112.06-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:35:16.143+10 342400
-2012-10-02-1349156116.56-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:35:20.356+10 308328
-2012-10-02-1349156121.36-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:35:38.214+10 1410556
-2012-10-02-1349156160.59-demo.wav i1045200 CanberraMtAinsli 2012-10-02 15:36:07.242+10 559240
-2012-10-02-1349156168.85-demo.wav i1045200 CanberraMtAinsli 2012-10-02 15:36:21.81+10 1085576
-2012-10-02-1349156235.65-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 15:37:18.149+10 209526
-2012-10-02-1349156287.5-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:38:17.536+10 839796
-2012-10-02-1349156297.76-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:38:21.413+10 309384
-2012-10-02-1349156304.55-demo.wav 40067 CanberraMtAinsli 2012-10-02 15:38:34.287+10 818520
-2012-10-02-1349156341.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:39:06.811+10 448204
-2012-10-02-1349156348.1-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:39:15.952+10 654240
-2012-10-02-1349156357.36-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:39:21.949+10 383112
-2012-10-02-1349156363.01-demo.wav 10076 WARINGH CanberraBlackMnt 2012-10-02 15:39:27.052+10 340094
-2012-10-02-1349156369.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:39:45.045+10 1278444
-2012-10-02-1349156385.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:39:51.469+10 509676
-2012-10-02-1349156392.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:39:59.157+10 585024
-2012-10-02-1349156399.89-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:06.623+10 567432
-2012-10-02-1349156408.89-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:21.389+10 997176
-2012-10-02-1349156422.14-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:29.668+10 630568
-2012-10-02-1349156431.3-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:43.77+10 1041856
-2012-10-02-1349156444.91-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:48.149+10 272520
-2012-10-02-1349156448.62-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:53.71+10 428168
-2012-10-02-1349156453.83-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:40:56.423+10 219058
-2012-10-02-1349156456.61-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:41:02.429+10 428850
-2012-10-02-1349156494.85-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:41:37.377+10 211664
-2012-10-02-1349156498.45-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:41:44.811+10 530300
-2012-10-02-1349156504.97-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:41:59.317+10 1200240
-2012-10-02-1349156519.44-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:42:02.451+10 253568
-2012-10-02-1349156522.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:42:08.817+10 513172
-2012-10-02-1349156553.8-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:42:36.147+10 198792
-2012-10-02-1349156557.2-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:42:40.164+10 245896
-2012-10-02-1349156560.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:42:49.938+10 785022
-2012-10-02-1349156570.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:43:03.719+10 1085144
-2012-10-02-1349156585.99-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:43:16.372+10 870536
-2012-10-02-1349156596.51-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:43:19.303+10 235656
-2012-10-02-1349156599.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:43:28.685+10 775916
-2012-10-02-1349156608.81-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:43:33.075+10 358536
-2012-10-02-1349156613.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:43:39.186+10 483450
-2012-10-02-1349156619.92-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:44:00.237+10 1478404
-2012-10-02-1349156640.54-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:44:03.058+10 211080
-2012-10-02-1349156644.28-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:13.171+10 744890
-2012-10-02-1349156655.32-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:18.261+10 247944
-2012-10-02-1349156658.82-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:28.341+10 790334
-2012-10-02-1349156669.88-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:35.567+10 475232
-2012-10-02-1349156676.75-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:40.384+10 283544
-2012-10-02-1349156682.13-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:45.474+10 245262
-2012-10-02-1349156685.76-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:50.259+10 312152
-2012-10-02-1349156692.4-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:44:55.013+10 207614
-2012-10-02-1349156695.35-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:45:01.412+10 504094
-2012-10-02-1349156702.65-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:45:06.931+10 340538
-2012-10-02-1349156707.22-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:45:11.35+10 346248
-2012-10-02-1349156711.86-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:45:14.747+10 243754
-2012-10-02-1349156716.46-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:45:26.616+10 852276
-2012-10-02-1349156749.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:45:53.57+10 348296
-2012-10-02-1349156754.62-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:46:00.008+10 449990
-2012-10-02-1349156760.16-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:46:10.55+10 860134
-2012-10-02-1349156770.75-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:46:16.628+10 491656
-2012-10-02-1349156778.48-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:46:25.623+10 602234
-2012-10-02-1349156788.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:46:34.888+10 524532
-2012-10-02-1349156880.83-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:48:03.934+10 261986
-2012-10-02-1349156887.36-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 15:48:18.196+10 909448
-2012-10-02-1349156898.32-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 15:48:23.037+10 397448
-2012-10-02-1349156903.65-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 15:48:28.718+10 426112
-2012-10-02-1349156908.84-demo.wav 40091 Fire Mgt CanberraBlackMnt 2012-10-02 15:48:34.412+10 424838
-2012-10-02-1349156915.46-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:48:41.425+10 499548
-2012-10-02-1349156921.54-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:48:49.367+10 655450
-2012-10-02-1349156929.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:48:58.842+10 756930
-2012-10-02-1349156939.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:49:03.837+10 397448
-2012-10-02-1349156944.54-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:49:22.858+10 1530860
-2012-10-02-1349156965.28-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:49:30.685+10 394772
-2012-10-02-1349156970.8-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:49:35.423+10 376916
-2012-10-02-1349156976.05-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:49:57.815+10 1488482
-2012-10-02-1349156997.95-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:01.102+10 266376
-2012-10-02-1349157001.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:05.292+10 325768
-2012-10-02-1349157005.48-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:10.956+10 460936
-2012-10-02-1349157011.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:14.592+10 261386
-2012-10-02-1349157014.71-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:17.247+10 209466
-2012-10-02-1349157017.37-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:26.283+10 687344
-2012-10-02-1349157026.46-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:29.17+10 194986
-2012-10-02-1349157054.79-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:50:58.202+10 286856
-2012-10-02-1349157058.36-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:01.392+10 252040
-2012-10-02-1349157061.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:08.074+10 532616
-2012-10-02-1349157068.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:11.023+10 227420
-2012-10-02-1349157071.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:13.73+10 180852
-2012-10-02-1349157073.86-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:17.637+10 305964
-2012-10-02-1349157077.85-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:28.765+10 902432
-2012-10-02-1349157088.9-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:33.151+10 291622
-2012-10-02-1349157093.28-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:51:36.899+10 245486
-2012-10-02-1349157120.67-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 15:52:06.92+10 526472
-2012-10-02-1349157127.67-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 15:52:11.527+10 325768
-2012-10-02-1349157219.8-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:53:43.34+10 295404
-2012-10-02-1349157224.55-demo.wav 40067 CanberraBlackMnt 2012-10-02 15:53:48.429+10 316024
-2012-10-02-1349157231.18-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:54:05.318+10 1187976
-2012-10-02-1349157245.94-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:54:12.821+10 575624
-2012-10-02-1349157255.63-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:54:24.689+10 759944
-2012-10-02-1349157266.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:54:32.475+10 515122
-2012-10-02-1349157273.19-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:54:43.96+10 901256
-2012-10-02-1349157284.72-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:54:51.676+10 583236
-2012-10-02-1349157377.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 15:56:21.602+10 314638
-2012-10-02-1349157383.3-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:56:35.022+10 983176
-2012-10-02-1349157395.18-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:56:37.591+10 204936
-2012-10-02-1349157398.4-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:56:42.156+10 317576
-2012-10-02-1349157403.57-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:56:46.465+10 243826
-2012-10-02-1349157406.59-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:56:55.225+10 717680
-2012-10-02-1349157416.15-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:56:59.453+10 248272
-2012-10-02-1349157419.85-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:57:02.882+10 228694
-2012-10-02-1349157423.09-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:57:06.28+10 256244
-2012-10-02-1349157465.01-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:57:51.535+10 544904
-2012-10-02-1349157471.83-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:57:57.868+10 505992
-2012-10-02-1349157478.06-demo.wav 44028 CanberraMtAinsli 2012-10-02 15:58:04.455+10 535768
-2012-10-02-1349157485.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:58:14.592+10 782388
-2012-10-02-1349157540.5-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 15:59:06.303+10 486190
-2012-10-02-1349157547.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:59:13.698+10 508040
-2012-10-02-1349157554.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:59:18.43+10 303240
-2012-10-02-1349157558.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:59:27.061+10 700530
-2012-10-02-1349157567.22-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:59:37.042+10 768648
-2012-10-02-1349157577.95-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 15:59:49.529+10 967958
-2012-10-02-1349157670.57-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:01:13.099+10 209032
-2012-10-02-1349157673.45-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:01:16.513+10 256136
-2012-10-02-1349157676.74-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:01:19.72+10 247944
-2012-10-02-1349157680.18-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:01:22.528+10 196744
-2012-10-02-1349157683.08-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 16:01:39.437+10 1370248
-2012-10-02-1349157699.56-demo.wav 44010 ACTION 44010 CanberraBlackMnt 2012-10-02 16:01:43.082+10 297096
-2012-10-02-1349157704.99-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:01:58.353+10 1117818
-2012-10-02-1349157720.91-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:02:03.764+10 241800
-2012-10-02-1349157723.89-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:02:12.095+10 676432
-2012-10-02-1349157732.85-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:02:15.446+10 212852
-2012-10-02-1349157736.59-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:02:26.24+10 807748
-2012-10-02-1349157746.92-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:02:30.613+10 311416
-2012-10-02-1349157750.91-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:02:42.05+10 870490
-2012-10-02-1349157762.17-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:02:46.956+10 351176
-2012-10-02-1349157767.07-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:02:50.977+10 276552
-2012-10-02-1349157772.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:02:58.317+10 401922
-2012-10-02-1349157778.44-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:03:03.664+10 387696
-2012-10-02-1349157784.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:03:16.647+10 1003656
-2012-10-02-1349157799.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:03:23.812+10 385160
-2012-10-02-1349157803.93-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:03:29.22+10 443356
-2012-10-02-1349157809.51-demo.wav 40093 PCL Rural CanberraBlackMnt 2012-10-02 16:03:36.682+10 602248
-2012-10-02-1349157818.24-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:03:43.766+10 465032
-2012-10-02-1349157824.62-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:03:48.505+10 327816
-2012-10-02-1349157828.91-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:03:55.609+10 563180
-2012-10-02-1349157835.85-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:04:02.005+10 458150
-2012-10-02-1349157842.31-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:04:05.737+10 226122
-2012-10-02-1349157846.2-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:04:15.404+10 770284
-2012-10-02-1349157855.71-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:04:18.627+10 243848
-2012-10-02-1349157858.86-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:04:35.202+10 1316446
-2012-10-02-1349157875.34-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:04:38.902+10 239172
-2012-10-02-1349157879.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:04:45.392+10 508726
-2012-10-02-1349157885.64-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:04:49.455+10 321672
-2012-10-02-1349157889.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:04:53.562+10 319604
-2012-10-02-1349157894.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:05:07.057+10 1085576
-2012-10-02-1349157940.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:05:44.296+10 328708
-2012-10-02-1349157944.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:05:47.164+10 217224
-2012-10-02-1349157947.41-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:05:56.635+10 722328
-2012-10-02-1349157956.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:06:05.152+10 671018
-2012-10-02-1349157965.49-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:11.966+10 543662
-2012-10-02-1349157974.83-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:20.23+10 453650
-2012-10-02-1349157980.67-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:27.965+10 612472
-2012-10-02-1349157988.62-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:38.844+10 860296
-2012-10-02-1349158001.04-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:45.864+10 405168
-2012-10-02-1349158006.14-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:50.267+10 348296
-2012-10-02-1349158010.68-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:53.506+10 235656
-2012-10-02-1349158013.8-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:06:57.079+10 272870
-2012-10-02-1349158017.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:04.17+10 557192
-2012-10-02-1349158024.45-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:07.07+10 219272
-2012-10-02-1349158027.28-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:10.624+10 282760
-2012-10-02-1349158031.25-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:15.473+10 354296
-2012-10-02-1349158035.64-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:19.477+10 269934
-2012-10-02-1349158040.51-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:27.771+10 610756
-2012-10-02-1349158049.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:40.581+10 911036
-2012-10-02-1349158061.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:46.125+10 397772
-2012-10-02-1349158066.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:53.551+10 587912
-2012-10-02-1349158073.78-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:07:56.656+10 243848
-2012-10-02-1349158076.79-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:08:02.01+10 438408
-2012-10-02-1349158082.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:08:06.934+10 375456
-2012-10-02-1349158164.46-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:09:27.36+10 245584
-2012-10-02-1349158168.15-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:09:31.017+10 241800
-2012-10-02-1349158172.0-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:09:37.494+10 462978
-2012-10-02-1349158177.61-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:09:42.242+10 388340
-2012-10-02-1349158214.66-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:10:17.191+10 213156
-2012-10-02-1349158218.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:10:25.003+10 546952
-2012-10-02-1349158247.04-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:10:50.609+10 300624
-2012-10-02-1349158251.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:10:54.69+10 307336
-2012-10-02-1349158256.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:11:13.546+10 1409276
-2012-10-02-1349158274.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:11:19.575+10 429820
-2012-10-02-1349158280.91-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:11:32.878+10 1003390
-2012-10-02-1349158295.21-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:11:46.993+10 991336
-2012-10-02-1349158307.29-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:11:51.925+10 387302
-2012-10-02-1349158312.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:11:57.236+10 409064
-2012-10-02-1349158317.55-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:02.692+10 412118
-2012-10-02-1349158323.38-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:06.825+10 274804
-2012-10-02-1349158328.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:11.611+10 236034
-2012-10-02-1349158331.95-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:12:17.545+10 467100
-2012-10-02-1349158337.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:12:25.736+10 665736
-2012-10-02-1349158345.87-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:12:28.582+10 229390
-2012-10-02-1349158348.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:12:32.277+10 260966
-2012-10-02-1349158352.73-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:39.549+10 571722
-2012-10-02-1349158359.78-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:43.427+10 305288
-2012-10-02-1349158363.73-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:48.691+10 411160
-2012-10-02-1349158368.82-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:12:55.135+10 524924
-2012-10-02-1349158525.9-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:15:28.441+10 214804
-2012-10-02-1349158530.17-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:15:34.137+10 336008
-2012-10-02-1349158534.37-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:15:36.66+10 194696
-2012-10-02-1349158559.66-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:16:04.491+10 407688
-2012-10-02-1349158564.61-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:16:07.603+10 254088
-2012-10-02-1349158567.76-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:16:13.045+10 444552
-2012-10-02-1349158573.75-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:16:17.003+10 274556
-2012-10-02-1349158577.35-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:16:24.838+10 609490
-2012-10-02-1349158586.27-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:16:33.967+10 646350
-2012-10-02-1349158594.41-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:16:41.815+10 620680
-2012-10-02-1349158602.16-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:16:53.494+10 948354
-2012-10-02-1349158613.61-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:16:59.51+10 478604
-2012-10-02-1349158620.74-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:17:06.565+10 488212
-2012-10-02-1349158627.82-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:17:11.096+10 276616
-2012-10-02-1349158659.64-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:17:47.685+10 675370
-2012-10-02-1349158668.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:18:00.675+10 1044616
-2012-10-02-1349158754.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:19:17.565+10 245650
-2012-10-02-1349158759.07-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:19:25.486+10 538760
-2012-10-02-1349158766.38-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:19:41.197+10 1241028
-2012-10-02-1349158781.44-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:19:47.208+10 485512
-2012-10-02-1349158787.71-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:19:52.153+10 374914
-2012-10-02-1349158889.73-demo.wav i1045200 CanberraMtAinsli 2012-10-02 16:21:32.184+10 208116
-2012-10-02-1349158894.24-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:21:52.179+10 1505416
-2012-10-02-1349158989.99-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:23:12.489+10 209548
-2012-10-02-1349158993.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:23:19.74+10 498826
-2012-10-02-1349159000.58-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:23:36.177+10 1252286
-2012-10-02-1349159016.93-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:23:41.14+10 352198
-2012-10-02-1349159024.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:23:48.702+10 391304
-2012-10-02-1349159028.92-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:23:52.527+10 303190
-2012-10-02-1349159033.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:24:10.128+10 1427014
-2012-10-02-1349159051.15-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:24:21.975+10 905134
-2012-10-02-1349159086.94-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:24:50.908+10 336008
-2012-10-02-1349159092.77-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:24:55.566+10 235656
-2012-10-02-1349159096.69-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:03.541+10 573576
-2012-10-02-1349159106.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:10.017+10 256272
-2012-10-02-1349159110.2-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:12.604+10 190866
-2012-10-02-1349159112.86-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:19.256+10 531426
-2012-10-02-1349159120.14-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:28.236+10 679628
-2012-10-02-1349159128.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:30.71+10 194696
-2012-10-02-1349159131.82-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:37.729+10 499848
-2012-10-02-1349159138.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:42.099+10 304700
-2012-10-02-1349159143.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:25:56.376+10 1089092
-2012-10-02-1349159156.51-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:26:05.995+10 794760
-2012-10-02-1349159166.16-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:26:10.669+10 371066
-2012-10-02-1349159170.95-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:26:21.038+10 829552
-2012-10-02-1349159181.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:26:30.227+10 752672
-2012-10-02-1349159193.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:26:48.825+10 1263178
-2012-10-02-1349159210.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:26:53.938+10 305288
-2012-10-02-1349159214.13-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:26:58.972+10 407688
-2012-10-02-1349159219.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:27:03.006+10 329864
-2012-10-02-1349159224.21-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:27:28.715+10 2048204
-2012-10-02-1349159248.88-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:27:34.169+10 444552
-2012-10-02-1349159254.95-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:27:58.857+10 1988932
-2012-10-02-1349159279.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:28:05.491+10 482996
-2012-10-02-1349159396.22-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:01.531+10 446098
-2012-10-02-1349159401.7-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:04.249+10 215176
-2012-10-02-1349159404.38-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:06.802+10 204936
-2012-10-02-1349159406.93-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:09.078+10 182406
-2012-10-02-1349159409.2-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:13.973+10 401544
-2012-10-02-1349159414.18-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:30:27.282+10 1097864
-2012-10-02-1349159427.59-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:30:31.187+10 303240
-2012-10-02-1349159431.31-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:30:34.091+10 235656
-2012-10-02-1349159434.22-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:30:36.467+10 190600
-2012-10-02-1349159436.64-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:30:39.191+10 215176
-2012-10-02-1349159439.45-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:30:44.628+10 398772
-2012-10-02-1349159445.38-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:54.338+10 748606
-2012-10-02-1349159454.95-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:30:58.318+10 284808
-2012-10-02-1349159459.09-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:31:06+10 577446
-2012-10-02-1349159466.23-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:31:08.879+10 223368
-2012-10-02-1349159469.16-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:31:12.9+10 315528
-2012-10-02-1349159473.13-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:31:18.353+10 438300
-2012-10-02-1349159478.47-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:31:30.377+10 998822
-2012-10-02-1349159490.68-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:31:40.61+10 835720
-2012-10-02-1349159501.13-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:31:49.712+10 719436
-2012-10-02-1349159512.7-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:31:58.862+10 517990
-2012-10-02-1349159519.15-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:32:07.49+10 695180
-2012-10-02-1349159528.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:32:13.776+10 481240
-2012-10-02-1349159534.67-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:32:18.705+10 340104
-2012-10-02-1349159538.99-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:32:22.588+10 300494
-2012-10-02-1349159574.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:32:57.283+10 268224
-2012-10-02-1349159595.73-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:33:17.989+10 192648
-2012-10-02-1349159598.22-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:33:20.765+10 213128
-2012-10-02-1349159602.22-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:33:27.037+10 407688
-2012-10-02-1349159607.53-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:33:31.633+10 346248
-2012-10-02-1349159611.84-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:33:34.378+10 215176
-2012-10-02-1349159614.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:33:39.82+10 442458
-2012-10-02-1349159620.63-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:33:55.178+10 1218086
-2012-10-02-1349159635.72-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:33:59.309+10 303240
-2012-10-02-1349159639.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:34:05.739+10 528168
-2012-10-02-1349159645.86-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:34:15.599+10 816924
-2012-10-02-1349159658.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:34:26.032+10 598014
-2012-10-02-1349159666.45-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:34:29.989+10 295048
-2012-10-02-1349159670.36-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:34:39.733+10 788616
-2012-10-02-1349159680.37-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:34:43.315+10 249992
-2012-10-02-1349159683.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:35:06.509+10 1901320
-2012-10-02-1349159707.41-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:35:18.879+10 963756
-2012-10-02-1349159844.19-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:37:26.778+10 218914
-2012-10-02-1349159846.9-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:37:30.176+10 276616
-2012-10-02-1349159850.36-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:37:34.668+10 362632
-2012-10-02-1349159855.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:37:39.503+10 360584
-2012-10-02-1349159862.2-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:37:59.515+10 1450120
-2012-10-02-1349159882.39-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:19.894+10 1466504
-2012-10-02-1349159900.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:23.068+10 258184
-2012-10-02-1349159903.2-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:32.799+10 805000
-2012-10-02-1349159912.93-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:38.383+10 455446
-2012-10-02-1349159919.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:42.665+10 195422
-2012-10-02-1349159922.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:49.132+10 516908
-2012-10-02-1349159929.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:52.282+10 194452
-2012-10-02-1349159932.86-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:38:57.911+10 425678
-2012-10-02-1349159938.99-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:39:09.077+10 850056
-2012-10-02-1349160008.99-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:13.041+10 340520
-2012-10-02-1349160014.3-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:16.646+10 198792
-2012-10-02-1349160016.81-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:18.959+10 182404
-2012-10-02-1349160019.45-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:23.426+10 333960
-2012-10-02-1349160023.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:27.287+10 315318
-2012-10-02-1349160027.76-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:31.07+10 276474
-2012-10-02-1349160032.84-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:38.857+10 504712
-2012-10-02-1349160039.63-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:42.512+10 201268
-2012-10-02-1349160042.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:40:52.677+10 823362
-2012-10-02-1349160055.58-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:41:00.546+10 413080
-2012-10-02-1349160061.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:41:04.025+10 190040
-2012-10-02-1349160066.36-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:41:10.137+10 304218
-2012-10-02-1349160070.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:41:13.008+10 221320
-2012-10-02-1349160130.44-demo.wav 44028 CanberraMtAinsli 2012-10-02 16:42:14.677+10 354468
-2012-10-02-1349160134.97-demo.wav 44028 CanberraMtAinsli 2012-10-02 16:42:21.759+10 567432
-2012-10-02-1349160142.03-demo.wav 44028 CanberraMtAinsli 2012-10-02 16:42:24.313+10 194694
-2012-10-02-1349160144.6-demo.wav 44028 CanberraMtAinsli 2012-10-02 16:42:29.673+10 428036
-2012-10-02-1349160213.54-demo.wav 40067 CanberraMtAinsli 2012-10-02 16:43:36.029+10 209542
-2012-10-02-1349160219.41-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:43:44.675+10 442504
-2012-10-02-1349160225.91-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:43:49.602+10 311432
-2012-10-02-1349160230.22-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:43:54.179+10 333960
-2012-10-02-1349160234.51-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:44:09.898+10 1261846
-2012-10-02-1349160250.65-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:21.654+10 921492
-2012-10-02-1349160261.85-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:24.996+10 266376
-2012-10-02-1349160265.68-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:31.06+10 452744
-2012-10-02-1349160271.18-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:40.853+10 789186
-2012-10-02-1349160281.41-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:45.255+10 322436
-2012-10-02-1349160286.1-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:49.673+10 301192
-2012-10-02-1349160290.77-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:44:57.984+10 604296
-2012-10-02-1349160298.2-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:45:01.352+10 266376
-2012-10-02-1349160302.16-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:45:10.013+10 656018
-2012-10-02-1349160310.92-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 16:45:13.641+10 229512
-2012-10-02-1349160314.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:45:29.52+10 1265800
-2012-10-02-1349160330.03-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:45:33.088+10 258184
-2012-10-02-1349160333.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:45:43.372+10 812766
-2012-10-02-1349160343.89-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:45:51.381+10 630920
-2012-10-02-1349160352.92-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:45:58.335+10 454888
-2012-10-02-1349160359.59-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:46:04.717+10 432264
-2012-10-02-1349160365.87-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:46:24.879+10 1588410
-2012-10-02-1349160386.44-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:46:29.966+10 297080
-2012-10-02-1349160390.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:46:35.118+10 368776
-2012-10-02-1349160395.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:46:38.165+10 202172
-2012-10-02-1349160435.51-demo.wav i1045200 CanberraMtAinsli 2012-10-02 16:47:18.012+10 208072
-2012-10-02-1349160461.95-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:47:46.04+10 342270
-2012-10-02-1349160467.75-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:02.047+10 1197482
-2012-10-02-1349160483.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:06.404+10 249580
-2012-10-02-1349160488.21-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:11.127+10 245896
-2012-10-02-1349160492.76-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:17.687+10 410162
-2012-10-02-1349160498.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:24.741+10 521572
-2012-10-02-1349160506.34-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:29.113+10 195506
-2012-10-02-1349160509.87-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:34.81+10 390554
-2012-10-02-1349160515.26-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:38.082+10 198246
-2012-10-02-1349160522.17-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:48.577+10 513036
-2012-10-02-1349160529.66-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:48:56.952+10 561208
-2012-10-02-1349160538.28-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:49:01.243+10 188904
-2012-10-02-1349160542.11-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:49:23.448+10 1793646
-2012-10-02-1349160564.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:49:42.772+10 1500300
-2012-10-02-1349160583.63-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:49:49.933+10 528794
-2012-10-02-1349160590.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:49:56.208+10 512136
-2012-10-02-1349160596.68-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:50:01.26+10 385160
-2012-10-02-1349160601.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:50:04.807+10 274568
-2012-10-02-1349160666.1-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:51:08.583+10 210012
-2012-10-02-1349160669.57-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:51:19.292+10 812320
-2012-10-02-1349160679.42-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:51:25.453+10 508040
-2012-10-02-1349160685.57-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:51:30.799+10 439770
-2012-10-02-1349160690.96-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:51:35.363+10 326834
-2012-10-02-1349160695.99-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:51:39.798+10 271438
-2012-10-02-1349160701.4-demo.wav 40067 CanberraBlackMnt 2012-10-02 16:52:02.844+10 1794272
-2012-10-02-1349160773.45-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:52:55.956+10 208216
-2012-10-02-1349160776.14-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:52:58.875+10 227464
-2012-10-02-1349160779.01-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:53:04.887+10 495752
-2012-10-02-1349160785.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:53:09.966+10 354572
-2012-10-02-1349160912.14-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:55:16.067+10 329996
-2012-10-02-1349160917.04-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:55:19.895+10 241800
-2012-10-02-1349160920.19-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:55:27.893+10 647302
-2012-10-02-1349160928.19-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:55:31.474+10 253266
-2012-10-02-1349160931.73-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 16:55:35.141+10 227570
-2012-10-02-1349161007.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 16:56:51.091+10 282682
-2012-10-02-1349161012.68-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:56:57.919+10 442504
-2012-10-02-1349161018.21-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:04.427+10 522376
-2012-10-02-1349161024.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:10.36+10 489544
-2012-10-02-1349161030.63-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:16.854+10 522306
-2012-10-02-1349161036.97-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:23.842+10 545940
-2012-10-02-1349161044.07-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:27.928+10 323160
-2012-10-02-1349161048.05-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:31.519+10 227614
-2012-10-02-1349161052.27-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:36.976+10 337336
-2012-10-02-1349161057.79-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:46.121+10 684940
-2012-10-02-1349161066.24-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:51.005+10 391054
-2012-10-02-1349161071.81-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:57:55.09+10 227242
-2012-10-02-1349161078.22-demo.wav 30004 L GEORG CanberraMtAinsli 2012-10-02 16:58:35.114+10 3082834
-2012-10-02-1349161190.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:59:53.491+10 240052
-2012-10-02-1349161195.13-demo.wav 44028 CanberraBlackMnt 2012-10-02 16:59:59.058+10 329864
-2012-10-02-1349161200.8-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:00:03.061+10 192648
-2012-10-02-1349161204.33-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:00:09.17+10 405640
-2012-10-02-1349161209.83-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:00:12.441+10 219272
-2012-10-02-1349161212.57-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:00:15.217+10 223368
-2012-10-02-1349161215.52-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:00:18.072+10 215110
-2012-10-02-1349161590.45-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:06:33.861+10 286920
-2012-10-02-1349161596.32-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:06:41.602+10 444552
-2012-10-02-1349161602.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:06:48.894+10 542856
-2012-10-02-1349161609.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:06:58.31+10 774834
-2012-10-02-1349161621.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:07:09.446+10 701450
-2012-10-02-1349161629.91-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:07:12.491+10 215176
-2012-10-02-1349161632.87-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:07:19.269+10 538720
-2012-10-02-1349161639.54-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:07:24.674+10 374240
-2012-10-02-1349161645.56-demo.wav i1045200 CanberraMtAinsli 2012-10-02 17:07:43.464+10 1503268
-2012-10-02-1349161663.77-demo.wav i1045200 CanberraMtAinsli 2012-10-02 17:07:50.675+10 579720
-2012-10-02-1349161671.05-demo.wav i1045200 CanberraMtAinsli 2012-10-02 17:07:55.141+10 344188
-2012-10-02-1349161676.97-demo.wav i1045200 CanberraMtAinsli 2012-10-02 17:08:04.17+10 602636
-2012-10-02-1349161707.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:08:30.185+10 231560
-2012-10-02-1349161710.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:08:33.175+10 221320
-2012-10-02-1349161713.46-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:08:35.945+10 209032
-2012-10-02-1349161716.79-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:08:42.575+10 485510
-2012-10-02-1349161722.86-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:08:46.733+10 305488
-2012-10-02-1349161727.15-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:08:51.965+10 362162
-2012-10-02-1349161732.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:09:15.677+10 1912254
-2012-10-02-1349161756.01-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:09:18.669+10 223368
-2012-10-02-1349161758.97-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:09:43.869+10 2062974
-2012-10-02-1349161784.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:09:49.381+10 382904
-2012-10-02-1349161789.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:09:53.512+10 330102
-2012-10-02-1349161793.81-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:09:56.559+10 186182
-2012-10-02-1349161797.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:10:06.271+10 767934
-2012-10-02-1349161807.0-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:10:16.575+10 805000
-2012-10-02-1349161817.01-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:10:26.446+10 792706
-2012-10-02-1349161827.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:10:37.447+10 851966
-2012-10-02-1349161878.05-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:11:20.762+10 228906
-2012-10-02-1349161881.48-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:11:24.542+10 258184
-2012-10-02-1349161885.05-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:11:29.064+10 338056
-2012-10-02-1349161889.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:11:34.081+10 372684
-2012-10-02-1349161924.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:12:07.073+10 231340
-2012-10-02-1349161928.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:12:11.412+10 268424
-2012-10-02-1349161931.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:12:16.101+10 385160
-2012-10-02-1349161936.22-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:12:29.696+10 1109064
-2012-10-02-1349161949.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:12:34.451+10 331132
-2012-10-02-1349161955.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:12:40.602+10 417824
-2012-10-02-1349162000.89-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:13:25.6+10 395570
-2012-10-02-1349162005.83-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:13:28.36+10 215176
-2012-10-02-1349162008.92-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:13:34.28+10 450696
-2012-10-02-1349162014.4-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:13:40.84+10 542854
-2012-10-02-1349162021.24-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:13:44.015+10 227794
-2012-10-02-1349162024.13-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:13:50.525+10 481168
-2012-10-02-1349162033.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:01.691+10 687328
-2012-10-02-1349162042.6-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:08.232+10 469128
-2012-10-02-1349162049.16-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:16.239+10 592236
-2012-10-02-1349162057.98-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:33.449+10 1237268
-2012-10-02-1349162074.29-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:40.372+10 510776
-2012-10-02-1349162086.1-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:50.47+10 364718
-2012-10-02-1349162090.76-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:14:58.86+10 617890
-2012-10-02-1349162099.15-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:15:02.608+10 246652
-2012-10-02-1349162103.06-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:15:19.324+10 1365642
-2012-10-02-1349162121.61-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:15:30.839+10 770090
-2012-10-02-1349162131.33-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:15:46.563+10 1237380
-2012-10-02-1349162146.74-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:15:57.49+10 839128
-2012-10-02-1349162157.71-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:16:16.017+10 1525322
-2012-10-02-1349162176.14-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:16:22.631+10 493120
-2012-10-02-1349162182.91-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:16:26.746+10 257264
-2012-10-02-1349162218.17-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:17:01.74+10 293388
-2012-10-02-1349162246.68-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:17:29.429+10 229512
-2012-10-02-1349162249.99-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:17:34.899+10 411784
-2012-10-02-1349162255.59-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:17:40.633+10 422024
-2012-10-02-1349162260.9-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:17:43.258+10 196744
-2012-10-02-1349162263.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:17:47.5+10 329850
-2012-10-02-1349162267.76-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:17:51.344+10 298650
-2012-10-02-1349162271.87-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:18:03.096+10 942216
-2012-10-02-1349162283.38-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:18:05.725+10 194696
-2012-10-02-1349162286.4-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:18:26.552+10 1627170
-2012-10-02-1349162306.67-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:18:43.307+10 1328194
-2012-10-02-1349162323.43-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:18:47.263+10 264378
-2012-10-02-1349162327.7-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:18:58.012+10 863470
-2012-10-02-1349162338.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:03.595+10 409736
-2012-10-02-1349162344.92-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:23.325+10 1540044
-2012-10-02-1349162363.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:25.879+10 202888
-2012-10-02-1349162366.0-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:39.37+10 1074852
-2012-10-02-1349162379.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:48.386+10 739464
-2012-10-02-1349162388.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:51.514+10 251976
-2012-10-02-1349162391.72-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:19:55.269+10 281176
-2012-10-02-1349162396.2-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:01.093+10 411370
-2012-10-02-1349162402.11-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:07.547+10 456830
-2012-10-02-1349162407.92-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:13.719+10 487560
-2012-10-02-1349162414.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:19.391+10 436360
-2012-10-02-1349162445.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:48.486+10 276616
-2012-10-02-1349162448.61-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:51.067+10 209032
-2012-10-02-1349162451.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:20:58.039+10 551048
-2012-10-02-1349162458.67-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:21:02.871+10 334318
-2012-10-02-1349162502.6-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:21:46.527+10 329128
-2012-10-02-1349162507.93-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:21:55.139+10 600120
-2012-10-02-1349162515.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:22:03.322+10 663682
-2012-10-02-1349162525.74-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:22:11.06+10 448642
-2012-10-02-1349162533.15-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:22:18.889+10 481416
-2012-10-02-1349162557.81-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:22:41.301+10 295048
-2012-10-02-1349162562.2-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:22:54.786+10 1051064
-2012-10-02-1349162575.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:22:58.819+10 290952
-2012-10-02-1349162579.11-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:23:07.941+10 731610
-2012-10-02-1349162588.26-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:23:15.089+10 573576
-2012-10-02-1349162596.72-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:23:25.964+10 776328
-2012-10-02-1349162606.3-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:23:29.864+10 301192
-2012-10-02-1349162610.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:23:41.214+10 871096
-2012-10-02-1349162622.1-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 17:23:51.467+10 784242
-2012-10-02-1349162632.33-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:23:56.726+10 367016
-2012-10-02-1349162637.57-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:24:13.734+10 1353104
-2012-10-02-1349162688.3-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:24:53.365+10 425258
-2012-10-02-1349162693.58-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:24:57.161+10 301192
-2012-10-02-1349162697.98-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:25:10.277+10 963262
-2012-10-02-1349162711.18-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:25:29.719+10 1547700
-2012-10-02-1349162730.6-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:25:34.361+10 315984
-2012-10-02-1349162734.76-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:25:45.643+10 913544
-2012-10-02-1349162764.94-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:26:11.343+10 538760
-2012-10-02-1349162772.25-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:26:34.4+10 1851624
-2012-10-02-1349162849.4-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:33.02+10 303636
-2012-10-02-1349162854.53-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:37.71+10 265994
-2012-10-02-1349162857.83-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:41.935+10 346248
-2012-10-02-1349162862.5-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:48.246+10 483272
-2012-10-02-1349162868.37-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:52.169+10 264656
-2012-10-02-1349162872.45-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:55.966+10 233084
-2012-10-02-1349162876.54-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:27:59.378+10 195500
-2012-10-02-1349162879.5-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:28:04.3+10 340618
-2012-10-02-1349162884.42-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:28:10.282+10 433678
-2012-10-02-1349162890.63-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:28:23.406+10 1070612
-2012-10-02-1349162903.69-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:28:31.784+10 679614
-2012-10-02-1349162912.41-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:28:35.588+10 227644
-2012-10-02-1349162915.79-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:28:39.074+10 214696
-2012-10-02-1349162919.51-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:28:55.948+10 1381298
-2012-10-02-1349162936.29-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:29:01.323+10 422024
-2012-10-02-1349162942.2-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:29:13.587+10 954834
-2012-10-02-1349162953.88-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:29:16.059+10 182408
-2012-10-02-1349162956.52-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:29:25.194+10 729114
-2012-10-02-1349162965.48-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:29:31.699+10 468666
-2012-10-02-1349162972.0-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:29:42.672+10 835582
-2012-10-02-1349162982.88-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:29:46.396+10 225890
-2012-10-02-1349163074.42-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:31:16.942+10 210026
-2012-10-02-1349163078.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:31:33.131+10 1262486
-2012-10-02-1349163093.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:31:36.458+10 235656
-2012-10-02-1349163097.17-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:32:40.698+10 5308736
-2012-10-02-1349163160.98-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:32:43.538+10 200408
-2012-10-02-1349163165.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:32:58.588+10 1111774
-2012-10-02-1349163252.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:34:14.696+10 207760
-2012-10-02-1349163296.86-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:35:08.536+10 979628
-2012-10-02-1349163308.66-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:35:17.021+10 699390
-2012-10-02-1349163317.3-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:35:23.322+10 502814
-2012-10-02-1349163323.52-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:35:27.645+10 336106
-2012-10-02-1349163328.47-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:35:57.208+10 2380182
-2012-10-02-1349163358.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:36:04.61+10 542364
-2012-10-02-1349163446.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:37:28.486+10 208524
-2012-10-02-1349163449.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:37:34.868+10 443840
-2012-10-02-1349163454.99-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:37:41.059+10 512134
-2012-10-02-1349163461.2-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:37:57.472+10 1354224
-2012-10-02-1349163477.78-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:38:08.479+10 863974
-2012-10-02-1349163490.47-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:38:13.377+10 198390
-2012-10-02-1349163542.5-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:39:06.336+10 320632
-2012-10-02-1349163548.71-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:39:12.271+10 297272
-2012-10-02-1349163553.4-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:39:25.461+10 1008778
-2012-10-02-1349163565.74-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:39:31.142+10 420892
-2012-10-02-1349163571.76-demo.wav 44028 CanberraMtAinsli 2012-10-02 17:39:35.336+10 278022
-2012-10-02-1349163577.23-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:39:45.957+10 731350
-2012-10-02-1349163586.5-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:39:50.106+10 305288
-2012-10-02-1349163590.86-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:40:01.323+10 878728
-2012-10-02-1349163602.65-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:40:11.647+10 753092
-2012-10-02-1349163611.77-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:40:19.794+10 661160
-2012-10-02-1349163723.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:42:06.034+10 208184
-2012-10-02-1349163801.65-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:43:25.452+10 315862
-2012-10-02-1349163810.0-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:43:32.614+10 219272
-2012-10-02-1349163813.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:43:41.898+10 686694
-2012-10-02-1349163822.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:44:01.168+10 1580082
-2012-10-02-1349163841.47-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:44:04.74+10 233416
-2012-10-02-1349163847.89-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 17:44:42.443+10 2880452
-2012-10-02-1349163883.19-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:44:53.166+10 835302
-2012-10-02-1349163893.29-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:44:57.146+10 285090
-2012-10-02-1349163945.81-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:45:49.772+10 329972
-2012-10-02-1349163950.19-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:45:53.592+10 282760
-2012-10-02-1349163953.9-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:46:00.002+10 509652
-2012-10-02-1349163960.16-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:46:05.039+10 352724
-2012-10-02-1349163968.78-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 17:46:17.83+10 757696
-2012-10-02-1349164053.6-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:47:36.093+10 210234
-2012-10-02-1349164102.0-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:48:26.473+10 376272
-2012-10-02-1349164107.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:48:31.149+10 312654
-2012-10-02-1349164112.03-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:48:46.134+10 1133456
-2012-10-02-1349164126.26-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:48:50.802+10 378666
-2012-10-02-1349164196.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:49:59.006+10 209750
-2012-10-02-1349164200.04-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:03.013+10 248304
-2012-10-02-1349164203.17-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:09.317+10 516232
-2012-10-02-1349164211.48-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:19.083+10 639112
-2012-10-02-1349164219.72-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:28.865+10 768136
-2012-10-02-1349164229.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:37.467+10 673542
-2012-10-02-1349164237.59-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:44.09+10 490610
-2012-10-02-1349164244.24-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:48.605+10 348982
-2012-10-02-1349164248.86-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:54.033+10 430260
-2012-10-02-1349164254.31-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:50:57.383+10 252842
-2012-10-02-1349164258.29-demo.wav 44028 CanberraBlackMnt 2012-10-02 17:51:08.489+10 798836
-2012-10-02-1349164270.12-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 17:51:17.899+10 650756
-2012-10-02-1349164356.29-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:52:38.821+10 210098
-2012-10-02-1349164470.91-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:54:33.964+10 257584
-2012-10-02-1349164475.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:54:39.98+10 371786
-2012-10-02-1349164480.71-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:55:01.955+10 1767254
-2012-10-02-1349164502.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:55:05.009+10 189200
-2012-10-02-1349164567.33-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:09.948+10 210054
-2012-10-02-1349164571.01-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:14.702+10 297442
-2012-10-02-1349164575.03-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:18.011+10 249992
-2012-10-02-1349164579.13-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:23.48+10 364680
-2012-10-02-1349164583.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:27.338+10 301162
-2012-10-02-1349164587.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:30.162+10 204926
-2012-10-02-1349164590.32-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:32.763+10 181796
-2012-10-02-1349164594.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 17:56:39.481+10 434224
-2012-10-02-1349164628.98-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 17:57:14.825+10 491070
-2012-10-02-1349164635.31-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 17:57:21.52+10 520328
-2012-10-02-1349164642.8-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 17:57:27.415+10 386516
-2012-10-02-1349164650.44-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 17:57:36.438+10 503944
-2012-10-02-1349164657.06-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 17:57:50.217+10 1057496
-2012-10-02-1349164670.38-demo.wav 40093 PCL Rural CanberraMtAinsli 2012-10-02 17:57:54.191+10 318880
-2012-10-02-1349164773.29-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 17:59:37.982+10 393818
-2012-10-02-1349164999.36-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:03:22.969+10 302788
-2012-10-02-1349165004.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:03:29.847+10 445182
-2012-10-02-1349165010.0-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:03:38.703+10 731270
-2012-10-02-1349165019.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:03:45.006+10 463956
-2012-10-02-1349165026.02-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:03:53.001+10 585352
-2012-10-02-1349165035.03-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:03:58.139+10 262226
-2012-10-02-1349165039.94-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:04:03.678+10 315528
-2012-10-02-1349165044.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:04:14.527+10 827528
-2012-10-02-1349165055.97-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:04:20.352+10 368776
-2012-10-02-1349165182.72-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:06:26.195+10 290272
-2012-10-02-1349165186.76-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:06:36.293+10 798856
-2012-10-02-1349165198.04-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:06:46.482+10 704064
-2012-10-02-1349165207.42-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:06:55.305+10 660290
-2012-10-02-1349165215.9-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:07:01.579+10 475272
-2012-10-02-1349165223.86-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:07:10.473+10 554946
-2012-10-02-1349165230.86-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:07:15.459+10 383026
-2012-10-02-1349165276.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:08:08.086+10 952112
-2012-10-02-1349165288.2-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:08:10.603+10 202888
-2012-10-02-1349165291.41-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:08:26.863+10 1292424
-2012-10-02-1349165308.36-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:08:34.79+10 538410
-2012-10-02-1349165315.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:08:53.344+10 1479310
-2012-10-02-1349165335.76-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:08:58.106+10 198792
-2012-10-02-1349165338.22-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:01.936+10 313480
-2012-10-02-1349165342.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:06.634+10 384968
-2012-10-02-1349165348.35-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:15.938+10 635584
-2012-10-02-1349165356.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:20.26+10 354440
-2012-10-02-1349165361.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:29.05+10 630920
-2012-10-02-1349165369.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:33.802+10 336008
-2012-10-02-1349165374.25-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:39.408+10 429770
-2012-10-02-1349165379.62-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:09:42.385+10 197950
-2012-10-02-1349165706.04-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:10.324+10 361558
-2012-10-02-1349165710.44-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:12.606+10 184456
-2012-10-02-1349165713.17-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:18.143+10 419976
-2012-10-02-1349165718.63-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:24.526+10 494950
-2012-10-02-1349165725.6-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:30.686+10 417712
-2012-10-02-1349165730.81-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:36.526+10 435780
-2012-10-02-1349165736.77-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:46.484+10 801428
-2012-10-02-1349165748.06-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:52.693+10 370152
-2012-10-02-1349165753.56-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:15:56.716+10 211376
-2012-10-02-1349165806.71-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:16:49.662+10 243524
-2012-10-02-1349165911.13-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:18:33.991+10 240460
-2012-10-02-1349165915.72-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:18:42.868+10 600200
-2012-10-02-1349165923.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:06.414+10 1861464
-2012-10-02-1349165947.17-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:11.151+10 333696
-2012-10-02-1349165951.94-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:32.517+10 1720318
-2012-10-02-1349165972.66-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:36.075+10 288904
-2012-10-02-1349165976.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:41.476+10 404530
-2012-10-02-1349165981.97-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:45.513+10 299144
-2012-10-02-1349165986.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:19:58.914+10 1020040
-2012-10-02-1349166001.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:20:08.268+10 584252
-2012-10-02-1349166008.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:20:12.264+10 307336
-2012-10-02-1349166015.11-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:20:19.084+10 331912
-2012-10-02-1349166019.29-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:20:22.012+10 210866
-2012-10-02-1349166022.41-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:20:30.561+10 684168
-2012-10-02-1349166031.21-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:20:33.559+10 192648
-2012-10-02-1349166034.92-demo.wav 44012 ACTION 44012 CanberraMtAinsli 2012-10-02 18:20:46.059+10 931074
-2012-10-02-1349166046.27-demo.wav 44012 ACTION 44012 CanberraMtAinsli 2012-10-02 18:20:50.598+10 360534
-2012-10-02-1349166050.9-demo.wav 44012 ACTION 44012 CanberraMtAinsli 2012-10-02 18:20:56.222+10 430044
-2012-10-02-1349166057.11-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:21:04.705+10 635622
-2012-10-02-1349166065.39-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:21:13.797+10 704648
-2012-10-02-1349166075.25-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:21:24.67+10 790664
-2012-10-02-1349166086.27-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:21:29.743+10 286856
-2012-10-02-1349166090.4-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:21:42.178+10 929244
-2012-10-02-1349166103.07-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:21:55.307+10 1024000
-2012-10-02-1349166116.12-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:22:08.55+10 1039762
-2012-10-02-1349166128.95-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:22:18.778+10 819336
-2012-10-02-1349166141.31-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:22:27.569+10 523750
-2012-10-02-1349166168.19-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:22:50.713+10 213128
-2012-10-02-1349166172.14-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:23:06.873+10 1235080
-2012-10-02-1349166187.68-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:23:12.114+10 369840
-2012-10-02-1349166192.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:23:20.187+10 661188
-2012-10-02-1349166201.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:23:25.576+10 322478
-2012-10-02-1349166352.48-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:25:56.422+10 330852
-2012-10-02-1349166356.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:25:59.818+10 276616
-2012-10-02-1349166359.94-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:26:12.022+10 950258
-2012-10-02-1349166372.78-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:26:17.974+10 436304
-2012-10-02-1349166378.19-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:26:23.863+10 477320
-2012-10-02-1349166384.67-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:26:39.263+10 1222060
-2012-10-02-1349166401.24-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:26:47.193+10 454228
-2012-10-02-1349166408.5-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:26:52.09+10 289586
-2012-10-02-1349166413.97-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:15.442+10 1802376
-2012-10-02-1349166435.71-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:20.293+10 383112
-2012-10-02-1349166441.44-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:24.474+10 256136
-2012-10-02-1349166444.67-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:32.723+10 677920
-2012-10-02-1349166452.86-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:35.565+10 224740
-2012-10-02-1349166456.01-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:40.75+10 388960
-2012-10-02-1349166462.03-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:27:45.089+10 211456
-2012-10-02-1349166531.57-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:28:54.623+10 256808
-2012-10-02-1349166536.05-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:28:58.309+10 192648
-2012-10-02-1349166538.43-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:29:04.342+10 497800
-2012-10-02-1349166544.47-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:29:08.508+10 338832
-2012-10-02-1349166550.11-demo.wav 44028 CanberraBlackMnt 2012-10-02 18:29:13.854+10 312816
-2012-10-02-1349166990.04-demo.wav 40091 Fire Mgt CanberraMtAinsli 2012-10-02 18:36:32.507+10 207980
-2012-10-02-1349167218.03-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 18:40:23.003+10 415220
-2012-10-02-1349167224.4-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:40:35.57+10 938120
-2012-10-02-1349167262.23-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:41:06.187+10 330528
-2012-10-02-1349167267.79-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:41:15.995+10 690312
-2012-10-02-1349167276.27-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:41:19.611+10 278664
-2012-10-02-1349167280.57-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:41:28.743+10 682120
-2012-10-02-1349167360.83-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 18:42:44.115+10 275612
-2012-10-02-1349167386.67-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:43:10.95+10 360584
-2012-10-02-1349167392.6-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:43:16.661+10 342152
-2012-10-02-1349167397.82-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:43:29.488+10 974586
-2012-10-02-1349167409.62-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:43:38.984+10 723928
-2012-10-02-1349167419.39-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 18:43:44.297+10 352126
-2012-10-02-1349167424.67-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 18:43:51.036+10 533154
-2012-10-02-1349167431.38-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 18:44:01.516+10 850028
-2012-10-02-1349167441.71-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 18:44:04.584+10 181710
-2012-10-02-1349167710.55-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 18:48:37.245+10 557418
-2012-10-02-1349167718.14-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:48:46.988+10 737416
-2012-10-02-1349167727.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:49:19.856+10 2665288
-2012-10-02-1349167760.61-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:49:26.332+10 479182
-2012-10-02-1349167826.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:50:32.264+10 481012
-2012-10-02-1349167832.5-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:50:35.949+10 288902
-2012-10-02-1349167837.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:50:46.638+10 749966
-2012-10-02-1349167847.38-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:50:52.47+10 428166
-2012-10-02-1349167985.67-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:53:08.828+10 265888
-2012-10-02-1349167989.67-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:53:18.785+10 745398
-2012-10-02-1349167999.0-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:53:25.912+10 572948
-2012-10-02-1349168007.16-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:53:30.138+10 249692
-2012-10-02-1349168011.0-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:53:39.498+10 715792
-2012-10-02-1349168055.77-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 18:54:19.117+10 279422
-2012-10-02-1349168060.38-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:54:37.219+10 1413256
-2012-10-02-1349168080.09-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:54:52.078+10 1007748
-2012-10-02-1349168092.29-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 18:54:55.47+10 264182
-2012-10-02-1349168143.23-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:55:46.209+10 250906
-2012-10-02-1349168146.77-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:55:50.629+10 325768
-2012-10-02-1349168150.75-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:55:54.826+10 344200
-2012-10-02-1349168155.6-demo.wav 44028 CanberraMtAinsli 2012-10-02 18:55:57.938+10 198792
-2012-10-02-1349168238.05-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:57:23.373+10 448412
-2012-10-02-1349168244.39-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:57:27.569+10 266376
-2012-10-02-1349168248.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:57:42.2+10 1181504
-2012-10-02-1349168263.37-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:57:48.847+10 417822
-2012-10-02-1349168269.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:57:53.048+10 319624
-2012-10-02-1349168274.7-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:58:15.014+10 1706120
-2012-10-02-1349168297.16-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:58:24.75+10 637064
-2012-10-02-1349168304.98-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:58:30.876+10 491656
-2012-10-02-1349168312.64-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:58:38.504+10 491656
-2012-10-02-1349168319.9-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 18:58:44.885+10 419958
-2012-10-02-1349168485.38-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 19:01:31.13+10 479970
-2012-10-02-1349168676.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:04:39.419+10 279130
-2012-10-02-1349168679.6-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:04:42.461+10 241800
-2012-10-02-1349168683.01-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:04:48.298+10 444552
-2012-10-02-1349168688.45-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:04:51.406+10 228234
-2012-10-02-1349168718.25-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:21.985+10 315528
-2012-10-02-1349168723.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:26.986+10 309384
-2012-10-02-1349168727.8-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:33.475+10 475272
-2012-10-02-1349168733.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:36.553+10 237676
-2012-10-02-1349168737.1-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:46.696+10 805000
-2012-10-02-1349168746.87-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:49.527+10 223368
-2012-10-02-1349168749.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:05:53.882+10 352292
-2012-10-02-1349168862.69-demo.wav 44028 CanberraBlackMnt 2012-10-02 19:07:45.961+10 275992
-2012-10-02-1349168867.34-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:07:52.87+10 465222
-2012-10-02-1349168873.06-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:02.617+10 802952
-2012-10-02-1349168884.54-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:09.254+10 392916
-2012-10-02-1349168889.8-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:15.78+10 470986
-2012-10-02-1349168896.03-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:20.135+10 276158
-2012-10-02-1349168900.39-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:28.752+10 693058
-2012-10-02-1349168908.96-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:32.931+10 278972
-2012-10-02-1349168913.79-demo.wav 44028 CanberraMtAinsli 2012-10-02 19:08:37.222+10 227170
-2012-10-02-1349168917.5-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:08:57.924+10 1709392
-2012-10-02-1349168939.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:09:21.343+10 1869960
-2012-10-02-1349168961.49-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:09:24.2+10 194184
-2012-10-02-1349169021.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:10:24.94+10 256776
-2012-10-02-1349169046.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:10:49.371+10 223368
-2012-10-02-1349169049.6-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:10:52.146+10 215176
-2012-10-02-1349169052.59-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:10:56.047+10 290952
-2012-10-02-1349169056.8-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:11:06.334+10 798786
-2012-10-02-1349169066.74-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:11:11.31+10 355626
-2012-10-02-1349169071.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:11:34.162+10 1864876
-2012-10-02-1349169094.28-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:11:37.22+10 247944
-2012-10-02-1349169097.35-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:11:40.3+10 249992
-2012-10-02-1349169101.02-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:11:43.827+10 237704
-2012-10-02-1349169151.43-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:12:33.959+10 210934
-2012-10-02-1349169197.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:13:19.613+10 208586
-2012-10-02-1349169200.72-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:13:26.547+10 487480
-2012-10-02-1349169206.85-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:13:30.864+10 336008
-2012-10-02-1349169212.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:13:49.156+10 1370758
-2012-10-02-1349169230.04-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:13:55.984+10 498672
-2012-10-02-1349169282.25-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:14:46.064+10 318808
-2012-10-02-1349169287.74-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:14:55.27+10 631702
-2012-10-02-1349169298.49-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:15:01.764+10 278664
-2012-10-02-1349169301.97-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:15:07.796+10 448472
-2012-10-02-1349169308.05-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:15:10.971+10 185412
-2012-10-02-1349169311.12-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:15:14.802+10 295030
-2012-10-02-1349169315.33-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:15:19.382+10 306684
-2012-10-02-1349169319.71-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:15:25.413+10 428170
-2012-10-02-1349169439.12-demo.wav 44028 CanberraBlackMnt 2012-10-02 19:17:21.787+10 223402
-2012-10-02-1349169441.9-demo.wav 44028 CanberraBlackMnt 2012-10-02 19:17:27.181+10 444552
-2012-10-02-1349169449.23-demo.wav 44028 CanberraBlackMnt 2012-10-02 19:17:32.943+10 313480
-2012-10-02-1349169532.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:18:56.954+10 346350
-2012-10-02-1349169538.27-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:19:02.035+10 317576
-2012-10-02-1349169543.03-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:19:31.417+10 2330654
-2012-10-02-1349169571.54-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:19:34.891+10 216776
-2012-10-02-1349169679.88-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:21:25.003+10 430858
-2012-10-02-1349169686.23-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:21:30.015+10 314496
-2012-10-02-1349169690.7-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:21:44.55+10 1116662
-2012-10-02-1349169704.82-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:21:47.885+10 203572
-2012-10-02-1349169799.28-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 19:23:30.64+10 951072
-2012-10-02-1349169959.58-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:26:02.619+10 254176
-2012-10-02-1349169962.89-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:26:05.947+10 258184
-2012-10-02-1349169966.55-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:26:23.239+10 1398920
-2012-10-02-1349169983.85-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:26:26.581+10 231560
-2012-10-02-1349170173.46-demo.wav 40078 SES Ops 1 CanberraBlackMnt 2012-10-02 19:29:37.4+10 329116
-2012-10-02-1349170179.46-demo.wav 40068 RFS Ops 1 CanberraBlackMnt 2012-10-02 19:29:46.152+10 561288
-2012-10-02-1349170187.12-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 19:29:53.075+10 497340
-2012-10-02-1349170194.54-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:15.559+10 1762918
-2012-10-02-1349170218.07-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:22.021+10 331912
-2012-10-02-1349170222.28-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:25.611+10 282760
-2012-10-02-1349170226.12-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:30.173+10 342152
-2012-10-02-1349170230.37-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:35.201+10 407688
-2012-10-02-1349170235.96-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:41.997+10 445046
-2012-10-02-1349170242.39-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:47.869+10 460936
-2012-10-02-1349170248.93-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:30:53.488+10 385148
-2012-10-02-1349170255.3-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:14.517+10 1605414
-2012-10-02-1349170274.74-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:17.848+10 262280
-2012-10-02-1349170277.96-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:33.542+10 1291410
-2012-10-02-1349170293.89-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:38.289+10 370824
-2012-10-02-1349170299.52-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:44.812+10 444552
-2012-10-02-1349170305.43-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:48.589+10 266376
-2012-10-02-1349170309.36-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:55.974+10 498204
-2012-10-02-1349170316.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:31:58.406+10 183242
-2012-10-02-1349170359.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:32:41.917+10 239668
-2012-10-02-1349170363.39-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:32:48.278+10 411784
-2012-10-02-1349170368.9-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:32:54.853+10 499848
-2012-10-02-1349170377.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:33:01.635+10 379888
-2012-10-02-1349170382.08-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:33:14.847+10 1067144
-2012-10-02-1349170395.05-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:33:17.437+10 200840
-2012-10-02-1349170398.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:33:24.39+10 473226
-2012-10-02-1349170404.74-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:33:37.685+10 1085534
-2012-10-02-1349170418.64-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:33:44.546+10 481322
-2012-10-02-1349170425.04-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:02.589+10 1470738
-2012-10-02-1349170442.81-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:06.192+10 254878
-2012-10-02-1349170446.68-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:12.079+10 451404
-2012-10-02-1349170452.58-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:15.421+10 239752
-2012-10-02-1349170456.1-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:23.793+10 645256
-2012-10-02-1349170464.23-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:27.478+10 270472
-2012-10-02-1349170467.77-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:32.998+10 440456
-2012-10-02-1349170473.82-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:36.605+10 233608
-2012-10-02-1349170478.76-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:43.443+10 387858
-2012-10-02-1349170483.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:48.612+10 409562
-2012-10-02-1349170488.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:52.39+10 243250
-2012-10-02-1349170492.64-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:34:56.458+10 274262
-2012-10-02-1349170641.06-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:37:24.094+10 250800
-2012-10-02-1349170644.73-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:37:27.826+10 262280
-2012-10-02-1349170648.98-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:37:32.798+10 321672
-2012-10-02-1349170653.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:37:36.411+10 280712
-2012-10-02-1349170657.8-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 19:37:46.417+10 720906
-2012-10-02-1349170673.39-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 19:37:58.126+10 394974
-2012-10-02-1349170679.26-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 19:38:02.881+10 305288
-2012-10-02-1349170683.41-demo.wav 40078 SES Ops 1 CanberraMtAinsli 2012-10-02 19:38:06.234+10 239752
-2012-10-02-1349170687.16-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:38:14.979+10 653448
-2012-10-02-1349170700.29-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:38:25.242+10 413794
-2012-10-02-1349170706.49-demo.wav 42006 CanberraMtAinsli 2012-10-02 19:38:31.816+10 417690
-2012-10-02-1349170712.51-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:38:54.046+10 1472430
-2012-10-02-1349170734.16-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:38:57.969+10 321672
-2012-10-02-1349170738.71-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:39:10.254+10 966792
-2012-10-02-1349170750.75-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:39:14.834+10 326342
-2012-10-02-1349171159.31-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:46:01.812+10 210038
-2012-10-02-1349171162.03-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:46:04.185+10 182408
-2012-10-02-1349171164.6-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:46:08.333+10 315528
-2012-10-02-1349171169.27-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:46:18.102+10 729604
-2012-10-02-1349171178.21-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:46:24.22+10 444118
-2012-10-02-1349171238.88-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:47:22.952+10 338900
-2012-10-02-1349171243.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:47:26.463+10 245896
-2012-10-02-1349171247.07-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:47:31.26+10 354440
-2012-10-02-1349171251.51-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:47:35.008+10 293000
-2012-10-02-1349171421.04-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:50:24.208+10 266150
-2012-10-02-1349171425.57-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:50:29.186+10 301192
-2012-10-02-1349171430.11-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:50:34.92+10 403592
-2012-10-02-1349171435.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:50:39.897+10 354440
-2012-10-02-1349171441.4-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:50:47.204+10 489608
-2012-10-02-1349171448.69-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:50:51.623+10 247944
-2012-10-02-1349171452.22-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:51:10.779+10 1514028
-2012-10-02-1349171471.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:51:15.312+10 317822
-2012-10-02-1349171592.76-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:53:16.403+10 306188
-2012-10-02-1349171597.83-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:53:25.192+10 618632
-2012-10-02-1349171606.05-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:53:32.05+10 501206
-2012-10-02-1349171612.95-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:53:36.547+10 303240
-2012-10-02-1349171617.35-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:53:57.062+10 1653430
-2012-10-02-1349171637.34-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:53:59.755+10 202888
-2012-10-02-1349171640.51-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:54:11.812+10 950408
-2012-10-02-1349171653.09-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:54:17.37+10 360584
-2012-10-02-1349171657.56-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 19:54:20.202+10 217224
-2012-10-02-1349171804.71-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:56:49.933+10 436640
-2012-10-02-1349171810.91-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:56:55.816+10 409814
-2012-10-02-1349171816.82-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:57:01.278+10 368776
-2012-10-02-1349171821.63-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:57:05.677+10 340104
-2012-10-02-1349171825.8-demo.wav 40068 RFS Ops 1 CanberraMtAinsli 2012-10-02 19:57:08.276+10 209032
-2012-10-02-1349172101.56-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 20:01:46.528+10 414948
-2012-10-02-1349172106.74-demo.wav 44011 ACTION 44011 CanberraBlackMnt 2012-10-02 20:01:49.746+10 254088
-2012-10-02-1349172282.12-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:04:44.618+10 208278
-2012-10-02-1349172284.94-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:04:47.343+10 202888
-2012-10-02-1349172288.39-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:04:52.783+10 370824
-2012-10-02-1349172293.1-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:05:08.371+10 1244360
-2012-10-02-1349172308.53-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:05:12.601+10 279168
-2012-10-02-1349172313.14-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:05:21.05+10 608304
-2012-10-02-1349172321.38-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:05:26.234+10 354634
-2012-10-02-1349173142.65-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:19:05.689+10 254170
-2012-10-02-1349173146.37-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:19:09.199+10 239752
-2012-10-02-1349173150.04-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:19:18.804+10 735368
-2012-10-02-1349173159.87-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:19:26.775+10 577642
-2012-10-02-1349173221.91-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 20:20:24.412+10 209748
-2012-10-02-1349173673.11-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 20:27:57.631+10 379652
-2012-10-02-1349174240.8-demo.wav 10106 SYD 7 CanberraMtAinsli 2012-10-02 20:37:23.29+10 209534
-2012-10-02-1349174599.95-demo.wav 30004 L GEORG CanberraBlackMnt 2012-10-02 20:43:25.506+10 466904
-\.
+CREATE TABLE tgids (
+ tgid text NOT NULL,
+ subfleet smallint,
+ mode character(1) DEFAULT 'D'::bpchar NOT NULL,
+ alpha_tag text NOT NULL,
+ service_tag text,
+ category smallint
+);
+ALTER TABLE public.tgids OWNER TO postgres;
+
--
--- TOC entry 1849 (class 2606 OID 62399)
--- Dependencies: 161 161
-- Name: recordings_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres; Tablespace:
--
@@ -3632,8 +70,14 @@
--
--- TOC entry 1855 (class 0 OID 0)
--- Dependencies: 6
+-- Name: tgids_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres; Tablespace:
+--
+
+ALTER TABLE ONLY tgids
+ ADD CONSTRAINT tgids_pkey PRIMARY KEY (tgid);
+
+
+--
-- Name: public; Type: ACL; Schema: -; Owner: postgres
--
@@ -3643,8 +87,6 @@
GRANT ALL ON SCHEMA public TO PUBLIC;
--- Completed on 2012-10-08 22:16:53
-
--
-- PostgreSQL database dump complete
--
--- /dev/null
+++ b/generateConvos.php
@@ -1,1 +1,36 @@
+<?php
+//select tgid, extract(hour from call_timestamp) ahour, date_trunc('day', call_timestamp) aday, count(filename), array_to_string(array_agg(filename), ' ') from recordings group by tgid, ahour, aday order by aday, ahour, tgid
+include('common.inc.php');
+$sth = $conn->prepare('select * from recordings limit 100;');
+$sth->execute();
+$recordings = $sth->fetchAll();
+$convos = Array();
+$convo = Array();
+foreach ($recordings as $i => $recording) {
+
+ if (count($convo) > 0) {
+ echo "<br> " . strcasecmp($convos[count($convos) - 1][0]['call_timestamp'], $recording['call_timestamp']);
+ if (abs(strcasecmp($convos[count($convos) - 1][0]['call_timestamp'], $recording['call_timestamp'])) > 2) {
+ echo " " . $convos[count($convos) - 1][0]['call_timestamp'] . " " . $recording['call_timestamp'];
+ }
+ if (strcasecmp($convos[count($convos) - 1][0]['tgid'], $recording['tgid']) != 0) {
+ $convos[] = $convo;
+ $convo = Array();
+ }
+ }
+ ;
+ //print_r($recording);
+ $convo[] = $recording;
+ //print_r($convo);
+ //echo "<br>\n";
+}
+foreach ($convos as $i => $convo) {
+ foreach ($convo as $recording) {
+ echo $recording['filename'] . " , ";
+ }
+ echo "<br><hr>\n";
+}
+?>
+
+
--- /dev/null
+++ b/generateHourlys.php
@@ -1,1 +1,33 @@
+<?php
+include('common.inc.php');
+function processHourly($hourly) {
+ $filename = $hourly['tgid'].'-'.str_replace(' 00:00:00+1','',$hourly['aday']).'-'.$hourly['ahour'].'.3gp';
+ if(!file_exists("hourly/".$filename)) {
+
+ $filenames = explode(",",$hourly['filenames']);
+ $cmd = "/usr/local/bin/ffmpeg -i data/".implode(" -i data/",$filenames)." -ar 8000 -ab 4.75k -ac 1 hourly/".$filename . ' 2>&1';
+ //print_r($hourly);
+ exec ( $cmd,$output,$returncode );
+ echo $cmd."<br>\n";
+ if ($returncode != 10) {
+ //print_r($output);
+ //die();
+ }
+ }
+}
+$sth = $conn->prepare("select tgid, extract(hour from call_timestamp) ahour, date_trunc('day', call_timestamp) aday, count(filename), array_to_string(array_agg(filename order by call_timestamp), ',') filenames from recordings group by tgid, ahour, aday order by aday DESC, ahour, tgid;");
+
+$sth->execute();
+$hourlies = $sth->fetchAll(PDO::FETCH_ASSOC);
+foreach($hourlies as $hourly) {
+ //processHourly($hourly);
+}
+$sth = $conn->prepare("select 'hour' as tgid, extract(hour from call_timestamp) ahour, date_trunc('day', call_timestamp) aday, count(filename), array_to_string(array_agg(filename order by call_timestamp), ',') filenames from recordings group by ahour, aday order by aday DESC, ahour;");
+
+$sth->execute();
+$hourlies = $sth->fetchAll(PDO::FETCH_ASSOC);
+foreach($hourlies as $hourly) {
+ processHourly($hourly);
+}
+
--- /dev/null
+++ b/getfile.php
@@ -1,1 +1,20 @@
+<?php
+$reqfile = "path/to/file.3gp";
+$contenttype = "audio/3gpp";
+if ($fn = fopen($reqfile, "rba")) {
+ header("Content-Type: " . $contenttype);
+ header("Content-Length: " . filesize($reqfile));
+ header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
+ header("Pragma: no-cache");
+ header("Expires: Mon, 26 Jul 1997 06:00:00 GMT");
+ header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0");
+ passthru("ffmpeg -i 2012-09-29-1348911268.34-demo.wav -ar 8000 -ab 4.75k -");
+ fpassthru($fn);
+ fclose($fn);
+} else {
+ exit("error....");
+}
+exit();
+?>
+
--- a/js/flotr2/examples/lib/codemirror/lib/util/formatting.js
+++ b/js/flotr2/examples/lib/codemirror/lib/util/formatting.js
@@ -1,4 +1,4 @@
-// ============== Formatting extensions ============================
+// ============== Formatting extensions ============================
// A common storage for all mode-specific formatting features
if (!CodeMirror.modeExtensions) CodeMirror.modeExtensions = {};
--- a/js/flotr2/lib/jasmine/jasmine-html.js
+++ b/js/flotr2/lib/jasmine/jasmine-html.js
@@ -1,617 +1,621 @@
jasmine.HtmlReporterHelpers = {};
-jasmine.HtmlReporterHelpers.createDom = function(type, attrs, childrenVarArgs) {
- var el = document.createElement(type);
-
- for (var i = 2; i < arguments.length; i++) {
- var child = arguments[i];
-
- if (typeof child === 'string') {
- el.appendChild(document.createTextNode(child));
- } else {
- if (child) {
- el.appendChild(child);
- }
- }
- }
-
- for (var attr in attrs) {
- if (attr == "className") {
- el[attr] = attrs[attr];
- } else {
- el.setAttribute(attr, attrs[attr]);
- }
- }
-
- return el;
-};
-
-jasmine.HtmlReporterHelpers.getSpecStatus = function(child) {
- var results = child.results();
- var status = results.passed() ? 'passed' : 'failed';
- if (results.skipped) {
- status = 'skipped';
- }
-
- return status;
-};
-
-jasmine.HtmlReporterHelpers.appendToSummary = function(child, childElement) {
- var parentDiv = this.dom.summary;
- var parentSuite = (typeof child.parentSuite == 'undefined') ? 'suite' : 'parentSuite';
- var parent = child[parentSuite];
-
- if (parent) {
- if (typeof this.views.suites[parent.id] == 'undefined') {
- this.views.suites[parent.id] = new jasmine.HtmlReporter.SuiteView(parent, this.dom, this.views);
- }
- parentDiv = this.views.suites[parent.id].element;
- }
-
- parentDiv.appendChild(childElement);
-};
-
-
-jasmine.HtmlReporterHelpers.addHelpers = function(ctor) {
- for(var fn in jasmine.HtmlReporterHelpers) {
- ctor.prototype[fn] = jasmine.HtmlReporterHelpers[fn];
- }
-};
-
-jasmine.HtmlReporter = function(_doc) {
- var self = this;
- var doc = _doc || window.document;
-
- var reporterView;
-
- var dom = {};
-
- // Jasmine Reporter Public Interface
- self.logRunningSpecs = false;
-
- self.reportRunnerStarting = function(runner) {
- var specs = runner.specs() || [];
-
- if (specs.length == 0) {
- return;
- }
-
- createReporterDom(runner.env.versionString());
- doc.body.appendChild(dom.reporter);
-
- reporterView = new jasmine.HtmlReporter.ReporterView(dom);
- reporterView.addSpecs(specs, self.specFilter);
- };
-
- self.reportRunnerResults = function(runner) {
- reporterView && reporterView.complete();
- };
-
- self.reportSuiteResults = function(suite) {
- reporterView.suiteComplete(suite);
- };
-
- self.reportSpecStarting = function(spec) {
- if (self.logRunningSpecs) {
- self.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
- }
- };
-
- self.reportSpecResults = function(spec) {
- reporterView.specComplete(spec);
- };
-
- self.log = function() {
+jasmine.HtmlReporterHelpers.createDom = function (type, attrs, childrenVarArgs) {
+ var el = document.createElement(type);
+
+ for (var i = 2; i < arguments.length; i++) {
+ var child = arguments[i];
+
+ if (typeof child === 'string') {
+ el.appendChild(document.createTextNode(child));
+ } else {
+ if (child) {
+ el.appendChild(child);
+ }
+ }
+ }
+
+ for (var attr in attrs) {
+ if (attr == "className") {
+ el[attr] = attrs[attr];
+ } else {
+ el.setAttribute(attr, attrs[attr]);
+ }
+ }
+
+ return el;
+};
+
+jasmine.HtmlReporterHelpers.getSpecStatus = function (child) {
+ var results = child.results();
+ var status = results.passed() ? 'passed' : 'failed';
+ if (results.skipped) {
+ status = 'skipped';
+ }
+
+ return status;
+};
+
+jasmine.HtmlReporterHelpers.appendToSummary = function (child, childElement) {
+ var parentDiv = this.dom.summary;
+ var parentSuite = (typeof child.parentSuite == 'undefined') ? 'suite' : 'parentSuite';
+ var parent = child[parentSuite];
+
+ if (parent) {
+ if (typeof this.views.suites[parent.id] == 'undefined') {
+ this.views.suites[parent.id] = new jasmine.HtmlReporter.SuiteView(parent, this.dom, this.views);
+ }
+ parentDiv = this.views.suites[parent.id].element;
+ }
+
+ parentDiv.appendChild(childElement);
+};
+
+
+jasmine.HtmlReporterHelpers.addHelpers = function (ctor) {
+ for (var fn in jasmine.HtmlReporterHelpers) {
+ ctor.prototype[fn] = jasmine.HtmlReporterHelpers[fn];
+ }
+};
+
+jasmine.HtmlReporter = function (_doc) {
+ var self = this;
+ var doc = _doc || window.document;
+
+ var reporterView;
+
+ var dom = {};
+
+ // Jasmine Reporter Public Interface
+ self.logRunningSpecs = false;
+
+ self.reportRunnerStarting = function (runner) {
+ var specs = runner.specs() || [];
+
+ if (specs.length == 0) {
+ return;
+ }
+
+ createReporterDom(runner.env.versionString());
+ doc.body.appendChild(dom.reporter);
+
+ reporterView = new jasmine.HtmlReporter.ReporterView(dom);
+ reporterView.addSpecs(specs, self.specFilter);
+ };
+
+ self.reportRunnerResults = function (runner) {
+ reporterView && reporterView.complete();
+ };
+
+ self.reportSuiteResults = function (suite) {
+ reporterView.suiteComplete(suite);
+ };
+
+ self.reportSpecStarting = function (spec) {
+ if (self.logRunningSpecs) {
+ self.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
+ }
+ };
+
+ self.reportSpecResults = function (spec) {
+ reporterView.specComplete(spec);
+ };
+
+ self.log = function () {
+ var console = jasmine.getGlobal().console;
+ if (console && console.log) {
+ if (console.log.apply) {
+ console.log.apply(console, arguments);
+ } else {
+ console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
+ }
+ }
+ };
+
+ self.specFilter = function (spec) {
+ if (!focusedSpecName()) {
+ return true;
+ }
+
+ return spec.getFullName().indexOf(focusedSpecName()) === 0;
+ };
+
+ return self;
+
+ function focusedSpecName() {
+ var specName;
+
+ (function memoizeFocusedSpec() {
+ if (specName) {
+ return;
+ }
+
+ var paramMap = [];
+ var params = doc.location.search.substring(1).split('&');
+
+ for (var i = 0; i < params.length; i++) {
+ var p = params[i].split('=');
+ paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
+ }
+
+ specName = paramMap.spec;
+ })();
+
+ return specName;
+ }
+
+ function createReporterDom(version) {
+ dom.reporter = self.createDom('div', { id: 'HTMLReporter', className: 'jasmine_reporter' },
+ dom.banner = self.createDom('div', { className: 'banner' },
+ self.createDom('span', { className: 'title' }, "Jasmine "),
+ self.createDom('span', { className: 'version' }, version)),
+
+ dom.symbolSummary = self.createDom('ul', {className: 'symbolSummary'}),
+ dom.alert = self.createDom('div', {className: 'alert'}),
+ dom.results = self.createDom('div', {className: 'results'},
+ dom.summary = self.createDom('div', { className: 'summary' }),
+ dom.details = self.createDom('div', { id: 'details' }))
+ );
+ }
+};
+jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter);
+jasmine.HtmlReporter.ReporterView = function (dom) {
+ this.startedAt = new Date();
+ this.runningSpecCount = 0;
+ this.completeSpecCount = 0;
+ this.passedCount = 0;
+ this.failedCount = 0;
+ this.skippedCount = 0;
+
+ this.createResultsMenu = function () {
+ this.resultsMenu = this.createDom('span', {className: 'resultsMenu bar'},
+ this.summaryMenuItem = this.createDom('a', {className: 'summaryMenuItem', href: "#"}, '0 specs'),
+ ' | ',
+ this.detailsMenuItem = this.createDom('a', {className: 'detailsMenuItem', href: "#"}, '0 failing'));
+
+ this.summaryMenuItem.onclick = function () {
+ dom.reporter.className = dom.reporter.className.replace(/ showDetails/g, '');
+ };
+
+ this.detailsMenuItem.onclick = function () {
+ showDetails();
+ };
+ };
+
+ this.addSpecs = function (specs, specFilter) {
+ this.totalSpecCount = specs.length;
+
+ this.views = {
+ specs: {},
+ suites: {}
+ };
+
+ for (var i = 0; i < specs.length; i++) {
+ var spec = specs[i];
+ this.views.specs[spec.id] = new jasmine.HtmlReporter.SpecView(spec, dom, this.views);
+ if (specFilter(spec)) {
+ this.runningSpecCount++;
+ }
+ }
+ };
+
+ this.specComplete = function (spec) {
+ this.completeSpecCount++;
+
+ if (isUndefined(this.views.specs[spec.id])) {
+ this.views.specs[spec.id] = new jasmine.HtmlReporter.SpecView(spec, dom);
+ }
+
+ var specView = this.views.specs[spec.id];
+
+ switch (specView.status()) {
+ case 'passed':
+ this.passedCount++;
+ break;
+
+ case 'failed':
+ this.failedCount++;
+ break;
+
+ case 'skipped':
+ this.skippedCount++;
+ break;
+ }
+
+ specView.refresh();
+ this.refresh();
+ };
+
+ this.suiteComplete = function (suite) {
+ var suiteView = this.views.suites[suite.id];
+ if (isUndefined(suiteView)) {
+ return;
+ }
+ suiteView.refresh();
+ };
+
+ this.refresh = function () {
+
+ if (isUndefined(this.resultsMenu)) {
+ this.createResultsMenu();
+ }
+
+ // currently running UI
+ if (isUndefined(this.runningAlert)) {
+ this.runningAlert = this.createDom('a', {href: "?", className: "runningAlert bar"});
+ dom.alert.appendChild(this.runningAlert);
+ }
+ this.runningAlert.innerHTML = "Running " + this.completeSpecCount + " of " + specPluralizedFor(this.totalSpecCount);
+
+ // skipped specs UI
+ if (isUndefined(this.skippedAlert)) {
+ this.skippedAlert = this.createDom('a', {href: "?", className: "skippedAlert bar"});
+ }
+
+ this.skippedAlert.innerHTML = "Skipping " + this.skippedCount + " of " + specPluralizedFor(this.totalSpecCount) + " - run all";
+
+ if (this.skippedCount === 1 && isDefined(dom.alert)) {
+ dom.alert.appendChild(this.skippedAlert);
+ }
+
+ // passing specs UI
+ if (isUndefined(this.passedAlert)) {
+ this.passedAlert = this.createDom('span', {href: "?", className: "passingAlert bar"});
+ }
+ this.passedAlert.innerHTML = "Passing " + specPluralizedFor(this.passedCount);
+
+ // failing specs UI
+ if (isUndefined(this.failedAlert)) {
+ this.failedAlert = this.createDom('span', {href: "?", className: "failingAlert bar"});
+ }
+ this.failedAlert.innerHTML = "Failing " + specPluralizedFor(this.failedCount);
+
+ if (this.failedCount === 1 && isDefined(dom.alert)) {
+ dom.alert.appendChild(this.failedAlert);
+ dom.alert.appendChild(this.resultsMenu);
+ }
+
+ // summary info
+ this.summaryMenuItem.innerHTML = "" + specPluralizedFor(this.runningSpecCount);
+ this.detailsMenuItem.innerHTML = "" + this.failedCount + " failing";
+ };
+
+ this.complete = function () {
+ dom.alert.removeChild(this.runningAlert);
+
+ this.skippedAlert.innerHTML = "Ran " + this.runningSpecCount + " of " + specPluralizedFor(this.totalSpecCount) + " - run all";
+
+ if (this.failedCount === 0) {
+ dom.alert.appendChild(this.createDom('span', {className: 'passingAlert bar'}, "Passing " + specPluralizedFor(this.passedCount)));
+ } else {
+ showDetails();
+ }
+
+ dom.banner.appendChild(this.createDom('span', {className: 'duration'}, "finished in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s"));
+ };
+
+ return this;
+
+ function showDetails() {
+ if (dom.reporter.className.search(/showDetails/) === -1) {
+ dom.reporter.className += " showDetails";
+ }
+ }
+
+ function isUndefined(obj) {
+ return typeof obj === 'undefined';
+ }
+
+ function isDefined(obj) {
+ return !isUndefined(obj);
+ }
+
+ function specPluralizedFor(count) {
+ var str = count + " spec";
+ if (count > 1) {
+ str += "s"
+ }
+ return str;
+ }
+
+};
+
+jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter.ReporterView);
+
+
+jasmine.HtmlReporter.SpecView = function (spec, dom, views) {
+ this.spec = spec;
+ this.dom = dom;
+ this.views = views;
+
+ this.symbol = this.createDom('li', { className: 'pending' });
+ this.dom.symbolSummary.appendChild(this.symbol);
+
+ this.summary = this.createDom('div', { className: 'specSummary' },
+ this.createDom('a', {
+ className: 'description',
+ href: '?spec=' + encodeURIComponent(this.spec.getFullName()),
+ title: this.spec.getFullName()
+ }, this.spec.description)
+ );
+
+ this.detail = this.createDom('div', { className: 'specDetail' },
+ this.createDom('a', {
+ className: 'description',
+ href: '?spec=' + encodeURIComponent(this.spec.getFullName()),
+ title: this.spec.getFullName()
+ }, this.spec.getFullName())
+ );
+};
+
+jasmine.HtmlReporter.SpecView.prototype.status = function () {
+ return this.getSpecStatus(this.spec);
+};
+
+jasmine.HtmlReporter.SpecView.prototype.refresh = function () {
+ this.symbol.className = this.status();
+
+ switch (this.status()) {
+ case 'skipped':
+ break;
+
+ case 'passed':
+ this.appendSummaryToSuiteDiv();
+ break;
+
+ case 'failed':
+ this.appendSummaryToSuiteDiv();
+ this.appendFailureDetail();
+ break;
+ }
+};
+
+jasmine.HtmlReporter.SpecView.prototype.appendSummaryToSuiteDiv = function () {
+ this.summary.className += ' ' + this.status();
+ this.appendToSummary(this.spec, this.summary);
+};
+
+jasmine.HtmlReporter.SpecView.prototype.appendFailureDetail = function () {
+ this.detail.className += ' ' + this.status();
+
+ var resultItems = this.spec.results().getItems();
+ var messagesDiv = this.createDom('div', { className: 'messages' });
+
+ for (var i = 0; i < resultItems.length; i++) {
+ var result = resultItems[i];
+
+ if (result.type == 'log') {
+ messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
+ } else if (result.type == 'expect' && result.passed && !result.passed()) {
+ messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
+
+ if (result.trace.stack) {
+ messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
+ }
+ }
+ }
+
+ if (messagesDiv.childNodes.length > 0) {
+ this.detail.appendChild(messagesDiv);
+ this.dom.details.appendChild(this.detail);
+ }
+};
+
+jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter.SpecView);
+jasmine.HtmlReporter.SuiteView = function (suite, dom, views) {
+ this.suite = suite;
+ this.dom = dom;
+ this.views = views;
+
+ this.element = this.createDom('div', { className: 'suite' },
+ this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(this.suite.getFullName()) }, this.suite.description)
+ );
+
+ this.appendToSummary(this.suite, this.element);
+};
+
+jasmine.HtmlReporter.SuiteView.prototype.status = function () {
+ return this.getSpecStatus(this.suite);
+};
+
+jasmine.HtmlReporter.SuiteView.prototype.refresh = function () {
+ this.element.className += " " + this.status();
+};
+
+jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter.SuiteView);
+
+/* @deprecated Use jasmine.HtmlReporter instead
+ */
+jasmine.TrivialReporter = function (doc) {
+ this.document = doc || document;
+ this.suiteDivs = {};
+ this.logRunningSpecs = false;
+};
+
+jasmine.TrivialReporter.prototype.createDom = function (type, attrs, childrenVarArgs) {
+ var el = document.createElement(type);
+
+ for (var i = 2; i < arguments.length; i++) {
+ var child = arguments[i];
+
+ if (typeof child === 'string') {
+ el.appendChild(document.createTextNode(child));
+ } else {
+ if (child) {
+ el.appendChild(child);
+ }
+ }
+ }
+
+ for (var attr in attrs) {
+ if (attr == "className") {
+ el[attr] = attrs[attr];
+ } else {
+ el.setAttribute(attr, attrs[attr]);
+ }
+ }
+
+ return el;
+};
+
+jasmine.TrivialReporter.prototype.reportRunnerStarting = function (runner) {
+ var showPassed, showSkipped;
+
+ this.outerDiv = this.createDom('div', { id: 'TrivialReporter', className: 'jasmine_reporter' },
+ this.createDom('div', { className: 'banner' },
+ this.createDom('div', { className: 'logo' },
+ this.createDom('span', { className: 'title' }, "Jasmine"),
+ this.createDom('span', { className: 'version' }, runner.env.versionString())),
+ this.createDom('div', { className: 'options' },
+ "Show ",
+ showPassed = this.createDom('input', { id: "__jasmine_TrivialReporter_showPassed__", type: 'checkbox' }),
+ this.createDom('label', { "for": "__jasmine_TrivialReporter_showPassed__" }, " passed "),
+ showSkipped = this.createDom('input', { id: "__jasmine_TrivialReporter_showSkipped__", type: 'checkbox' }),
+ this.createDom('label', { "for": "__jasmine_TrivialReporter_showSkipped__" }, " skipped")
+ )
+ ),
+
+ this.runnerDiv = this.createDom('div', { className: 'runner running' },
+ this.createDom('a', { className: 'run_spec', href: '?' }, "run all"),
+ this.runnerMessageSpan = this.createDom('span', {}, "Running..."),
+ this.finishedAtSpan = this.createDom('span', { className: 'finished-at' }, ""))
+ );
+
+ this.document.body.appendChild(this.outerDiv);
+
+ var suites = runner.suites();
+ for (var i = 0; i < suites.length; i++) {
+ var suite = suites[i];
+ var suiteDiv = this.createDom('div', { className: 'suite' },
+ this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
+ this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
+ this.suiteDivs[suite.id] = suiteDiv;
+ var parentDiv = this.outerDiv;
+ if (suite.parentSuite) {
+ parentDiv = this.suiteDivs[suite.parentSuite.id];
+ }
+ parentDiv.appendChild(suiteDiv);
+ }
+
+ this.startedAt = new Date();
+
+ var self = this;
+ showPassed.onclick = function (evt) {
+ if (showPassed.checked) {
+ self.outerDiv.className += ' show-passed';
+ } else {
+ self.outerDiv.className = self.outerDiv.className.replace(/ show-passed/, '');
+ }
+ };
+
+ showSkipped.onclick = function (evt) {
+ if (showSkipped.checked) {
+ self.outerDiv.className += ' show-skipped';
+ } else {
+ self.outerDiv.className = self.outerDiv.className.replace(/ show-skipped/, '');
+ }
+ };
+};
+
+jasmine.TrivialReporter.prototype.reportRunnerResults = function (runner) {
+ var results = runner.results();
+ var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
+ this.runnerDiv.setAttribute("class", className);
+ //do it twice for IE
+ this.runnerDiv.setAttribute("className", className);
+ var specs = runner.specs();
+ var specCount = 0;
+ for (var i = 0; i < specs.length; i++) {
+ if (this.specFilter(specs[i])) {
+ specCount++;
+ }
+ }
+ var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
+ message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
+ this.runnerMessageSpan.replaceChild(this.createDom('a', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
+
+ this.finishedAtSpan.appendChild(document.createTextNode("Finished at " + new Date().toString()));
+};
+
+jasmine.TrivialReporter.prototype.reportSuiteResults = function (suite) {
+ var results = suite.results();
+ var status = results.passed() ? 'passed' : 'failed';
+ if (results.totalCount === 0) { // todo: change this to check results.skipped
+ status = 'skipped';
+ }
+ this.suiteDivs[suite.id].className += " " + status;
+};
+
+jasmine.TrivialReporter.prototype.reportSpecStarting = function (spec) {
+ if (this.logRunningSpecs) {
+ this.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
+ }
+};
+
+jasmine.TrivialReporter.prototype.reportSpecResults = function (spec) {
+ var results = spec.results();
+ var status = results.passed() ? 'passed' : 'failed';
+ if (results.skipped) {
+ status = 'skipped';
+ }
+ var specDiv = this.createDom('div', { className: 'spec ' + status },
+ this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
+ this.createDom('a', {
+ className: 'description',
+ href: '?spec=' + encodeURIComponent(spec.getFullName()),
+ title: spec.getFullName()
+ }, spec.description));
+
+
+ var resultItems = results.getItems();
+ var messagesDiv = this.createDom('div', { className: 'messages' });
+ for (var i = 0; i < resultItems.length; i++) {
+ var result = resultItems[i];
+
+ if (result.type == 'log') {
+ messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
+ } else if (result.type == 'expect' && result.passed && !result.passed()) {
+ messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
+
+ if (result.trace.stack) {
+ messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
+ }
+ }
+ }
+
+ if (messagesDiv.childNodes.length > 0) {
+ specDiv.appendChild(messagesDiv);
+ }
+
+ this.suiteDivs[spec.suite.id].appendChild(specDiv);
+};
+
+jasmine.TrivialReporter.prototype.log = function () {
var console = jasmine.getGlobal().console;
if (console && console.log) {
- if (console.log.apply) {
- console.log.apply(console, arguments);
- } else {
- console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
- }
- }
- };
-
- self.specFilter = function(spec) {
- if (!focusedSpecName()) {
- return true;
- }
-
- return spec.getFullName().indexOf(focusedSpecName()) === 0;
- };
-
- return self;
-
- function focusedSpecName() {
- var specName;
-
- (function memoizeFocusedSpec() {
- if (specName) {
- return;
- }
-
- var paramMap = [];
- var params = doc.location.search.substring(1).split('&');
-
- for (var i = 0; i < params.length; i++) {
+ if (console.log.apply) {
+ console.log.apply(console, arguments);
+ } else {
+ console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
+ }
+ }
+};
+
+jasmine.TrivialReporter.prototype.getLocation = function () {
+ return this.document.location;
+};
+
+jasmine.TrivialReporter.prototype.specFilter = function (spec) {
+ var paramMap = {};
+ var params = this.getLocation().search.substring(1).split('&');
+ for (var i = 0; i < params.length; i++) {
var p = params[i].split('=');
paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
- }
-
- specName = paramMap.spec;
- })();
-
- return specName;
- }
-
- function createReporterDom(version) {
- dom.reporter = self.createDom('div', { id: 'HTMLReporter', className: 'jasmine_reporter' },
- dom.banner = self.createDom('div', { className: 'banner' },
- self.createDom('span', { className: 'title' }, "Jasmine "),
- self.createDom('span', { className: 'version' }, version)),
-
- dom.symbolSummary = self.createDom('ul', {className: 'symbolSummary'}),
- dom.alert = self.createDom('div', {className: 'alert'}),
- dom.results = self.createDom('div', {className: 'results'},
- dom.summary = self.createDom('div', { className: 'summary' }),
- dom.details = self.createDom('div', { id: 'details' }))
- );
- }
-};
-jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter);jasmine.HtmlReporter.ReporterView = function(dom) {
- this.startedAt = new Date();
- this.runningSpecCount = 0;
- this.completeSpecCount = 0;
- this.passedCount = 0;
- this.failedCount = 0;
- this.skippedCount = 0;
-
- this.createResultsMenu = function() {
- this.resultsMenu = this.createDom('span', {className: 'resultsMenu bar'},
- this.summaryMenuItem = this.createDom('a', {className: 'summaryMenuItem', href: "#"}, '0 specs'),
- ' | ',
- this.detailsMenuItem = this.createDom('a', {className: 'detailsMenuItem', href: "#"}, '0 failing'));
-
- this.summaryMenuItem.onclick = function() {
- dom.reporter.className = dom.reporter.className.replace(/ showDetails/g, '');
- };
-
- this.detailsMenuItem.onclick = function() {
- showDetails();
- };
- };
-
- this.addSpecs = function(specs, specFilter) {
- this.totalSpecCount = specs.length;
-
- this.views = {
- specs: {},
- suites: {}
- };
-
- for (var i = 0; i < specs.length; i++) {
- var spec = specs[i];
- this.views.specs[spec.id] = new jasmine.HtmlReporter.SpecView(spec, dom, this.views);
- if (specFilter(spec)) {
- this.runningSpecCount++;
- }
- }
- };
-
- this.specComplete = function(spec) {
- this.completeSpecCount++;
-
- if (isUndefined(this.views.specs[spec.id])) {
- this.views.specs[spec.id] = new jasmine.HtmlReporter.SpecView(spec, dom);
- }
-
- var specView = this.views.specs[spec.id];
-
- switch (specView.status()) {
- case 'passed':
- this.passedCount++;
- break;
-
- case 'failed':
- this.failedCount++;
- break;
-
- case 'skipped':
- this.skippedCount++;
- break;
- }
-
- specView.refresh();
- this.refresh();
- };
-
- this.suiteComplete = function(suite) {
- var suiteView = this.views.suites[suite.id];
- if (isUndefined(suiteView)) {
- return;
- }
- suiteView.refresh();
- };
-
- this.refresh = function() {
-
- if (isUndefined(this.resultsMenu)) {
- this.createResultsMenu();
- }
-
- // currently running UI
- if (isUndefined(this.runningAlert)) {
- this.runningAlert = this.createDom('a', {href: "?", className: "runningAlert bar"});
- dom.alert.appendChild(this.runningAlert);
- }
- this.runningAlert.innerHTML = "Running " + this.completeSpecCount + " of " + specPluralizedFor(this.totalSpecCount);
-
- // skipped specs UI
- if (isUndefined(this.skippedAlert)) {
- this.skippedAlert = this.createDom('a', {href: "?", className: "skippedAlert bar"});
- }
-
- this.skippedAlert.innerHTML = "Skipping " + this.skippedCount + " of " + specPluralizedFor(this.totalSpecCount) + " - run all";
-
- if (this.skippedCount === 1 && isDefined(dom.alert)) {
- dom.alert.appendChild(this.skippedAlert);
- }
-
- // passing specs UI
- if (isUndefined(this.passedAlert)) {
- this.passedAlert = this.createDom('span', {href: "?", className: "passingAlert bar"});
- }
- this.passedAlert.innerHTML = "Passing " + specPluralizedFor(this.passedCount);
-
- // failing specs UI
- if (isUndefined(this.failedAlert)) {
- this.failedAlert = this.createDom('span', {href: "?", className: "failingAlert bar"});
- }
- this.failedAlert.innerHTML = "Failing " + specPluralizedFor(this.failedCount);
-
- if (this.failedCount === 1 && isDefined(dom.alert)) {
- dom.alert.appendChild(this.failedAlert);
- dom.alert.appendChild(this.resultsMenu);
- }
-
- // summary info
- this.summaryMenuItem.innerHTML = "" + specPluralizedFor(this.runningSpecCount);
- this.detailsMenuItem.innerHTML = "" + this.failedCount + " failing";
- };
-
- this.complete = function() {
- dom.alert.removeChild(this.runningAlert);
-
- this.skippedAlert.innerHTML = "Ran " + this.runningSpecCount + " of " + specPluralizedFor(this.totalSpecCount) + " - run all";
-
- if (this.failedCount === 0) {
- dom.alert.appendChild(this.createDom('span', {className: 'passingAlert bar'}, "Passing " + specPluralizedFor(this.passedCount)));
- } else {
- showDetails();
- }
-
- dom.banner.appendChild(this.createDom('span', {className: 'duration'}, "finished in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s"));
- };
-
- return this;
-
- function showDetails() {
- if (dom.reporter.className.search(/showDetails/) === -1) {
- dom.reporter.className += " showDetails";
- }
- }
-
- function isUndefined(obj) {
- return typeof obj === 'undefined';
- }
-
- function isDefined(obj) {
- return !isUndefined(obj);
- }
-
- function specPluralizedFor(count) {
- var str = count + " spec";
- if (count > 1) {
- str += "s"
- }
- return str;
- }
-
-};
-
-jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter.ReporterView);
-
-
-jasmine.HtmlReporter.SpecView = function(spec, dom, views) {
- this.spec = spec;
- this.dom = dom;
- this.views = views;
-
- this.symbol = this.createDom('li', { className: 'pending' });
- this.dom.symbolSummary.appendChild(this.symbol);
-
- this.summary = this.createDom('div', { className: 'specSummary' },
- this.createDom('a', {
- className: 'description',
- href: '?spec=' + encodeURIComponent(this.spec.getFullName()),
- title: this.spec.getFullName()
- }, this.spec.description)
- );
-
- this.detail = this.createDom('div', { className: 'specDetail' },
- this.createDom('a', {
- className: 'description',
- href: '?spec=' + encodeURIComponent(this.spec.getFullName()),
- title: this.spec.getFullName()
- }, this.spec.getFullName())
- );
-};
-
-jasmine.HtmlReporter.SpecView.prototype.status = function() {
- return this.getSpecStatus(this.spec);
-};
-
-jasmine.HtmlReporter.SpecView.prototype.refresh = function() {
- this.symbol.className = this.status();
-
- switch (this.status()) {
- case 'skipped':
- break;
-
- case 'passed':
- this.appendSummaryToSuiteDiv();
- break;
-
- case 'failed':
- this.appendSummaryToSuiteDiv();
- this.appendFailureDetail();
- break;
- }
-};
-
-jasmine.HtmlReporter.SpecView.prototype.appendSummaryToSuiteDiv = function() {
- this.summary.className += ' ' + this.status();
- this.appendToSummary(this.spec, this.summary);
-};
-
-jasmine.HtmlReporter.SpecView.prototype.appendFailureDetail = function() {
- this.detail.className += ' ' + this.status();
-
- var resultItems = this.spec.results().getItems();
- var messagesDiv = this.createDom('div', { className: 'messages' });
-
- for (var i = 0; i < resultItems.length; i++) {
- var result = resultItems[i];
-
- if (result.type == 'log') {
- messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
- } else if (result.type == 'expect' && result.passed && !result.passed()) {
- messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
-
- if (result.trace.stack) {
- messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
- }
- }
- }
-
- if (messagesDiv.childNodes.length > 0) {
- this.detail.appendChild(messagesDiv);
- this.dom.details.appendChild(this.detail);
- }
-};
-
-jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter.SpecView);jasmine.HtmlReporter.SuiteView = function(suite, dom, views) {
- this.suite = suite;
- this.dom = dom;
- this.views = views;
-
- this.element = this.createDom('div', { className: 'suite' },
- this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(this.suite.getFullName()) }, this.suite.description)
- );
-
- this.appendToSummary(this.suite, this.element);
-};
-
-jasmine.HtmlReporter.SuiteView.prototype.status = function() {
- return this.getSpecStatus(this.suite);
-};
-
-jasmine.HtmlReporter.SuiteView.prototype.refresh = function() {
- this.element.className += " " + this.status();
-};
-
-jasmine.HtmlReporterHelpers.addHelpers(jasmine.HtmlReporter.SuiteView);
-
-/* @deprecated Use jasmine.HtmlReporter instead
- */
-jasmine.TrivialReporter = function(doc) {
- this.document = doc || document;
- this.suiteDivs = {};
- this.logRunningSpecs = false;
-};
-
-jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
- var el = document.createElement(type);
-
- for (var i = 2; i < arguments.length; i++) {
- var child = arguments[i];
-
- if (typeof child === 'string') {
- el.appendChild(document.createTextNode(child));
- } else {
- if (child) { el.appendChild(child); }
- }
- }
-
- for (var attr in attrs) {
- if (attr == "className") {
- el[attr] = attrs[attr];
- } else {
- el.setAttribute(attr, attrs[attr]);
- }
- }
-
- return el;
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerStarting = function(runner) {
- var showPassed, showSkipped;
-
- this.outerDiv = this.createDom('div', { id: 'TrivialReporter', className: 'jasmine_reporter' },
- this.createDom('div', { className: 'banner' },
- this.createDom('div', { className: 'logo' },
- this.createDom('span', { className: 'title' }, "Jasmine"),
- this.createDom('span', { className: 'version' }, runner.env.versionString())),
- this.createDom('div', { className: 'options' },
- "Show ",
- showPassed = this.createDom('input', { id: "__jasmine_TrivialReporter_showPassed__", type: 'checkbox' }),
- this.createDom('label', { "for": "__jasmine_TrivialReporter_showPassed__" }, " passed "),
- showSkipped = this.createDom('input', { id: "__jasmine_TrivialReporter_showSkipped__", type: 'checkbox' }),
- this.createDom('label', { "for": "__jasmine_TrivialReporter_showSkipped__" }, " skipped")
- )
- ),
-
- this.runnerDiv = this.createDom('div', { className: 'runner running' },
- this.createDom('a', { className: 'run_spec', href: '?' }, "run all"),
- this.runnerMessageSpan = this.createDom('span', {}, "Running..."),
- this.finishedAtSpan = this.createDom('span', { className: 'finished-at' }, ""))
- );
-
- this.document.body.appendChild(this.outerDiv);
-
- var suites = runner.suites();
- for (var i = 0; i < suites.length; i++) {
- var suite = suites[i];
- var suiteDiv = this.createDom('div', { className: 'suite' },
- this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
- this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
- this.suiteDivs[suite.id] = suiteDiv;
- var parentDiv = this.outerDiv;
- if (suite.parentSuite) {
- parentDiv = this.suiteDivs[suite.parentSuite.id];
- }
- parentDiv.appendChild(suiteDiv);
- }
-
- this.startedAt = new Date();
-
- var self = this;
- showPassed.onclick = function(evt) {
- if (showPassed.checked) {
- self.outerDiv.className += ' show-passed';
- } else {
- self.outerDiv.className = self.outerDiv.className.replace(/ show-passed/, '');
- }
- };
-
- showSkipped.onclick = function(evt) {
- if (showSkipped.checked) {
- self.outerDiv.className += ' show-skipped';
- } else {
- self.outerDiv.className = self.outerDiv.className.replace(/ show-skipped/, '');
- }
- };
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
- var results = runner.results();
- var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
- this.runnerDiv.setAttribute("class", className);
- //do it twice for IE
- this.runnerDiv.setAttribute("className", className);
- var specs = runner.specs();
- var specCount = 0;
- for (var i = 0; i < specs.length; i++) {
- if (this.specFilter(specs[i])) {
- specCount++;
- }
- }
- var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
- message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
- this.runnerMessageSpan.replaceChild(this.createDom('a', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
-
- this.finishedAtSpan.appendChild(document.createTextNode("Finished at " + new Date().toString()));
-};
-
-jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
- var results = suite.results();
- var status = results.passed() ? 'passed' : 'failed';
- if (results.totalCount === 0) { // todo: change this to check results.skipped
- status = 'skipped';
- }
- this.suiteDivs[suite.id].className += " " + status;
-};
-
-jasmine.TrivialReporter.prototype.reportSpecStarting = function(spec) {
- if (this.logRunningSpecs) {
- this.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
- }
-};
-
-jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
- var results = spec.results();
- var status = results.passed() ? 'passed' : 'failed';
- if (results.skipped) {
- status = 'skipped';
- }
- var specDiv = this.createDom('div', { className: 'spec ' + status },
- this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
- this.createDom('a', {
- className: 'description',
- href: '?spec=' + encodeURIComponent(spec.getFullName()),
- title: spec.getFullName()
- }, spec.description));
-
-
- var resultItems = results.getItems();
- var messagesDiv = this.createDom('div', { className: 'messages' });
- for (var i = 0; i < resultItems.length; i++) {
- var result = resultItems[i];
-
- if (result.type == 'log') {
- messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
- } else if (result.type == 'expect' && result.passed && !result.passed()) {
- messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
-
- if (result.trace.stack) {
- messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
- }
- }
- }
-
- if (messagesDiv.childNodes.length > 0) {
- specDiv.appendChild(messagesDiv);
- }
-
- this.suiteDivs[spec.suite.id].appendChild(specDiv);
-};
-
-jasmine.TrivialReporter.prototype.log = function() {
- var console = jasmine.getGlobal().console;
- if (console && console.log) {
- if (console.log.apply) {
- console.log.apply(console, arguments);
- } else {
- console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
- }
- }
-};
-
-jasmine.TrivialReporter.prototype.getLocation = function() {
- return this.document.location;
-};
-
-jasmine.TrivialReporter.prototype.specFilter = function(spec) {
- var paramMap = {};
- var params = this.getLocation().search.substring(1).split('&');
- for (var i = 0; i < params.length; i++) {
- var p = params[i].split('=');
- paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
- }
-
- if (!paramMap.spec) {
- return true;
- }
- return spec.getFullName().indexOf(paramMap.spec) === 0;
-};
-
+ }
+
+ if (!paramMap.spec) {
+ return true;
+ }
+ return spec.getFullName().indexOf(paramMap.spec) === 0;
+};
+
--- a/js/flotr2/lib/jasmine/jasmine.css
+++ b/js/flotr2/lib/jasmine/jasmine.css
@@ -1,82 +1,403 @@
-body { background-color: #eeeeee; padding: 0; margin: 5px; overflow-y: scroll; }
-
-#HTMLReporter { font-size: 11px; font-family: Monaco, "Lucida Console", monospace; line-height: 14px; color: #333333; }
-#HTMLReporter a { text-decoration: none; }
-#HTMLReporter a:hover { text-decoration: underline; }
-#HTMLReporter p, #HTMLReporter h1, #HTMLReporter h2, #HTMLReporter h3, #HTMLReporter h4, #HTMLReporter h5, #HTMLReporter h6 { margin: 0; line-height: 14px; }
-#HTMLReporter .banner, #HTMLReporter .symbolSummary, #HTMLReporter .summary, #HTMLReporter .resultMessage, #HTMLReporter .specDetail .description, #HTMLReporter .alert .bar, #HTMLReporter .stackTrace { padding-left: 9px; padding-right: 9px; }
-#HTMLReporter #jasmine_content { position: fixed; right: 100%; }
-#HTMLReporter .version { color: #aaaaaa; }
-#HTMLReporter .banner { margin-top: 14px; }
-#HTMLReporter .duration { color: #aaaaaa; float: right; }
-#HTMLReporter .symbolSummary { overflow: hidden; *zoom: 1; margin: 14px 0; }
-#HTMLReporter .symbolSummary li { display: block; float: left; height: 7px; width: 14px; margin-bottom: 7px; font-size: 16px; }
-#HTMLReporter .symbolSummary li.passed { font-size: 14px; }
-#HTMLReporter .symbolSummary li.passed:before { color: #5e7d00; content: "\02022"; }
-#HTMLReporter .symbolSummary li.failed { line-height: 9px; }
-#HTMLReporter .symbolSummary li.failed:before { color: #b03911; content: "x"; font-weight: bold; margin-left: -1px; }
-#HTMLReporter .symbolSummary li.skipped { font-size: 14px; }
-#HTMLReporter .symbolSummary li.skipped:before { color: #bababa; content: "\02022"; }
-#HTMLReporter .symbolSummary li.pending { line-height: 11px; }
-#HTMLReporter .symbolSummary li.pending:before { color: #aaaaaa; content: "-"; }
-#HTMLReporter .bar { line-height: 28px; font-size: 14px; display: block; color: #eee; }
-#HTMLReporter .runningAlert { background-color: #666666; }
-#HTMLReporter .skippedAlert { background-color: #aaaaaa; }
-#HTMLReporter .skippedAlert:first-child { background-color: #333333; }
-#HTMLReporter .skippedAlert:hover { text-decoration: none; color: white; text-decoration: underline; }
-#HTMLReporter .passingAlert { background-color: #a6b779; }
-#HTMLReporter .passingAlert:first-child { background-color: #5e7d00; }
-#HTMLReporter .failingAlert { background-color: #cf867e; }
-#HTMLReporter .failingAlert:first-child { background-color: #b03911; }
-#HTMLReporter .results { margin-top: 14px; }
-#HTMLReporter #details { display: none; }
-#HTMLReporter .resultsMenu, #HTMLReporter .resultsMenu a { background-color: #fff; color: #333333; }
-#HTMLReporter.showDetails .summaryMenuItem { font-weight: normal; text-decoration: inherit; }
-#HTMLReporter.showDetails .summaryMenuItem:hover { text-decoration: underline; }
-#HTMLReporter.showDetails .detailsMenuItem { font-weight: bold; text-decoration: underline; }
-#HTMLReporter.showDetails .summary { display: none; }
-#HTMLReporter.showDetails #details { display: block; }
-#HTMLReporter .summaryMenuItem { font-weight: bold; text-decoration: underline; }
-#HTMLReporter .summary { margin-top: 14px; }
-#HTMLReporter .summary .suite .suite, #HTMLReporter .summary .specSummary { margin-left: 14px; }
-#HTMLReporter .summary .specSummary.passed a { color: #5e7d00; }
-#HTMLReporter .summary .specSummary.failed a { color: #b03911; }
-#HTMLReporter .description + .suite { margin-top: 0; }
-#HTMLReporter .suite { margin-top: 14px; }
-#HTMLReporter .suite a { color: #333333; }
-#HTMLReporter #details .specDetail { margin-bottom: 28px; }
-#HTMLReporter #details .specDetail .description { display: block; color: white; background-color: #b03911; }
-#HTMLReporter .resultMessage { padding-top: 14px; color: #333333; }
-#HTMLReporter .resultMessage span.result { display: block; }
-#HTMLReporter .stackTrace { margin: 5px 0 0 0; max-height: 224px; overflow: auto; line-height: 18px; color: #666666; border: 1px solid #ddd; background: white; white-space: pre; }
-
-#TrivialReporter { padding: 8px 13px; position: absolute; top: 0; bottom: 0; left: 0; right: 0; overflow-y: scroll; background-color: white; font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif; /*.resultMessage {*/ /*white-space: pre;*/ /*}*/ }
-#TrivialReporter a:visited, #TrivialReporter a { color: #303; }
-#TrivialReporter a:hover, #TrivialReporter a:active { color: blue; }
-#TrivialReporter .run_spec { float: right; padding-right: 5px; font-size: .8em; text-decoration: none; }
-#TrivialReporter .banner { color: #303; background-color: #fef; padding: 5px; }
-#TrivialReporter .logo { float: left; font-size: 1.1em; padding-left: 5px; }
-#TrivialReporter .logo .version { font-size: .6em; padding-left: 1em; }
-#TrivialReporter .runner.running { background-color: yellow; }
-#TrivialReporter .options { text-align: right; font-size: .8em; }
-#TrivialReporter .suite { border: 1px outset gray; margin: 5px 0; padding-left: 1em; }
-#TrivialReporter .suite .suite { margin: 5px; }
-#TrivialReporter .suite.passed { background-color: #dfd; }
-#TrivialReporter .suite.failed { background-color: #fdd; }
-#TrivialReporter .spec { margin: 5px; padding-left: 1em; clear: both; }
-#TrivialReporter .spec.failed, #TrivialReporter .spec.passed, #TrivialReporter .spec.skipped { padding-bottom: 5px; border: 1px solid gray; }
-#TrivialReporter .spec.failed { background-color: #fbb; border-color: red; }
-#TrivialReporter .spec.passed { background-color: #bfb; border-color: green; }
-#TrivialReporter .spec.skipped { background-color: #bbb; }
-#TrivialReporter .messages { border-left: 1px dashed gray; padding-left: 1em; padding-right: 1em; }
-#TrivialReporter .passed { background-color: #cfc; display: none; }
-#TrivialReporter .failed { background-color: #fbb; }
-#TrivialReporter .skipped { color: #777; background-color: #eee; display: none; }
-#TrivialReporter .resultMessage span.result { display: block; line-height: 2em; color: black; }
-#TrivialReporter .resultMessage .mismatch { color: black; }
-#TrivialReporter .stackTrace { white-space: pre; font-size: .8em; margin-left: 10px; max-height: 5em; overflow: auto; border: 1px inset red; padding: 1em; background: #eef; }
-#TrivialReporter .finished-at { padding-left: 1em; font-size: .6em; }
-#TrivialReporter.show-passed .passed, #TrivialReporter.show-skipped .skipped { display: block; }
-#TrivialReporter #jasmine_content { position: fixed; right: 100%; }
-#TrivialReporter .runner { border: 1px solid gray; display: block; margin: 5px 0; padding: 2px 0 2px 10px; }
-
+body {
+ background-color: #eeeeee;
+ padding: 0;
+ margin: 5px;
+ overflow-y: scroll;
+}
+
+#HTMLReporter {
+ font-size: 11px;
+ font-family: Monaco, "Lucida Console", monospace;
+ line-height: 14px;
+ color: #333333;
+}
+
+#HTMLReporter a {
+ text-decoration: none;
+}
+
+#HTMLReporter a:hover {
+ text-decoration: underline;
+}
+
+#HTMLReporter p, #HTMLReporter h1, #HTMLReporter h2, #HTMLReporter h3, #HTMLReporter h4, #HTMLReporter h5, #HTMLReporter h6 {
+ margin: 0;
+ line-height: 14px;
+}
+
+#HTMLReporter .banner, #HTMLReporter .symbolSummary, #HTMLReporter .summary, #HTMLReporter .resultMessage, #HTMLReporter .specDetail .description, #HTMLReporter .alert .bar, #HTMLReporter .stackTrace {
+ padding-left: 9px;
+ padding-right: 9px;
+}
+
+#HTMLReporter #jasmine_content {
+ position: fixed;
+ right: 100%;
+}
+
+#HTMLReporter .version {
+ color: #aaaaaa;
+}
+
+#HTMLReporter .banner {
+ margin-top: 14px;
+}
+
+#HTMLReporter .duration {
+ color: #aaaaaa;
+ float: right;
+}
+
+#HTMLReporter .symbolSummary {
+ overflow: hidden;
+ *zoom: 1;
+ margin: 14px 0;
+}
+
+#HTMLReporter .symbolSummary li {
+ display: block;
+ float: left;
+ height: 7px;
+ width: 14px;
+ margin-bottom: 7px;
+ font-size: 16px;
+}
+
+#HTMLReporter .symbolSummary li.passed {
+ font-size: 14px;
+}
+
+#HTMLReporter .symbolSummary li.passed:before {
+ color: #5e7d00;
+ content: "\02022";
+}
+
+#HTMLReporter .symbolSummary li.failed {
+ line-height: 9px;
+}
+
+#HTMLReporter .symbolSummary li.failed:before {
+ color: #b03911;
+ content: "x";
+ font-weight: bold;
+ margin-left: -1px;
+}
+
+#HTMLReporter .symbolSummary li.skipped {
+ font-size: 14px;
+}
+
+#HTMLReporter .symbolSummary li.skipped:before {
+ color: #bababa;
+ content: "\02022";
+}
+
+#HTMLReporter .symbolSummary li.pending {
+ line-height: 11px;
+}
+
+#HTMLReporter .symbolSummary li.pending:before {
+ color: #aaaaaa;
+ content: "-";
+}
+
+#HTMLReporter .bar {
+ line-height: 28px;
+ font-size: 14px;
+ display: block;
+ color: #eee;
+}
+
+#HTMLReporter .runningAlert {
+ background-color: #666666;
+}
+
+#HTMLReporter .skippedAlert {
+ background-color: #aaaaaa;
+}
+
+#HTMLReporter .skippedAlert:first-child {
+ background-color: #333333;
+}
+
+#HTMLReporter .skippedAlert:hover {
+ text-decoration: none;
+ color: white;
+ text-decoration: underline;
+}
+
+#HTMLReporter .passingAlert {
+ background-color: #a6b779;
+}
+
+#HTMLReporter .passingAlert:first-child {
+ background-color: #5e7d00;
+}
+
+#HTMLReporter .failingAlert {
+ background-color: #cf867e;
+}
+
+#HTMLReporter .failingAlert:first-child {
+ background-color: #b03911;
+}
+
+#HTMLReporter .results {
+ margin-top: 14px;
+}
+
+#HTMLReporter #details {
+ display: none;
+}
+
+#HTMLReporter .resultsMenu, #HTMLReporter .resultsMenu a {
+ background-color: #fff;
+ color: #333333;
+}
+
+#HTMLReporter.showDetails .summaryMenuItem {
+ font-weight: normal;
+ text-decoration: inherit;
+}
+
+#HTMLReporter.showDetails .summaryMenuItem:hover {
+ text-decoration: underline;
+}
+
+#HTMLReporter.showDetails .detailsMenuItem {
+ font-weight: bold;
+ text-decoration: underline;
+}
+
+#HTMLReporter.showDetails .summary {
+ display: none;
+}
+
+#HTMLReporter.showDetails #details {
+ display: block;
+}
+
+#HTMLReporter .summaryMenuItem {
+ font-weight: bold;
+ text-decoration: underline;
+}
+
+#HTMLReporter .summary {
+ margin-top: 14px;
+}
+
+#HTMLReporter .summary .suite .suite, #HTMLReporter .summary .specSummary {
+ margin-left: 14px;
+}
+
+#HTMLReporter .summary .specSummary.passed a {
+ color: #5e7d00;
+}
+
+#HTMLReporter .summary .specSummary.failed a {
+ color: #b03911;
+}
+
+#HTMLReporter .description + .suite {
+ margin-top: 0;
+}
+
+#HTMLReporter .suite {
+ margin-top: 14px;
+}
+
+#HTMLReporter .suite a {
+ color: #333333;
+}
+
+#HTMLReporter #details .specDetail {
+ margin-bottom: 28px;
+}
+
+#HTMLReporter #details .specDetail .description {
+ display: block;
+ color: white;
+ background-color: #b03911;
+}
+
+#HTMLReporter .resultMessage {
+ padding-top: 14px;
+ color: #333333;
+}
+
+#HTMLReporter .resultMessage span.result {
+ display: block;
+}
+
+#HTMLReporter .stackTrace {
+ margin: 5px 0 0 0;
+ max-height: 224px;
+ overflow: auto;
+ line-height: 18px;
+ color: #666666;
+ border: 1px solid #ddd;
+ background: white;
+ white-space: pre;
+}
+
+#TrivialReporter {
+ padding: 8px 13px;
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ overflow-y: scroll;
+ background-color: white;
+ font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif; /*.resultMessage {*/
+ /*white-space: pre;*/
+ /*}*/
+}
+
+#TrivialReporter a:visited, #TrivialReporter a {
+ color: #303;
+}
+
+#TrivialReporter a:hover, #TrivialReporter a:active {
+ color: blue;
+}
+
+#TrivialReporter .run_spec {
+ float: right;
+ padding-right: 5px;
+ font-size: .8em;
+ text-decoration: none;
+}
+
+#TrivialReporter .banner {
+ color: #303;
+ background-color: #fef;
+ padding: 5px;
+}
+
+#TrivialReporter .logo {
+ float: left;
+ font-size: 1.1em;
+ padding-left: 5px;
+}
+
+#TrivialReporter .logo .version {
+ font-size: .6em;
+ padding-left: 1em;
+}
+
+#TrivialReporter .runner.running {
+ background-color: yellow;
+}
+
+#TrivialReporter .options {
+ text-align: right;
+ font-size: .8em;
+}
+
+#TrivialReporter .suite {
+ border: 1px outset gray;
+ margin: 5px 0;
+ padding-left: 1em;
+}
+
+#TrivialReporter .suite .suite {
+ margin: 5px;
+}
+
+#TrivialReporter .suite.passed {
+ background-color: #dfd;
+}
+
+#TrivialReporter .suite.failed {
+ background-color: #fdd;
+}
+
+#TrivialReporter .spec {
+ margin: 5px;
+ padding-left: 1em;
+ clear: both;
+}
+
+#TrivialReporter .spec.failed, #TrivialReporter .spec.passed, #TrivialReporter .spec.skipped {
+ padding-bottom: 5px;
+ border: 1px solid gray;
+}
+
+#TrivialReporter .spec.failed {
+ background-color: #fbb;
+ border-color: red;
+}
+
+#TrivialReporter .spec.passed {
+ background-color: #bfb;
+ border-color: green;
+}
+
+#TrivialReporter .spec.skipped {
+ background-color: #bbb;
+}
+
+#TrivialReporter .messages {
+ border-left: 1px dashed gray;
+ padding-left: 1em;
+ padding-right: 1em;
+}
+
+#TrivialReporter .passed {
+ background-color: #cfc;
+ display: none;
+}
+
+#TrivialReporter .failed {
+ background-color: #fbb;
+}
+
+#TrivialReporter .skipped {
+ color: #777;
+ background-color: #eee;
+ display: none;
+}
+
+#TrivialReporter .resultMessage span.result {
+ display: block;
+ line-height: 2em;
+ color: black;
+}
+
+#TrivialReporter .resultMessage .mismatch {
+ color: black;
+}
+
+#TrivialReporter .stackTrace {
+ white-space: pre;
+ font-size: .8em;
+ margin-left: 10px;
+ max-height: 5em;
+ overflow: auto;
+ border: 1px inset red;
+ padding: 1em;
+ background: #eef;
+}
+
+#TrivialReporter .finished-at {
+ padding-left: 1em;
+ font-size: .6em;
+}
+
+#TrivialReporter.show-passed .passed, #TrivialReporter.show-skipped .skipped {
+ display: block;
+}
+
+#TrivialReporter #jasmine_content {
+ position: fixed;
+ right: 100%;
+}
+
+#TrivialReporter .runner {
+ border: 1px solid gray;
+ display: block;
+ margin: 5px 0;
+ padding: 2px 0 2px 10px;
+}
+
--- a/js/flotr2/lib/jasmine/jasmine.js
+++ b/js/flotr2/lib/jasmine/jasmine.js
@@ -10,8 +10,8 @@
/**
* @private
*/
-jasmine.unimplementedMethod_ = function() {
- throw new Error("unimplemented method");
+jasmine.unimplementedMethod_ = function () {
+ throw new Error("unimplemented method");
};
/**
@@ -39,12 +39,12 @@
*/
jasmine.DEFAULT_TIMEOUT_INTERVAL = 5000;
-jasmine.getGlobal = function() {
- function getGlobal() {
- return this;
- }
-
- return getGlobal();
+jasmine.getGlobal = function () {
+ function getGlobal() {
+ return this;
+ }
+
+ return getGlobal();
};
/**
@@ -55,16 +55,16 @@
* @param base {Object} bound 'this' for the function
* @param name {Function} function to find
*/
-jasmine.bindOriginal_ = function(base, name) {
- var original = base[name];
- if (original.apply) {
- return function() {
- return original.apply(base, arguments);
- };
- } else {
- // IE support
- return jasmine.getGlobal()[name];
- }
+jasmine.bindOriginal_ = function (base, name) {
+ var original = base[name];
+ if (original.apply) {
+ return function () {
+ return original.apply(base, arguments);
+ };
+ } else {
+ // IE support
+ return jasmine.getGlobal()[name];
+ }
};
jasmine.setTimeout = jasmine.bindOriginal_(jasmine.getGlobal(), 'setTimeout');
@@ -72,51 +72,51 @@
jasmine.setInterval = jasmine.bindOriginal_(jasmine.getGlobal(), 'setInterval');
jasmine.clearInterval = jasmine.bindOriginal_(jasmine.getGlobal(), 'clearInterval');
-jasmine.MessageResult = function(values) {
- this.type = 'log';
- this.values = values;
- this.trace = new Error(); // todo: test better
-};
-
-jasmine.MessageResult.prototype.toString = function() {
- var text = "";
- for (var i = 0; i < this.values.length; i++) {
- if (i > 0) text += " ";
- if (jasmine.isString_(this.values[i])) {
- text += this.values[i];
- } else {
- text += jasmine.pp(this.values[i]);
- }
- }
- return text;
-};
-
-jasmine.ExpectationResult = function(params) {
- this.type = 'expect';
- this.matcherName = params.matcherName;
- this.passed_ = params.passed;
- this.expected = params.expected;
- this.actual = params.actual;
- this.message = this.passed_ ? 'Passed.' : params.message;
-
- var trace = (params.trace || new Error(this.message));
- this.trace = this.passed_ ? '' : trace;
+jasmine.MessageResult = function (values) {
+ this.type = 'log';
+ this.values = values;
+ this.trace = new Error(); // todo: test better
+};
+
+jasmine.MessageResult.prototype.toString = function () {
+ var text = "";
+ for (var i = 0; i < this.values.length; i++) {
+ if (i > 0) text += " ";
+ if (jasmine.isString_(this.values[i])) {
+ text += this.values[i];
+ } else {
+ text += jasmine.pp(this.values[i]);
+ }
+ }
+ return text;
+};
+
+jasmine.ExpectationResult = function (params) {
+ this.type = 'expect';
+ this.matcherName = params.matcherName;
+ this.passed_ = params.passed;
+ this.expected = params.expected;
+ this.actual = params.actual;
+ this.message = this.passed_ ? 'Passed.' : params.message;
+
+ var trace = (params.trace || new Error(this.message));
+ this.trace = this.passed_ ? '' : trace;
};
jasmine.ExpectationResult.prototype.toString = function () {
- return this.message;
+ return this.message;
};
jasmine.ExpectationResult.prototype.passed = function () {
- return this.passed_;
+ return this.passed_;
};
/**
* Getter for the Jasmine environment. Ensures one gets created
*/
-jasmine.getEnv = function() {
- var env = jasmine.currentEnv_ = jasmine.currentEnv_ || new jasmine.Env();
- return env;
+jasmine.getEnv = function () {
+ var env = jasmine.currentEnv_ = jasmine.currentEnv_ || new jasmine.Env();
+ return env;
};
/**
@@ -125,8 +125,8 @@
* @param value
* @returns {Boolean}
*/
-jasmine.isArray_ = function(value) {
- return jasmine.isA_("Array", value);
+jasmine.isArray_ = function (value) {
+ return jasmine.isA_("Array", value);
};
/**
@@ -135,8 +135,8 @@
* @param value
* @returns {Boolean}
*/
-jasmine.isString_ = function(value) {
- return jasmine.isA_("String", value);
+jasmine.isString_ = function (value) {
+ return jasmine.isA_("String", value);
};
/**
@@ -145,8 +145,8 @@
* @param value
* @returns {Boolean}
*/
-jasmine.isNumber_ = function(value) {
- return jasmine.isA_("Number", value);
+jasmine.isNumber_ = function (value) {
+ return jasmine.isA_("Number", value);
};
/**
@@ -156,8 +156,8 @@
* @param value
* @returns {Boolean}
*/
-jasmine.isA_ = function(typeName, value) {
- return Object.prototype.toString.apply(value) === '[object ' + typeName + ']';
+jasmine.isA_ = function (typeName, value) {
+ return Object.prototype.toString.apply(value) === '[object ' + typeName + ']';
};
/**
@@ -166,10 +166,10 @@
* @param value {Object} an object to be outputted
* @returns {String}
*/
-jasmine.pp = function(value) {
- var stringPrettyPrinter = new jasmine.StringPrettyPrinter();
- stringPrettyPrinter.format(value);
- return stringPrettyPrinter.string;
+jasmine.pp = function (value) {
+ var stringPrettyPrinter = new jasmine.StringPrettyPrinter();
+ stringPrettyPrinter.format(value);
+ return stringPrettyPrinter.string;
};
/**
@@ -178,8 +178,8 @@
* @param {Object} obj object to check
* @returns {Boolean}
*/
-jasmine.isDomNode = function(obj) {
- return obj.nodeType > 0;
+jasmine.isDomNode = function (obj) {
+ return obj.nodeType > 0;
};
/**
@@ -192,8 +192,8 @@
* @param {Class} clazz
* @returns matchable object of the type clazz
*/
-jasmine.any = function(clazz) {
- return new jasmine.Matchers.Any(clazz);
+jasmine.any = function (clazz) {
+ return new jasmine.Matchers.Any(clazz);
};
/**
@@ -255,41 +255,41 @@
* @see spyOn, jasmine.createSpy, jasmine.createSpyObj
* @param {String} name
*/
-jasmine.Spy = function(name) {
- /**
- * The name of the spy, if provided.
- */
- this.identity = name || 'unknown';
- /**
- * Is this Object a spy?
- */
- this.isSpy = true;
- /**
- * The actual function this spy stubs.
- */
- this.plan = function() {
- };
- /**
- * Tracking of the most recent call to the spy.
- * @example
- * var mySpy = jasmine.createSpy('foo');
- * mySpy(1, 2);
- * mySpy.mostRecentCall.args = [1, 2];
- */
- this.mostRecentCall = {};
-
- /**
- * Holds arguments for each call to the spy, indexed by call count
- * @example
- * var mySpy = jasmine.createSpy('foo');
- * mySpy(1, 2);
- * mySpy(7, 8);
- * mySpy.mostRecentCall.args = [7, 8];
- * mySpy.argsForCall[0] = [1, 2];
- * mySpy.argsForCall[1] = [7, 8];
- */
- this.argsForCall = [];
- this.calls = [];
+jasmine.Spy = function (name) {
+ /**
+ * The name of the spy, if provided.
+ */
+ this.identity = name || 'unknown';
+ /**
+ * Is this Object a spy?
+ */
+ this.isSpy = true;
+ /**
+ * The actual function this spy stubs.
+ */
+ this.plan = function () {
+ };
+ /**
+ * Tracking of the most recent call to the spy.
+ * @example
+ * var mySpy = jasmine.createSpy('foo');
+ * mySpy(1, 2);
+ * mySpy.mostRecentCall.args = [1, 2];
+ */
+ this.mostRecentCall = {};
+
+ /**
+ * Holds arguments for each call to the spy, indexed by call count
+ * @example
+ * var mySpy = jasmine.createSpy('foo');
+ * mySpy(1, 2);
+ * mySpy(7, 8);
+ * mySpy.mostRecentCall.args = [7, 8];
+ * mySpy.argsForCall[0] = [1, 2];
+ * mySpy.argsForCall[1] = [7, 8];
+ */
+ this.argsForCall = [];
+ this.calls = [];
};
/**
@@ -303,9 +303,9 @@
* // defining a spy on an existing property: foo.bar
* spyOn(foo, 'bar').andCallThrough();
*/
-jasmine.Spy.prototype.andCallThrough = function() {
- this.plan = this.originalValue;
- return this;
+jasmine.Spy.prototype.andCallThrough = function () {
+ this.plan = this.originalValue;
+ return this;
};
/**
@@ -320,11 +320,11 @@
*
* @param {Object} value
*/
-jasmine.Spy.prototype.andReturn = function(value) {
- this.plan = function() {
- return value;
- };
- return this;
+jasmine.Spy.prototype.andReturn = function (value) {
+ this.plan = function () {
+ return value;
+ };
+ return this;
};
/**
@@ -339,11 +339,11 @@
*
* @param {String} exceptionMsg
*/
-jasmine.Spy.prototype.andThrow = function(exceptionMsg) {
- this.plan = function() {
- throw exceptionMsg;
- };
- return this;
+jasmine.Spy.prototype.andThrow = function (exceptionMsg) {
+ this.plan = function () {
+ throw exceptionMsg;
+ };
+ return this;
};
/**
@@ -361,9 +361,9 @@
*
* @param {Function} fakeFunc
*/
-jasmine.Spy.prototype.andCallFake = function(fakeFunc) {
- this.plan = fakeFunc;
- return this;
+jasmine.Spy.prototype.andCallFake = function (fakeFunc) {
+ this.plan = fakeFunc;
+ return this;
};
/**
@@ -380,36 +380,36 @@
*
* expect(foo.bar.callCount).toEqual(0);
*/
-jasmine.Spy.prototype.reset = function() {
- this.wasCalled = false;
- this.callCount = 0;
- this.argsForCall = [];
- this.calls = [];
- this.mostRecentCall = {};
-};
-
-jasmine.createSpy = function(name) {
-
- var spyObj = function() {
- spyObj.wasCalled = true;
- spyObj.callCount++;
- var args = jasmine.util.argsToArray(arguments);
- spyObj.mostRecentCall.object = this;
- spyObj.mostRecentCall.args = args;
- spyObj.argsForCall.push(args);
- spyObj.calls.push({object: this, args: args});
- return spyObj.plan.apply(this, arguments);
- };
-
- var spy = new jasmine.Spy(name);
-
- for (var prop in spy) {
- spyObj[prop] = spy[prop];
- }
-
- spyObj.reset();
-
- return spyObj;
+jasmine.Spy.prototype.reset = function () {
+ this.wasCalled = false;
+ this.callCount = 0;
+ this.argsForCall = [];
+ this.calls = [];
+ this.mostRecentCall = {};
+};
+
+jasmine.createSpy = function (name) {
+
+ var spyObj = function () {
+ spyObj.wasCalled = true;
+ spyObj.callCount++;
+ var args = jasmine.util.argsToArray(arguments);
+ spyObj.mostRecentCall.object = this;
+ spyObj.mostRecentCall.args = args;
+ spyObj.argsForCall.push(args);
+ spyObj.calls.push({object: this, args: args});
+ return spyObj.plan.apply(this, arguments);
+ };
+
+ var spy = new jasmine.Spy(name);
+
+ for (var prop in spy) {
+ spyObj[prop] = spy[prop];
+ }
+
+ spyObj.reset();
+
+ return spyObj;
};
/**
@@ -418,8 +418,8 @@
* @param {jasmine.Spy|Object} putativeSpy
* @returns {Boolean}
*/
-jasmine.isSpy = function(putativeSpy) {
- return putativeSpy && putativeSpy.isSpy;
+jasmine.isSpy = function (putativeSpy) {
+ return putativeSpy && putativeSpy.isSpy;
};
/**
@@ -429,15 +429,15 @@
* @param {String} baseName name of spy class
* @param {Array} methodNames array of names of methods to make spies
*/
-jasmine.createSpyObj = function(baseName, methodNames) {
- if (!jasmine.isArray_(methodNames) || methodNames.length === 0) {
- throw new Error('createSpyObj requires a non-empty array of method names to create spies for');
- }
- var obj = {};
- for (var i = 0; i < methodNames.length; i++) {
- obj[methodNames[i]] = jasmine.createSpy(baseName + '.' + methodNames[i]);
- }
- return obj;
+jasmine.createSpyObj = function (baseName, methodNames) {
+ if (!jasmine.isArray_(methodNames) || methodNames.length === 0) {
+ throw new Error('createSpyObj requires a non-empty array of method names to create spies for');
+ }
+ var obj = {};
+ for (var i = 0; i < methodNames.length; i++) {
+ obj[methodNames[i]] = jasmine.createSpy(baseName + '.' + methodNames[i]);
+ }
+ return obj;
};
/**
@@ -445,9 +445,9 @@
*
* Be careful not to leave calls to <code>jasmine.log</code> in production code.
*/
-jasmine.log = function() {
- var spec = jasmine.getEnv().currentSpec;
- spec.log.apply(spec, arguments);
+jasmine.log = function () {
+ var spec = jasmine.getEnv().currentSpec;
+ spec.log.apply(spec, arguments);
};
/**
@@ -465,8 +465,8 @@
* @param methodName
* @returns a Jasmine spy that can be chained with all spy methods
*/
-var spyOn = function(obj, methodName) {
- return jasmine.getEnv().currentSpec.spyOn(obj, methodName);
+var spyOn = function (obj, methodName) {
+ return jasmine.getEnv().currentSpec.spyOn(obj, methodName);
};
if (isCommonJS) exports.spyOn = spyOn;
@@ -483,8 +483,8 @@
* @param {String} desc description of this specification
* @param {Function} func defines the preconditions and expectations of the spec
*/
-var it = function(desc, func) {
- return jasmine.getEnv().it(desc, func);
+var it = function (desc, func) {
+ return jasmine.getEnv().it(desc, func);
};
if (isCommonJS) exports.it = it;
@@ -496,8 +496,8 @@
* @param {String} desc description of this specification
* @param {Function} func defines the preconditions and expectations of the spec
*/
-var xit = function(desc, func) {
- return jasmine.getEnv().xit(desc, func);
+var xit = function (desc, func) {
+ return jasmine.getEnv().xit(desc, func);
};
if (isCommonJS) exports.xit = xit;
@@ -509,8 +509,8 @@
*
* @param {Object} actual Actual value to test against and expected value
*/
-var expect = function(actual) {
- return jasmine.getEnv().currentSpec.expect(actual);
+var expect = function (actual) {
+ return jasmine.getEnv().currentSpec.expect(actual);
};
if (isCommonJS) exports.expect = expect;
@@ -519,8 +519,8 @@
*
* @param {Function} func Function that defines part of a jasmine spec.
*/
-var runs = function(func) {
- jasmine.getEnv().currentSpec.runs(func);
+var runs = function (func) {
+ jasmine.getEnv().currentSpec.runs(func);
};
if (isCommonJS) exports.runs = runs;
@@ -530,8 +530,8 @@
* @deprecated Use waitsFor() instead
* @param {Number} timeout milliseconds to wait
*/
-var waits = function(timeout) {
- jasmine.getEnv().currentSpec.waits(timeout);
+var waits = function (timeout) {
+ jasmine.getEnv().currentSpec.waits(timeout);
};
if (isCommonJS) exports.waits = waits;
@@ -542,8 +542,8 @@
* @param {String} optional_timeoutMessage
* @param {Number} optional_timeout
*/
-var waitsFor = function(latchFunction, optional_timeoutMessage, optional_timeout) {
- jasmine.getEnv().currentSpec.waitsFor.apply(jasmine.getEnv().currentSpec, arguments);
+var waitsFor = function (latchFunction, optional_timeoutMessage, optional_timeout) {
+ jasmine.getEnv().currentSpec.waitsFor.apply(jasmine.getEnv().currentSpec, arguments);
};
if (isCommonJS) exports.waitsFor = waitsFor;
@@ -554,8 +554,8 @@
*
* @param {Function} beforeEachFunction
*/
-var beforeEach = function(beforeEachFunction) {
- jasmine.getEnv().beforeEach(beforeEachFunction);
+var beforeEach = function (beforeEachFunction) {
+ jasmine.getEnv().beforeEach(beforeEachFunction);
};
if (isCommonJS) exports.beforeEach = beforeEach;
@@ -566,8 +566,8 @@
*
* @param {Function} afterEachFunction
*/
-var afterEach = function(afterEachFunction) {
- jasmine.getEnv().afterEach(afterEachFunction);
+var afterEach = function (afterEachFunction) {
+ jasmine.getEnv().afterEach(afterEachFunction);
};
if (isCommonJS) exports.afterEach = afterEach;
@@ -586,8 +586,8 @@
* @param {String} description A string, usually the class under test.
* @param {Function} specDefinitions function that defines several specs.
*/
-var describe = function(description, specDefinitions) {
- return jasmine.getEnv().describe(description, specDefinitions);
+var describe = function (description, specDefinitions) {
+ return jasmine.getEnv().describe(description, specDefinitions);
};
if (isCommonJS) exports.describe = describe;
@@ -597,38 +597,38 @@
* @param {String} description A string, usually the class under test.
* @param {Function} specDefinitions function that defines several specs.
*/
-var xdescribe = function(description, specDefinitions) {
- return jasmine.getEnv().xdescribe(description, specDefinitions);
+var xdescribe = function (description, specDefinitions) {
+ return jasmine.getEnv().xdescribe(description, specDefinitions);
};
if (isCommonJS) exports.xdescribe = xdescribe;
// Provide the XMLHttpRequest class for IE 5.x-6.x:
-jasmine.XmlHttpRequest = (typeof XMLHttpRequest == "undefined") ? function() {
- function tryIt(f) {
- try {
- return f();
- } catch(e) {
- }
- return null;
- }
-
- var xhr = tryIt(function() {
- return new ActiveXObject("Msxml2.XMLHTTP.6.0");
- }) ||
- tryIt(function() {
- return new ActiveXObject("Msxml2.XMLHTTP.3.0");
+jasmine.XmlHttpRequest = (typeof XMLHttpRequest == "undefined") ? function () {
+ function tryIt(f) {
+ try {
+ return f();
+ } catch (e) {
+ }
+ return null;
+ }
+
+ var xhr = tryIt(function () {
+ return new ActiveXObject("Msxml2.XMLHTTP.6.0");
}) ||
- tryIt(function() {
- return new ActiveXObject("Msxml2.XMLHTTP");
- }) ||
- tryIt(function() {
- return new ActiveXObject("Microsoft.XMLHTTP");
- });
-
- if (!xhr) throw new Error("This browser does not support XMLHttpRequest.");
-
- return xhr;
+ tryIt(function () {
+ return new ActiveXObject("Msxml2.XMLHTTP.3.0");
+ }) ||
+ tryIt(function () {
+ return new ActiveXObject("Msxml2.XMLHTTP");
+ }) ||
+ tryIt(function () {
+ return new ActiveXObject("Microsoft.XMLHTTP");
+ });
+
+ if (!xhr) throw new Error("This browser does not support XMLHttpRequest.");
+
+ return xhr;
} : XMLHttpRequest;
/**
* @namespace
@@ -642,59 +642,59 @@
* @param {Function} childClass
* @param {Function} parentClass
*/
-jasmine.util.inherit = function(childClass, parentClass) {
- /**
- * @private
- */
- var subclass = function() {
- };
- subclass.prototype = parentClass.prototype;
- childClass.prototype = new subclass();
-};
-
-jasmine.util.formatException = function(e) {
- var lineNumber;
- if (e.line) {
- lineNumber = e.line;
- }
- else if (e.lineNumber) {
- lineNumber = e.lineNumber;
- }
-
- var file;
-
- if (e.sourceURL) {
- file = e.sourceURL;
- }
- else if (e.fileName) {
- file = e.fileName;
- }
-
- var message = (e.name && e.message) ? (e.name + ': ' + e.message) : e.toString();
-
- if (file && lineNumber) {
- message += ' in ' + file + ' (line ' + lineNumber + ')';
- }
-
- return message;
-};
-
-jasmine.util.htmlEscape = function(str) {
- if (!str) return str;
- return str.replace(/&/g, '&')
- .replace(/</g, '<')
- .replace(/>/g, '>');
-};
-
-jasmine.util.argsToArray = function(args) {
- var arrayOfArgs = [];
- for (var i = 0; i < args.length; i++) arrayOfArgs.push(args[i]);
- return arrayOfArgs;
-};
-
-jasmine.util.extend = function(destination, source) {
- for (var property in source) destination[property] = source[property];
- return destination;
+jasmine.util.inherit = function (childClass, parentClass) {
+ /**
+ * @private
+ */
+ var subclass = function () {
+ };
+ subclass.prototype = parentClass.prototype;
+ childClass.prototype = new subclass();
+};
+
+jasmine.util.formatException = function (e) {
+ var lineNumber;
+ if (e.line) {
+ lineNumber = e.line;
+ }
+ else if (e.lineNumber) {
+ lineNumber = e.lineNumber;
+ }
+
+ var file;
+
+ if (e.sourceURL) {
+ file = e.sourceURL;
+ }
+ else if (e.fileName) {
+ file = e.fileName;
+ }
+
+ var message = (e.name && e.message) ? (e.name + ': ' + e.message) : e.toString();
+
+ if (file && lineNumber) {
+ message += ' in ' + file + ' (line ' + lineNumber + ')';
+ }
+
+ return message;
+};
+
+jasmine.util.htmlEscape = function (str) {
+ if (!str) return str;
+ return str.replace(/&/g, '&')
+ .replace(/</g, '<')
+ .replace(/>/g, '>');
+};
+
+jasmine.util.argsToArray = function (args) {
+ var arrayOfArgs = [];
+ for (var i = 0; i < args.length; i++) arrayOfArgs.push(args[i]);
+ return arrayOfArgs;
+};
+
+jasmine.util.extend = function (destination, source) {
+ for (var property in source) destination[property] = source[property];
+ return destination;
};
/**
@@ -702,31 +702,31 @@
*
* @constructor
*/
-jasmine.Env = function() {
- this.currentSpec = null;
- this.currentSuite = null;
- this.currentRunner_ = new jasmine.Runner(this);
-
- this.reporter = new jasmine.MultiReporter();
-
- this.updateInterval = jasmine.DEFAULT_UPDATE_INTERVAL;
- this.defaultTimeoutInterval = jasmine.DEFAULT_TIMEOUT_INTERVAL;
- this.lastUpdate = 0;
- this.specFilter = function() {
- return true;
- };
-
- this.nextSpecId_ = 0;
- this.nextSuiteId_ = 0;
- this.equalityTesters_ = [];
-
- // wrap matchers
- this.matchersClass = function() {
- jasmine.Matchers.apply(this, arguments);
- };
- jasmine.util.inherit(this.matchersClass, jasmine.Matchers);
-
- jasmine.Matchers.wrapInto_(jasmine.Matchers.prototype, this.matchersClass);
+jasmine.Env = function () {
+ this.currentSpec = null;
+ this.currentSuite = null;
+ this.currentRunner_ = new jasmine.Runner(this);
+
+ this.reporter = new jasmine.MultiReporter();
+
+ this.updateInterval = jasmine.DEFAULT_UPDATE_INTERVAL;
+ this.defaultTimeoutInterval = jasmine.DEFAULT_TIMEOUT_INTERVAL;
+ this.lastUpdate = 0;
+ this.specFilter = function () {
+ return true;
+ };
+
+ this.nextSpecId_ = 0;
+ this.nextSuiteId_ = 0;
+ this.equalityTesters_ = [];
+
+ // wrap matchers
+ this.matchersClass = function () {
+ jasmine.Matchers.apply(this, arguments);
+ };
+ jasmine.util.inherit(this.matchersClass, jasmine.Matchers);
+
+ jasmine.Matchers.wrapInto_(jasmine.Matchers.prototype, this.matchersClass);
};
@@ -739,270 +739,270 @@
* @returns an object containing jasmine version build info, if set.
*/
jasmine.Env.prototype.version = function () {
- if (jasmine.version_) {
- return jasmine.version_;
- } else {
- throw new Error('Version not set');
- }
+ if (jasmine.version_) {
+ return jasmine.version_;
+ } else {
+ throw new Error('Version not set');
+ }
};
/**
* @returns string containing jasmine version build info, if set.
*/
-jasmine.Env.prototype.versionString = function() {
- if (!jasmine.version_) {
- return "version unknown";
- }
-
- var version = this.version();
- var versionString = version.major + "." + version.minor + "." + version.build;
- if (version.release_candidate) {
- versionString += ".rc" + version.release_candidate;
- }
- versionString += " revision " + version.revision;
- return versionString;
+jasmine.Env.prototype.versionString = function () {
+ if (!jasmine.version_) {
+ return "version unknown";
+ }
+
+ var version = this.version();
+ var versionString = version.major + "." + version.minor + "." + version.build;
+ if (version.release_candidate) {
+ versionString += ".rc" + version.release_candidate;
+ }
+ versionString += " revision " + version.revision;
+ return versionString;
};
/**
* @returns a sequential integer starting at 0
*/
jasmine.Env.prototype.nextSpecId = function () {
- return this.nextSpecId_++;
+ return this.nextSpecId_++;
};
/**
* @returns a sequential integer starting at 0
*/
jasmine.Env.prototype.nextSuiteId = function () {
- return this.nextSuiteId_++;
+ return this.nextSuiteId_++;
};
/**
* Register a reporter to receive status updates from Jasmine.
* @param {jasmine.Reporter} reporter An object which will receive status updates.
*/
-jasmine.Env.prototype.addReporter = function(reporter) {
- this.reporter.addReporter(reporter);
-};
-
-jasmine.Env.prototype.execute = function() {
- this.currentRunner_.execute();
-};
-
-jasmine.Env.prototype.describe = function(description, specDefinitions) {
- var suite = new jasmine.Suite(this, description, specDefinitions, this.currentSuite);
-
- var parentSuite = this.currentSuite;
- if (parentSuite) {
- parentSuite.add(suite);
- } else {
- this.currentRunner_.add(suite);
- }
-
- this.currentSuite = suite;
-
- var declarationError = null;
- try {
- specDefinitions.call(suite);
- } catch(e) {
- declarationError = e;
- }
-
- if (declarationError) {
- this.it("encountered a declaration exception", function() {
- throw declarationError;
- });
- }
-
- this.currentSuite = parentSuite;
-
- return suite;
-};
-
-jasmine.Env.prototype.beforeEach = function(beforeEachFunction) {
- if (this.currentSuite) {
- this.currentSuite.beforeEach(beforeEachFunction);
- } else {
- this.currentRunner_.beforeEach(beforeEachFunction);
- }
+jasmine.Env.prototype.addReporter = function (reporter) {
+ this.reporter.addReporter(reporter);
+};
+
+jasmine.Env.prototype.execute = function () {
+ this.currentRunner_.execute();
+};
+
+jasmine.Env.prototype.describe = function (description, specDefinitions) {
+ var suite = new jasmine.Suite(this, description, specDefinitions, this.currentSuite);
+
+ var parentSuite = this.currentSuite;
+ if (parentSuite) {
+ parentSuite.add(suite);
+ } else {
+ this.currentRunner_.add(suite);
+ }
+
+ this.currentSuite = suite;
+
+ var declarationError = null;
+ try {
+ specDefinitions.call(suite);
+ } catch (e) {
+ declarationError = e;
+ }
+
+ if (declarationError) {
+ this.it("encountered a declaration exception", function () {
+ throw declarationError;
+ });
+ }
+
+ this.currentSuite = parentSuite;
+
+ return suite;
+};
+
+jasmine.Env.prototype.beforeEach = function (beforeEachFunction) {
+ if (this.currentSuite) {
+ this.currentSuite.beforeEach(beforeEachFunction);
+ } else {
+ this.currentRunner_.beforeEach(beforeEachFunction);
+ }
};
jasmine.Env.prototype.currentRunner = function () {
- return this.currentRunner_;
-};
-
-jasmine.Env.prototype.afterEach = function(afterEachFunction) {
- if (this.currentSuite) {
- this.currentSuite.afterEach(afterEachFunction);
- } else {
- this.currentRunner_.afterEach(afterEachFunction);
- }
-
-};
-
-jasmine.Env.prototype.xdescribe = function(desc, specDefinitions) {
- return {
- execute: function() {
- }
- };
-};
-
-jasmine.Env.prototype.it = function(description, func) {
- var spec = new jasmine.Spec(this, this.currentSuite, description);
- this.currentSuite.add(spec);
- this.currentSpec = spec;
-
- if (func) {
- spec.runs(func);
- }
-
- return spec;
-};
-
-jasmine.Env.prototype.xit = function(desc, func) {
- return {
- id: this.nextSpecId(),
- runs: function() {
- }
- };
-};
-
-jasmine.Env.prototype.compareObjects_ = function(a, b, mismatchKeys, mismatchValues) {
- if (a.__Jasmine_been_here_before__ === b && b.__Jasmine_been_here_before__ === a) {
- return true;
- }
-
- a.__Jasmine_been_here_before__ = b;
- b.__Jasmine_been_here_before__ = a;
-
- var hasKey = function(obj, keyName) {
- return obj !== null && obj[keyName] !== jasmine.undefined;
- };
-
- for (var property in b) {
- if (!hasKey(a, property) && hasKey(b, property)) {
- mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
- }
- }
- for (property in a) {
- if (!hasKey(b, property) && hasKey(a, property)) {
- mismatchKeys.push("expected missing key '" + property + "', but present in actual.");
- }
- }
- for (property in b) {
- if (property == '__Jasmine_been_here_before__') continue;
- if (!this.equals_(a[property], b[property], mismatchKeys, mismatchValues)) {
- mismatchValues.push("'" + property + "' was '" + (b[property] ? jasmine.util.htmlEscape(b[property].toString()) : b[property]) + "' in expected, but was '" + (a[property] ? jasmine.util.htmlEscape(a[property].toString()) : a[property]) + "' in actual.");
- }
- }
-
- if (jasmine.isArray_(a) && jasmine.isArray_(b) && a.length != b.length) {
- mismatchValues.push("arrays were not the same length");
- }
-
- delete a.__Jasmine_been_here_before__;
- delete b.__Jasmine_been_here_before__;
- return (mismatchKeys.length === 0 && mismatchValues.length === 0);
-};
-
-jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
- mismatchKeys = mismatchKeys || [];
- mismatchValues = mismatchValues || [];
-
- for (var i = 0; i < this.equalityTesters_.length; i++) {
- var equalityTester = this.equalityTesters_[i];
- var result = equalityTester(a, b, this, mismatchKeys, mismatchValues);
- if (result !== jasmine.undefined) return result;
- }
-
- if (a === b) return true;
-
- if (a === jasmine.undefined || a === null || b === jasmine.undefined || b === null) {
- return (a == jasmine.undefined && b == jasmine.undefined);
- }
-
- if (jasmine.isDomNode(a) && jasmine.isDomNode(b)) {
- return a === b;
- }
-
- if (a instanceof Date && b instanceof Date) {
- return a.getTime() == b.getTime();
- }
-
- if (a.jasmineMatches) {
- return a.jasmineMatches(b);
- }
-
- if (b.jasmineMatches) {
- return b.jasmineMatches(a);
- }
-
- if (a instanceof jasmine.Matchers.ObjectContaining) {
- return a.matches(b);
- }
-
- if (b instanceof jasmine.Matchers.ObjectContaining) {
- return b.matches(a);
- }
-
- if (jasmine.isString_(a) && jasmine.isString_(b)) {
- return (a == b);
- }
-
- if (jasmine.isNumber_(a) && jasmine.isNumber_(b)) {
- return (a == b);
- }
-
- if (typeof a === "object" && typeof b === "object") {
- return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
- }
-
- //Straight check
- return (a === b);
-};
-
-jasmine.Env.prototype.contains_ = function(haystack, needle) {
- if (jasmine.isArray_(haystack)) {
- for (var i = 0; i < haystack.length; i++) {
- if (this.equals_(haystack[i], needle)) return true;
- }
- return false;
- }
- return haystack.indexOf(needle) >= 0;
-};
-
-jasmine.Env.prototype.addEqualityTester = function(equalityTester) {
- this.equalityTesters_.push(equalityTester);
+ return this.currentRunner_;
+};
+
+jasmine.Env.prototype.afterEach = function (afterEachFunction) {
+ if (this.currentSuite) {
+ this.currentSuite.afterEach(afterEachFunction);
+ } else {
+ this.currentRunner_.afterEach(afterEachFunction);
+ }
+
+};
+
+jasmine.Env.prototype.xdescribe = function (desc, specDefinitions) {
+ return {
+ execute: function () {
+ }
+ };
+};
+
+jasmine.Env.prototype.it = function (description, func) {
+ var spec = new jasmine.Spec(this, this.currentSuite, description);
+ this.currentSuite.add(spec);
+ this.currentSpec = spec;
+
+ if (func) {
+ spec.runs(func);
+ }
+
+ return spec;
+};
+
+jasmine.Env.prototype.xit = function (desc, func) {
+ return {
+ id: this.nextSpecId(),
+ runs: function () {
+ }
+ };
+};
+
+jasmine.Env.prototype.compareObjects_ = function (a, b, mismatchKeys, mismatchValues) {
+ if (a.__Jasmine_been_here_before__ === b && b.__Jasmine_been_here_before__ === a) {
+ return true;
+ }
+
+ a.__Jasmine_been_here_before__ = b;
+ b.__Jasmine_been_here_before__ = a;
+
+ var hasKey = function (obj, keyName) {
+ return obj !== null && obj[keyName] !== jasmine.undefined;
+ };
+
+ for (var property in b) {
+ if (!hasKey(a, property) && hasKey(b, property)) {
+ mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
+ }
+ }
+ for (property in a) {
+ if (!hasKey(b, property) && hasKey(a, property)) {
+ mismatchKeys.push("expected missing key '" + property + "', but present in actual.");
+ }
+ }
+ for (property in b) {
+ if (property == '__Jasmine_been_here_before__') continue;
+ if (!this.equals_(a[property], b[property], mismatchKeys, mismatchValues)) {
+ mismatchValues.push("'" + property + "' was '" + (b[property] ? jasmine.util.htmlEscape(b[property].toString()) : b[property]) + "' in expected, but was '" + (a[property] ? jasmine.util.htmlEscape(a[property].toString()) : a[property]) + "' in actual.");
+ }
+ }
+
+ if (jasmine.isArray_(a) && jasmine.isArray_(b) && a.length != b.length) {
+ mismatchValues.push("arrays were not the same length");
+ }
+
+ delete a.__Jasmine_been_here_before__;
+ delete b.__Jasmine_been_here_before__;
+ return (mismatchKeys.length === 0 && mismatchValues.length === 0);
+};
+
+jasmine.Env.prototype.equals_ = function (a, b, mismatchKeys, mismatchValues) {
+ mismatchKeys = mismatchKeys || [];
+ mismatchValues = mismatchValues || [];
+
+ for (var i = 0; i < this.equalityTesters_.length; i++) {
+ var equalityTester = this.equalityTesters_[i];
+ var result = equalityTester(a, b, this, mismatchKeys, mismatchValues);
+ if (result !== jasmine.undefined) return result;
+ }
+
+ if (a === b) return true;
+
+ if (a === jasmine.undefined || a === null || b === jasmine.undefined || b === null) {
+ return (a == jasmine.undefined && b == jasmine.undefined);
+ }
+
+ if (jasmine.isDomNode(a) && jasmine.isDomNode(b)) {
+ return a === b;
+ }
+
+ if (a instanceof Date && b instanceof Date) {
+ return a.getTime() == b.getTime();
+ }
+
+ if (a.jasmineMatches) {
+ return a.jasmineMatches(b);
+ }
+
+ if (b.jasmineMatches) {
+ return b.jasmineMatches(a);
+ }
+
+ if (a instanceof jasmine.Matchers.ObjectContaining) {
+ return a.matches(b);
+ }
+
+ if (b instanceof jasmine.Matchers.ObjectContaining) {
+ return b.matches(a);
+ }
+
+ if (jasmine.isString_(a) && jasmine.isString_(b)) {
+ return (a == b);
+ }
+
+ if (jasmine.isNumber_(a) && jasmine.isNumber_(b)) {
+ return (a == b);
+ }
+
+ if (typeof a === "object" && typeof b === "object") {
+ return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
+ }
+
+ //Straight check
+ return (a === b);
+};
+
+jasmine.Env.prototype.contains_ = function (haystack, needle) {
+ if (jasmine.isArray_(haystack)) {
+ for (var i = 0; i < haystack.length; i++) {
+ if (this.equals_(haystack[i], needle)) return true;
+ }
+ return false;
+ }
+ return haystack.indexOf(needle) >= 0;
+};
+
+jasmine.Env.prototype.addEqualityTester = function (equalityTester) {
+ this.equalityTesters_.push(equalityTester);
};
/** No-op base class for Jasmine reporters.
*
* @constructor
*/
-jasmine.Reporter = function() {
+jasmine.Reporter = function () {
};
//noinspection JSUnusedLocalSymbols
-jasmine.Reporter.prototype.reportRunnerStarting = function(runner) {
+jasmine.Reporter.prototype.reportRunnerStarting = function (runner) {
};
//noinspection JSUnusedLocalSymbols
-jasmine.Reporter.prototype.reportRunnerResults = function(runner) {
+jasmine.Reporter.prototype.reportRunnerResults = function (runner) {
};
//noinspection JSUnusedLocalSymbols
-jasmine.Reporter.prototype.reportSuiteResults = function(suite) {
+jasmine.Reporter.prototype.reportSuiteResults = function (suite) {
};
//noinspection JSUnusedLocalSymbols
-jasmine.Reporter.prototype.reportSpecStarting = function(spec) {
+jasmine.Reporter.prototype.reportSpecStarting = function (spec) {
};
//noinspection JSUnusedLocalSymbols
-jasmine.Reporter.prototype.reportSpecResults = function(spec) {
+jasmine.Reporter.prototype.reportSpecResults = function (spec) {
};
//noinspection JSUnusedLocalSymbols
-jasmine.Reporter.prototype.log = function(str) {
+jasmine.Reporter.prototype.log = function (str) {
};
/**
@@ -1013,120 +1013,120 @@
* @param {Function} func
* @param {jasmine.Spec} spec
*/
-jasmine.Block = function(env, func, spec) {
- this.env = env;
- this.func = func;
- this.spec = spec;
-};
-
-jasmine.Block.prototype.execute = function(onComplete) {
- try {
- this.func.apply(this.spec);
- } catch (e) {
- this.spec.fail(e);
- }
- onComplete();
+jasmine.Block = function (env, func, spec) {
+ this.env = env;
+ this.func = func;
+ this.spec = spec;
+};
+
+jasmine.Block.prototype.execute = function (onComplete) {
+ try {
+ this.func.apply(this.spec);
+ } catch (e) {
+ this.spec.fail(e);
+ }
+ onComplete();
};
/** JavaScript API reporter.
*
* @constructor
*/
-jasmine.JsApiReporter = function() {
- this.started = false;
- this.finished = false;
- this.suites_ = [];
- this.results_ = {};
-};
-
-jasmine.JsApiReporter.prototype.reportRunnerStarting = function(runner) {
- this.started = true;
- var suites = runner.topLevelSuites();
- for (var i = 0; i < suites.length; i++) {
- var suite = suites[i];
- this.suites_.push(this.summarize_(suite));
- }
-};
-
-jasmine.JsApiReporter.prototype.suites = function() {
- return this.suites_;
-};
-
-jasmine.JsApiReporter.prototype.summarize_ = function(suiteOrSpec) {
- var isSuite = suiteOrSpec instanceof jasmine.Suite;
- var summary = {
- id: suiteOrSpec.id,
- name: suiteOrSpec.description,
- type: isSuite ? 'suite' : 'spec',
- children: []
- };
-
- if (isSuite) {
- var children = suiteOrSpec.children();
- for (var i = 0; i < children.length; i++) {
- summary.children.push(this.summarize_(children[i]));
- }
- }
- return summary;
-};
-
-jasmine.JsApiReporter.prototype.results = function() {
- return this.results_;
-};
-
-jasmine.JsApiReporter.prototype.resultsForSpec = function(specId) {
- return this.results_[specId];
+jasmine.JsApiReporter = function () {
+ this.started = false;
+ this.finished = false;
+ this.suites_ = [];
+ this.results_ = {};
+};
+
+jasmine.JsApiReporter.prototype.reportRunnerStarting = function (runner) {
+ this.started = true;
+ var suites = runner.topLevelSuites();
+ for (var i = 0; i < suites.length; i++) {
+ var suite = suites[i];
+ this.suites_.push(this.summarize_(suite));
+ }
+};
+
+jasmine.JsApiReporter.prototype.suites = function () {
+ return this.suites_;
+};
+
+jasmine.JsApiReporter.prototype.summarize_ = function (suiteOrSpec) {
+ var isSuite = suiteOrSpec instanceof jasmine.Suite;
+ var summary = {
+ id: suiteOrSpec.id,
+ name: suiteOrSpec.description,
+ type: isSuite ? 'suite' : 'spec',
+ children: []
+ };
+
+ if (isSuite) {
+ var children = suiteOrSpec.children();
+ for (var i = 0; i < children.length; i++) {
+ summary.children.push(this.summarize_(children[i]));
+ }
+ }
+ return summary;
+};
+
+jasmine.JsApiReporter.prototype.results = function () {
+ return this.results_;
+};
+
+jasmine.JsApiReporter.prototype.resultsForSpec = function (specId) {
+ return this.results_[specId];
};
//noinspection JSUnusedLocalSymbols
-jasmine.JsApiReporter.prototype.reportRunnerResults = function(runner) {
- this.finished = true;
+jasmine.JsApiReporter.prototype.reportRunnerResults = function (runner) {
+ this.finished = true;
};
//noinspection JSUnusedLocalSymbols
-jasmine.JsApiReporter.prototype.reportSuiteResults = function(suite) {
+jasmine.JsApiReporter.prototype.reportSuiteResults = function (suite) {
};
//noinspection JSUnusedLocalSymbols
-jasmine.JsApiReporter.prototype.reportSpecResults = function(spec) {
- this.results_[spec.id] = {
- messages: spec.results().getItems(),
- result: spec.results().failedCount > 0 ? "failed" : "passed"
- };
+jasmine.JsApiReporter.prototype.reportSpecResults = function (spec) {
+ this.results_[spec.id] = {
+ messages: spec.results().getItems(),
+ result: spec.results().failedCount > 0 ? "failed" : "passed"
+ };
};
//noinspection JSUnusedLocalSymbols
-jasmine.JsApiReporter.prototype.log = function(str) {
-};
-
-jasmine.JsApiReporter.prototype.resultsForSpecs = function(specIds){
- var results = {};
- for (var i = 0; i < specIds.length; i++) {
- var specId = specIds[i];
- results[specId] = this.summarizeResult_(this.results_[specId]);
- }
- return results;
-};
-
-jasmine.JsApiReporter.prototype.summarizeResult_ = function(result){
- var summaryMessages = [];
- var messagesLength = result.messages.length;
- for (var messageIndex = 0; messageIndex < messagesLength; messageIndex++) {
- var resultMessage = result.messages[messageIndex];
- summaryMessages.push({
- text: resultMessage.type == 'log' ? resultMessage.toString() : jasmine.undefined,
- passed: resultMessage.passed ? resultMessage.passed() : true,
- type: resultMessage.type,
- message: resultMessage.message,
- trace: {
- stack: resultMessage.passed && !resultMessage.passed() ? resultMessage.trace.stack : jasmine.undefined
- }
- });
- }
-
- return {
- result : result.result,
- messages : summaryMessages
- };
+jasmine.JsApiReporter.prototype.log = function (str) {
+};
+
+jasmine.JsApiReporter.prototype.resultsForSpecs = function (specIds) {
+ var results = {};
+ for (var i = 0; i < specIds.length; i++) {
+ var specId = specIds[i];
+ results[specId] = this.summarizeResult_(this.results_[specId]);
+ }
+ return results;
+};
+
+jasmine.JsApiReporter.prototype.summarizeResult_ = function (result) {
+ var summaryMessages = [];
+ var messagesLength = result.messages.length;
+ for (var messageIndex = 0; messageIndex < messagesLength; messageIndex++) {
+ var resultMessage = result.messages[messageIndex];
+ summaryMessages.push({
+ text: resultMessage.type == 'log' ? resultMessage.toString() : jasmine.undefined,
+ passed: resultMessage.passed ? resultMessage.passed() : true,
+ type: resultMessage.type,
+ message: resultMessage.message,
+ trace: {
+ stack: resultMessage.passed && !resultMessage.passed() ? resultMessage.trace.stack : jasmine.undefined
+ }
+ });
+ }
+
+ return {
+ result: result.result,
+ messages: summaryMessages
+ };
};
/**
@@ -1135,83 +1135,83 @@
* @param actual
* @param {jasmine.Spec} spec
*/
-jasmine.Matchers = function(env, actual, spec, opt_isNot) {
- this.env = env;
- this.actual = actual;
- this.spec = spec;
- this.isNot = opt_isNot || false;
- this.reportWasCalled_ = false;
+jasmine.Matchers = function (env, actual, spec, opt_isNot) {
+ this.env = env;
+ this.actual = actual;
+ this.spec = spec;
+ this.isNot = opt_isNot || false;
+ this.reportWasCalled_ = false;
};
// todo: @deprecated as of Jasmine 0.11, remove soon [xw]
-jasmine.Matchers.pp = function(str) {
- throw new Error("jasmine.Matchers.pp() is no longer supported, please use jasmine.pp() instead!");
+jasmine.Matchers.pp = function (str) {
+ throw new Error("jasmine.Matchers.pp() is no longer supported, please use jasmine.pp() instead!");
};
// todo: @deprecated Deprecated as of Jasmine 0.10. Rewrite your custom matchers to return true or false. [xw]
-jasmine.Matchers.prototype.report = function(result, failing_message, details) {
- throw new Error("As of jasmine 0.11, custom matchers must be implemented differently -- please see jasmine docs");
-};
-
-jasmine.Matchers.wrapInto_ = function(prototype, matchersClass) {
- for (var methodName in prototype) {
- if (methodName == 'report') continue;
- var orig = prototype[methodName];
- matchersClass.prototype[methodName] = jasmine.Matchers.matcherFn_(methodName, orig);
- }
-};
-
-jasmine.Matchers.matcherFn_ = function(matcherName, matcherFunction) {
- return function() {
- var matcherArgs = jasmine.util.argsToArray(arguments);
- var result = matcherFunction.apply(this, arguments);
-
- if (this.isNot) {
- result = !result;
- }
-
- if (this.reportWasCalled_) return result;
-
- var message;
- if (!result) {
- if (this.message) {
- message = this.message.apply(this, arguments);
- if (jasmine.isArray_(message)) {
- message = message[this.isNot ? 1 : 0];
- }
- } else {
- var englishyPredicate = matcherName.replace(/[A-Z]/g, function(s) { return ' ' + s.toLowerCase(); });
- message = "Expected " + jasmine.pp(this.actual) + (this.isNot ? " not " : " ") + englishyPredicate;
- if (matcherArgs.length > 0) {
- for (var i = 0; i < matcherArgs.length; i++) {
- if (i > 0) message += ",";
- message += " " + jasmine.pp(matcherArgs[i]);
- }
- }
- message += ".";
- }
- }
- var expectationResult = new jasmine.ExpectationResult({
- matcherName: matcherName,
- passed: result,
- expected: matcherArgs.length > 1 ? matcherArgs : matcherArgs[0],
- actual: this.actual,
- message: message
- });
- this.spec.addMatcherResult(expectationResult);
- return jasmine.undefined;
- };
-};
-
-
+jasmine.Matchers.prototype.report = function (result, failing_message, details) {
+ throw new Error("As of jasmine 0.11, custom matchers must be implemented differently -- please see jasmine docs");
+};
+
+jasmine.Matchers.wrapInto_ = function (prototype, matchersClass) {
+ for (var methodName in prototype) {
+ if (methodName == 'report') continue;
+ var orig = prototype[methodName];
+ matchersClass.prototype[methodName] = jasmine.Matchers.matcherFn_(methodName, orig);
+ }
+};
+
+jasmine.Matchers.matcherFn_ = function (matcherName, matcherFunction) {
+ return function () {
+ var matcherArgs = jasmine.util.argsToArray(arguments);
+ var result = matcherFunction.apply(this, arguments);
+
+ if (this.isNot) {
+ result = !result;
+ }
+
+ if (this.reportWasCalled_) return result;
+
+ var message;
+ if (!result) {
+ if (this.message) {
+ message = this.message.apply(this, arguments);
+ if (jasmine.isArray_(message)) {
+ message = message[this.isNot ? 1 : 0];
+ }
+ } else {
+ var englishyPredicate = matcherName.replace(/[A-Z]/g, function (s) {
+ return ' ' + s.toLowerCase();
+ });
+ message = "Expected " + jasmine.pp(this.actual) + (this.isNot ? " not " : " ") + englishyPredicate;
+ if (matcherArgs.length > 0) {
+ for (var i = 0; i < matcherArgs.length; i++) {
+ if (i > 0) message += ",";
+ message += " " + jasmine.pp(matcherArgs[i]);
+ }
+ }
+ message += ".";
+ }
+ }
+ var expectationResult = new jasmine.ExpectationResult({
+ matcherName: matcherName,
+ passed: result,
+ expected: matcherArgs.length > 1 ? matcherArgs : matcherArgs[0],
+ actual: this.actual,
+ message: message
+ });
+ this.spec.addMatcherResult(expectationResult);
+ return jasmine.undefined;
+ };
+};
/**
* toBe: compares the actual to the expected using ===
* @param expected
*/
-jasmine.Matchers.prototype.toBe = function(expected) {
- return this.actual === expected;
+jasmine.Matchers.prototype.toBe = function (expected) {
+ return this.actual === expected;
};
/**
@@ -1219,8 +1219,8 @@
* @param expected
* @deprecated as of 1.0. Use not.toBe() instead.
*/
-jasmine.Matchers.prototype.toNotBe = function(expected) {
- return this.actual !== expected;
+jasmine.Matchers.prototype.toNotBe = function (expected) {
+ return this.actual !== expected;
};
/**
@@ -1228,8 +1228,8 @@
*
* @param expected
*/
-jasmine.Matchers.prototype.toEqual = function(expected) {
- return this.env.equals_(this.actual, expected);
+jasmine.Matchers.prototype.toEqual = function (expected) {
+ return this.env.equals_(this.actual, expected);
};
/**
@@ -1237,8 +1237,8 @@
* @param expected
* @deprecated as of 1.0. Use not.toEqual() instead.
*/
-jasmine.Matchers.prototype.toNotEqual = function(expected) {
- return !this.env.equals_(this.actual, expected);
+jasmine.Matchers.prototype.toNotEqual = function (expected) {
+ return !this.env.equals_(this.actual, expected);
};
/**
@@ -1247,8 +1247,8 @@
*
* @param expected
*/
-jasmine.Matchers.prototype.toMatch = function(expected) {
- return new RegExp(expected).test(this.actual);
+jasmine.Matchers.prototype.toMatch = function (expected) {
+ return new RegExp(expected).test(this.actual);
};
/**
@@ -1256,67 +1256,67 @@
* @param expected
* @deprecated as of 1.0. Use not.toMatch() instead.
*/
-jasmine.Matchers.prototype.toNotMatch = function(expected) {
- return !(new RegExp(expected).test(this.actual));
+jasmine.Matchers.prototype.toNotMatch = function (expected) {
+ return !(new RegExp(expected).test(this.actual));
};
/**
* Matcher that compares the actual to jasmine.undefined.
*/
-jasmine.Matchers.prototype.toBeDefined = function() {
- return (this.actual !== jasmine.undefined);
+jasmine.Matchers.prototype.toBeDefined = function () {
+ return (this.actual !== jasmine.undefined);
};
/**
* Matcher that compares the actual to jasmine.undefined.
*/
-jasmine.Matchers.prototype.toBeUndefined = function() {
- return (this.actual === jasmine.undefined);
+jasmine.Matchers.prototype.toBeUndefined = function () {
+ return (this.actual === jasmine.undefined);
};
/**
* Matcher that compares the actual to null.
*/
-jasmine.Matchers.prototype.toBeNull = function() {
- return (this.actual === null);
+jasmine.Matchers.prototype.toBeNull = function () {
+ return (this.actual === null);
};
/**
* Matcher that boolean not-nots the actual.
*/
-jasmine.Matchers.prototype.toBeTruthy = function() {
- return !!this.actual;
+jasmine.Matchers.prototype.toBeTruthy = function () {
+ return !!this.actual;
};
/**
* Matcher that boolean nots the actual.
*/
-jasmine.Matchers.prototype.toBeFalsy = function() {
- return !this.actual;
+jasmine.Matchers.prototype.toBeFalsy = function () {
+ return !this.actual;
};
/**
* Matcher that checks to see if the actual, a Jasmine spy, was called.
*/
-jasmine.Matchers.prototype.toHaveBeenCalled = function() {
- if (arguments.length > 0) {
- throw new Error('toHaveBeenCalled does not take arguments, use toHaveBeenCalledWith');
- }
-
- if (!jasmine.isSpy(this.actual)) {
- throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
- }
-
- this.message = function() {
- return [
- "Expected spy " + this.actual.identity + " to have been called.",
- "Expected spy " + this.actual.identity + " not to have been called."
- ];
- };
-
- return this.actual.wasCalled;
+jasmine.Matchers.prototype.toHaveBeenCalled = function () {
+ if (arguments.length > 0) {
+ throw new Error('toHaveBeenCalled does not take arguments, use toHaveBeenCalledWith');
+ }
+
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+
+ this.message = function () {
+ return [
+ "Expected spy " + this.actual.identity + " to have been called.",
+ "Expected spy " + this.actual.identity + " not to have been called."
+ ];
+ };
+
+ return this.actual.wasCalled;
};
/** @deprecated Use expect(xxx).toHaveBeenCalled() instead */
@@ -1327,23 +1327,23 @@
*
* @deprecated Use expect(xxx).not.toHaveBeenCalled() instead
*/
-jasmine.Matchers.prototype.wasNotCalled = function() {
- if (arguments.length > 0) {
- throw new Error('wasNotCalled does not take arguments');
- }
-
- if (!jasmine.isSpy(this.actual)) {
- throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
- }
-
- this.message = function() {
- return [
- "Expected spy " + this.actual.identity + " to not have been called.",
- "Expected spy " + this.actual.identity + " to have been called."
- ];
- };
-
- return !this.actual.wasCalled;
+jasmine.Matchers.prototype.wasNotCalled = function () {
+ if (arguments.length > 0) {
+ throw new Error('wasNotCalled does not take arguments');
+ }
+
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+
+ this.message = function () {
+ return [
+ "Expected spy " + this.actual.identity + " to not have been called.",
+ "Expected spy " + this.actual.identity + " to have been called."
+ ];
+ };
+
+ return !this.actual.wasCalled;
};
/**
@@ -1352,47 +1352,47 @@
* @example
*
*/
-jasmine.Matchers.prototype.toHaveBeenCalledWith = function() {
- var expectedArgs = jasmine.util.argsToArray(arguments);
- if (!jasmine.isSpy(this.actual)) {
- throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
- }
- this.message = function() {
- if (this.actual.callCount === 0) {
- // todo: what should the failure message for .not.toHaveBeenCalledWith() be? is this right? test better. [xw]
- return [
- "Expected spy " + this.actual.identity + " to have been called with " + jasmine.pp(expectedArgs) + " but it was never called.",
- "Expected spy " + this.actual.identity + " not to have been called with " + jasmine.pp(expectedArgs) + " but it was."
- ];
- } else {
- return [
- "Expected spy " + this.actual.identity + " to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall),
- "Expected spy " + this.actual.identity + " not to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall)
- ];
- }
- };
-
- return this.env.contains_(this.actual.argsForCall, expectedArgs);
+jasmine.Matchers.prototype.toHaveBeenCalledWith = function () {
+ var expectedArgs = jasmine.util.argsToArray(arguments);
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+ this.message = function () {
+ if (this.actual.callCount === 0) {
+ // todo: what should the failure message for .not.toHaveBeenCalledWith() be? is this right? test better. [xw]
+ return [
+ "Expected spy " + this.actual.identity + " to have been called with " + jasmine.pp(expectedArgs) + " but it was never called.",
+ "Expected spy " + this.actual.identity + " not to have been called with " + jasmine.pp(expectedArgs) + " but it was."
+ ];
+ } else {
+ return [
+ "Expected spy " + this.actual.identity + " to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall),
+ "Expected spy " + this.actual.identity + " not to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall)
+ ];
+ }
+ };
+
+ return this.env.contains_(this.actual.argsForCall, expectedArgs);
};
/** @deprecated Use expect(xxx).toHaveBeenCalledWith() instead */
jasmine.Matchers.prototype.wasCalledWith = jasmine.Matchers.prototype.toHaveBeenCalledWith;
/** @deprecated Use expect(xxx).not.toHaveBeenCalledWith() instead */
-jasmine.Matchers.prototype.wasNotCalledWith = function() {
- var expectedArgs = jasmine.util.argsToArray(arguments);
- if (!jasmine.isSpy(this.actual)) {
- throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
- }
-
- this.message = function() {
- return [
- "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but it was",
- "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but it was"
- ];
- };
-
- return !this.env.contains_(this.actual.argsForCall, expectedArgs);
+jasmine.Matchers.prototype.wasNotCalledWith = function () {
+ var expectedArgs = jasmine.util.argsToArray(arguments);
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+
+ this.message = function () {
+ return [
+ "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but it was",
+ "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but it was"
+ ];
+ };
+
+ return !this.env.contains_(this.actual.argsForCall, expectedArgs);
};
/**
@@ -1400,8 +1400,8 @@
*
* @param {Object} expected
*/
-jasmine.Matchers.prototype.toContain = function(expected) {
- return this.env.contains_(this.actual, expected);
+jasmine.Matchers.prototype.toContain = function (expected) {
+ return this.env.contains_(this.actual, expected);
};
/**
@@ -1410,16 +1410,16 @@
* @param {Object} expected
* @deprecated as of 1.0. Use not.toContain() instead.
*/
-jasmine.Matchers.prototype.toNotContain = function(expected) {
- return !this.env.contains_(this.actual, expected);
-};
-
-jasmine.Matchers.prototype.toBeLessThan = function(expected) {
- return this.actual < expected;
-};
-
-jasmine.Matchers.prototype.toBeGreaterThan = function(expected) {
- return this.actual > expected;
+jasmine.Matchers.prototype.toNotContain = function (expected) {
+ return !this.env.contains_(this.actual, expected);
+};
+
+jasmine.Matchers.prototype.toBeLessThan = function (expected) {
+ return this.actual < expected;
+};
+
+jasmine.Matchers.prototype.toBeGreaterThan = function (expected) {
+ return this.actual > expected;
};
/**
@@ -1429,14 +1429,14 @@
* @param {Number} expected
* @param {Number} precision
*/
-jasmine.Matchers.prototype.toBeCloseTo = function(expected, precision) {
- if (!(precision === 0)) {
- precision = precision || 2;
- }
- var multiplier = Math.pow(10, precision);
- var actual = Math.round(this.actual * multiplier);
- expected = Math.round(expected * multiplier);
- return expected == actual;
+jasmine.Matchers.prototype.toBeCloseTo = function (expected, precision) {
+ if (!(precision === 0)) {
+ precision = precision || 2;
+ }
+ var multiplier = Math.pow(10, precision);
+ var actual = Math.round(this.actual * multiplier);
+ expected = Math.round(expected * multiplier);
+ return expected == actual;
};
/**
@@ -1444,335 +1444,335 @@
*
* @param {String} expected
*/
-jasmine.Matchers.prototype.toThrow = function(expected) {
- var result = false;
- var exception;
- if (typeof this.actual != 'function') {
- throw new Error('Actual is not a function');
- }
- try {
- this.actual();
- } catch (e) {
- exception = e;
- }
- if (exception) {
- result = (expected === jasmine.undefined || this.env.equals_(exception.message || exception, expected.message || expected));
- }
-
- var not = this.isNot ? "not " : "";
-
- this.message = function() {
- if (exception && (expected === jasmine.undefined || !this.env.equals_(exception.message || exception, expected.message || expected))) {
- return ["Expected function " + not + "to throw", expected ? expected.message || expected : "an exception", ", but it threw", exception.message || exception].join(' ');
- } else {
- return "Expected function to throw an exception.";
- }
- };
-
- return result;
-};
-
-jasmine.Matchers.Any = function(expectedClass) {
- this.expectedClass = expectedClass;
-};
-
-jasmine.Matchers.Any.prototype.jasmineMatches = function(other) {
- if (this.expectedClass == String) {
- return typeof other == 'string' || other instanceof String;
- }
-
- if (this.expectedClass == Number) {
- return typeof other == 'number' || other instanceof Number;
- }
-
- if (this.expectedClass == Function) {
- return typeof other == 'function' || other instanceof Function;
- }
-
- if (this.expectedClass == Object) {
- return typeof other == 'object';
- }
-
- return other instanceof this.expectedClass;
-};
-
-jasmine.Matchers.Any.prototype.jasmineToString = function() {
- return '<jasmine.any(' + this.expectedClass + ')>';
+jasmine.Matchers.prototype.toThrow = function (expected) {
+ var result = false;
+ var exception;
+ if (typeof this.actual != 'function') {
+ throw new Error('Actual is not a function');
+ }
+ try {
+ this.actual();
+ } catch (e) {
+ exception = e;
+ }
+ if (exception) {
+ result = (expected === jasmine.undefined || this.env.equals_(exception.message || exception, expected.message || expected));
+ }
+
+ var not = this.isNot ? "not " : "";
+
+ this.message = function () {
+ if (exception && (expected === jasmine.undefined || !this.env.equals_(exception.message || exception, expected.message || expected))) {
+ return ["Expected function " + not + "to throw", expected ? expected.message || expected : "an exception", ", but it threw", exception.message || exception].join(' ');
+ } else {
+ return "Expected function to throw an exception.";
+ }
+ };
+
+ return result;
+};
+
+jasmine.Matchers.Any = function (expectedClass) {
+ this.expectedClass = expectedClass;
+};
+
+jasmine.Matchers.Any.prototype.jasmineMatches = function (other) {
+ if (this.expectedClass == String) {
+ return typeof other == 'string' || other instanceof String;
+ }
+
+ if (this.expectedClass == Number) {
+ return typeof other == 'number' || other instanceof Number;
+ }
+
+ if (this.expectedClass == Function) {
+ return typeof other == 'function' || other instanceof Function;
+ }
+
+ if (this.expectedClass == Object) {
+ return typeof other == 'object';
+ }
+
+ return other instanceof this.expectedClass;
+};
+
+jasmine.Matchers.Any.prototype.jasmineToString = function () {
+ return '<jasmine.any(' + this.expectedClass + ')>';
};
jasmine.Matchers.ObjectContaining = function (sample) {
- this.sample = sample;
-};
-
-jasmine.Matchers.ObjectContaining.prototype.jasmineMatches = function(other, mismatchKeys, mismatchValues) {
- mismatchKeys = mismatchKeys || [];
- mismatchValues = mismatchValues || [];
-
- var env = jasmine.getEnv();
-
- var hasKey = function(obj, keyName) {
- return obj != null && obj[keyName] !== jasmine.undefined;
- };
-
- for (var property in this.sample) {
- if (!hasKey(other, property) && hasKey(this.sample, property)) {
- mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
- }
- else if (!env.equals_(this.sample[property], other[property], mismatchKeys, mismatchValues)) {
- mismatchValues.push("'" + property + "' was '" + (other[property] ? jasmine.util.htmlEscape(other[property].toString()) : other[property]) + "' in expected, but was '" + (this.sample[property] ? jasmine.util.htmlEscape(this.sample[property].toString()) : this.sample[property]) + "' in actual.");
- }
- }
-
- return (mismatchKeys.length === 0 && mismatchValues.length === 0);
+ this.sample = sample;
+};
+
+jasmine.Matchers.ObjectContaining.prototype.jasmineMatches = function (other, mismatchKeys, mismatchValues) {
+ mismatchKeys = mismatchKeys || [];
+ mismatchValues = mismatchValues || [];
+
+ var env = jasmine.getEnv();
+
+ var hasKey = function (obj, keyName) {
+ return obj != null && obj[keyName] !== jasmine.undefined;
+ };
+
+ for (var property in this.sample) {
+ if (!hasKey(other, property) && hasKey(this.sample, property)) {
+ mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
+ }
+ else if (!env.equals_(this.sample[property], other[property], mismatchKeys, mismatchValues)) {
+ mismatchValues.push("'" + property + "' was '" + (other[property] ? jasmine.util.htmlEscape(other[property].toString()) : other[property]) + "' in expected, but was '" + (this.sample[property] ? jasmine.util.htmlEscape(this.sample[property].toString()) : this.sample[property]) + "' in actual.");
+ }
+ }
+
+ return (mismatchKeys.length === 0 && mismatchValues.length === 0);
};
jasmine.Matchers.ObjectContaining.prototype.jasmineToString = function () {
- return "<jasmine.objectContaining(" + jasmine.pp(this.sample) + ")>";
+ return "<jasmine.objectContaining(" + jasmine.pp(this.sample) + ")>";
};
// Mock setTimeout, clearTimeout
// Contributed by Pivotal Computer Systems, www.pivotalsf.com
-jasmine.FakeTimer = function() {
- this.reset();
-
- var self = this;
- self.setTimeout = function(funcToCall, millis) {
- self.timeoutsMade++;
- self.scheduleFunction(self.timeoutsMade, funcToCall, millis, false);
- return self.timeoutsMade;
- };
-
- self.setInterval = function(funcToCall, millis) {
- self.timeoutsMade++;
- self.scheduleFunction(self.timeoutsMade, funcToCall, millis, true);
- return self.timeoutsMade;
- };
-
- self.clearTimeout = function(timeoutKey) {
- self.scheduledFunctions[timeoutKey] = jasmine.undefined;
- };
-
- self.clearInterval = function(timeoutKey) {
- self.scheduledFunctions[timeoutKey] = jasmine.undefined;
- };
-
-};
-
-jasmine.FakeTimer.prototype.reset = function() {
- this.timeoutsMade = 0;
- this.scheduledFunctions = {};
- this.nowMillis = 0;
-};
-
-jasmine.FakeTimer.prototype.tick = function(millis) {
- var oldMillis = this.nowMillis;
- var newMillis = oldMillis + millis;
- this.runFunctionsWithinRange(oldMillis, newMillis);
- this.nowMillis = newMillis;
-};
-
-jasmine.FakeTimer.prototype.runFunctionsWithinRange = function(oldMillis, nowMillis) {
- var scheduledFunc;
- var funcsToRun = [];
- for (var timeoutKey in this.scheduledFunctions) {
- scheduledFunc = this.scheduledFunctions[timeoutKey];
- if (scheduledFunc != jasmine.undefined &&
- scheduledFunc.runAtMillis >= oldMillis &&
- scheduledFunc.runAtMillis <= nowMillis) {
- funcsToRun.push(scheduledFunc);
- this.scheduledFunctions[timeoutKey] = jasmine.undefined;
- }
- }
-
- if (funcsToRun.length > 0) {
- funcsToRun.sort(function(a, b) {
- return a.runAtMillis - b.runAtMillis;
- });
- for (var i = 0; i < funcsToRun.length; ++i) {
- try {
- var funcToRun = funcsToRun[i];
- this.nowMillis = funcToRun.runAtMillis;
- funcToRun.funcToCall();
- if (funcToRun.recurring) {
- this.scheduleFunction(funcToRun.timeoutKey,
- funcToRun.funcToCall,
- funcToRun.millis,
- true);
- }
- } catch(e) {
- }
- }
- this.runFunctionsWithinRange(oldMillis, nowMillis);
- }
-};
-
-jasmine.FakeTimer.prototype.scheduleFunction = function(timeoutKey, funcToCall, millis, recurring) {
- this.scheduledFunctions[timeoutKey] = {
- runAtMillis: this.nowMillis + millis,
- funcToCall: funcToCall,
- recurring: recurring,
- timeoutKey: timeoutKey,
- millis: millis
- };
+jasmine.FakeTimer = function () {
+ this.reset();
+
+ var self = this;
+ self.setTimeout = function (funcToCall, millis) {
+ self.timeoutsMade++;
+ self.scheduleFunction(self.timeoutsMade, funcToCall, millis, false);
+ return self.timeoutsMade;
+ };
+
+ self.setInterval = function (funcToCall, millis) {
+ self.timeoutsMade++;
+ self.scheduleFunction(self.timeoutsMade, funcToCall, millis, true);
+ return self.timeoutsMade;
+ };
+
+ self.clearTimeout = function (timeoutKey) {
+ self.scheduledFunctions[timeoutKey] = jasmine.undefined;
+ };
+
+ self.clearInterval = function (timeoutKey) {
+ self.scheduledFunctions[timeoutKey] = jasmine.undefined;
+ };
+
+};
+
+jasmine.FakeTimer.prototype.reset = function () {
+ this.timeoutsMade = 0;
+ this.scheduledFunctions = {};
+ this.nowMillis = 0;
+};
+
+jasmine.FakeTimer.prototype.tick = function (millis) {
+ var oldMillis = this.nowMillis;
+ var newMillis = oldMillis + millis;
+ this.runFunctionsWithinRange(oldMillis, newMillis);
+ this.nowMillis = newMillis;
+};
+
+jasmine.FakeTimer.prototype.runFunctionsWithinRange = function (oldMillis, nowMillis) {
+ var scheduledFunc;
+ var funcsToRun = [];
+ for (var timeoutKey in this.scheduledFunctions) {
+ scheduledFunc = this.scheduledFunctions[timeoutKey];
+ if (scheduledFunc != jasmine.undefined &&
+ scheduledFunc.runAtMillis >= oldMillis &&
+ scheduledFunc.runAtMillis <= nowMillis) {
+ funcsToRun.push(scheduledFunc);
+ this.scheduledFunctions[timeoutKey] = jasmine.undefined;
+ }
+ }
+
+ if (funcsToRun.length > 0) {
+ funcsToRun.sort(function (a, b) {
+ return a.runAtMillis - b.runAtMillis;
+ });
+ for (var i = 0; i < funcsToRun.length; ++i) {
+ try {
+ var funcToRun = funcsToRun[i];
+ this.nowMillis = funcToRun.runAtMillis;
+ funcToRun.funcToCall();
+ if (funcToRun.recurring) {
+ this.scheduleFunction(funcToRun.timeoutKey,
+ funcToRun.funcToCall,
+ funcToRun.millis,
+ true);
+ }
+ } catch (e) {
+ }
+ }
+ this.runFunctionsWithinRange(oldMillis, nowMillis);
+ }
+};
+
+jasmine.FakeTimer.prototype.scheduleFunction = function (timeoutKey, funcToCall, millis, recurring) {
+ this.scheduledFunctions[timeoutKey] = {
+ runAtMillis: this.nowMillis + millis,
+ funcToCall: funcToCall,
+ recurring: recurring,
+ timeoutKey: timeoutKey,
+ millis: millis
+ };
};
/**
* @namespace
*/
jasmine.Clock = {
- defaultFakeTimer: new jasmine.FakeTimer(),
-
- reset: function() {
- jasmine.Clock.assertInstalled();
- jasmine.Clock.defaultFakeTimer.reset();
- },
-
- tick: function(millis) {
- jasmine.Clock.assertInstalled();
- jasmine.Clock.defaultFakeTimer.tick(millis);
- },
-
- runFunctionsWithinRange: function(oldMillis, nowMillis) {
- jasmine.Clock.defaultFakeTimer.runFunctionsWithinRange(oldMillis, nowMillis);
- },
-
- scheduleFunction: function(timeoutKey, funcToCall, millis, recurring) {
- jasmine.Clock.defaultFakeTimer.scheduleFunction(timeoutKey, funcToCall, millis, recurring);
- },
-
- useMock: function() {
- if (!jasmine.Clock.isInstalled()) {
- var spec = jasmine.getEnv().currentSpec;
- spec.after(jasmine.Clock.uninstallMock);
-
- jasmine.Clock.installMock();
- }
- },
-
- installMock: function() {
- jasmine.Clock.installed = jasmine.Clock.defaultFakeTimer;
- },
-
- uninstallMock: function() {
- jasmine.Clock.assertInstalled();
- jasmine.Clock.installed = jasmine.Clock.real;
- },
-
- real: {
- setTimeout: jasmine.getGlobal().setTimeout,
- clearTimeout: jasmine.getGlobal().clearTimeout,
- setInterval: jasmine.getGlobal().setInterval,
- clearInterval: jasmine.getGlobal().clearInterval
- },
-
- assertInstalled: function() {
- if (!jasmine.Clock.isInstalled()) {
- throw new Error("Mock clock is not installed, use jasmine.Clock.useMock()");
- }
- },
-
- isInstalled: function() {
- return jasmine.Clock.installed == jasmine.Clock.defaultFakeTimer;
- },
-
- installed: null
+ defaultFakeTimer: new jasmine.FakeTimer(),
+
+ reset: function () {
+ jasmine.Clock.assertInstalled();
+ jasmine.Clock.defaultFakeTimer.reset();
+ },
+
+ tick: function (millis) {
+ jasmine.Clock.assertInstalled();
+ jasmine.Clock.defaultFakeTimer.tick(millis);
+ },
+
+ runFunctionsWithinRange: function (oldMillis, nowMillis) {
+ jasmine.Clock.defaultFakeTimer.runFunctionsWithinRange(oldMillis, nowMillis);
+ },
+
+ scheduleFunction: function (timeoutKey, funcToCall, millis, recurring) {
+ jasmine.Clock.defaultFakeTimer.scheduleFunction(timeoutKey, funcToCall, millis, recurring);
+ },
+
+ useMock: function () {
+ if (!jasmine.Clock.isInstalled()) {
+ var spec = jasmine.getEnv().currentSpec;
+ spec.after(jasmine.Clock.uninstallMock);
+
+ jasmine.Clock.installMock();
+ }
+ },
+
+ installMock: function () {
+ jasmine.Clock.installed = jasmine.Clock.defaultFakeTimer;
+ },
+
+ uninstallMock: function () {
+ jasmine.Clock.assertInstalled();
+ jasmine.Clock.installed = jasmine.Clock.real;
+ },
+
+ real: {
+ setTimeout: jasmine.getGlobal().setTimeout,
+ clearTimeout: jasmine.getGlobal().clearTimeout,
+ setInterval: jasmine.getGlobal().setInterval,
+ clearInterval: jasmine.getGlobal().clearInterval
+ },
+
+ assertInstalled: function () {
+ if (!jasmine.Clock.isInstalled()) {
+ throw new Error("Mock clock is not installed, use jasmine.Clock.useMock()");
+ }
+ },
+
+ isInstalled: function () {
+ return jasmine.Clock.installed == jasmine.Clock.defaultFakeTimer;
+ },
+
+ installed: null
};
jasmine.Clock.installed = jasmine.Clock.real;
//else for IE support
-jasmine.getGlobal().setTimeout = function(funcToCall, millis) {
- if (jasmine.Clock.installed.setTimeout.apply) {
- return jasmine.Clock.installed.setTimeout.apply(this, arguments);
- } else {
- return jasmine.Clock.installed.setTimeout(funcToCall, millis);
- }
-};
-
-jasmine.getGlobal().setInterval = function(funcToCall, millis) {
- if (jasmine.Clock.installed.setInterval.apply) {
- return jasmine.Clock.installed.setInterval.apply(this, arguments);
- } else {
- return jasmine.Clock.installed.setInterval(funcToCall, millis);
- }
-};
-
-jasmine.getGlobal().clearTimeout = function(timeoutKey) {
- if (jasmine.Clock.installed.clearTimeout.apply) {
- return jasmine.Clock.installed.clearTimeout.apply(this, arguments);
- } else {
- return jasmine.Clock.installed.clearTimeout(timeoutKey);
- }
-};
-
-jasmine.getGlobal().clearInterval = function(timeoutKey) {
- if (jasmine.Clock.installed.clearTimeout.apply) {
- return jasmine.Clock.installed.clearInterval.apply(this, arguments);
- } else {
- return jasmine.Clock.installed.clearInterval(timeoutKey);
- }
+jasmine.getGlobal().setTimeout = function (funcToCall, millis) {
+ if (jasmine.Clock.installed.setTimeout.apply) {
+ return jasmine.Clock.installed.setTimeout.apply(this, arguments);
+ } else {
+ return jasmine.Clock.installed.setTimeout(funcToCall, millis);
+ }
+};
+
+jasmine.getGlobal().setInterval = function (funcToCall, millis) {
+ if (jasmine.Clock.installed.setInterval.apply) {
+ return jasmine.Clock.installed.setInterval.apply(this, arguments);
+ } else {
+ return jasmine.Clock.installed.setInterval(funcToCall, millis);
+ }
+};
+
+jasmine.getGlobal().clearTimeout = function (timeoutKey) {
+ if (jasmine.Clock.installed.clearTimeout.apply) {
+ return jasmine.Clock.installed.clearTimeout.apply(this, arguments);
+ } else {
+ return jasmine.Clock.installed.clearTimeout(timeoutKey);
+ }
+};
+
+jasmine.getGlobal().clearInterval = function (timeoutKey) {
+ if (jasmine.Clock.installed.clearTimeout.apply) {
+ return jasmine.Clock.installed.clearInterval.apply(this, arguments);
+ } else {
+ return jasmine.Clock.installed.clearInterval(timeoutKey);
+ }
};
/**
* @constructor
*/
-jasmine.MultiReporter = function() {
- this.subReporters_ = [];
+jasmine.MultiReporter = function () {
+ this.subReporters_ = [];
};
jasmine.util.inherit(jasmine.MultiReporter, jasmine.Reporter);
-jasmine.MultiReporter.prototype.addReporter = function(reporter) {
- this.subReporters_.push(reporter);
-};
-
-(function() {
- var functionNames = [
- "reportRunnerStarting",
- "reportRunnerResults",
- "reportSuiteResults",
- "reportSpecStarting",
- "reportSpecResults",
- "log"
- ];
- for (var i = 0; i < functionNames.length; i++) {
- var functionName = functionNames[i];
- jasmine.MultiReporter.prototype[functionName] = (function(functionName) {
- return function() {
- for (var j = 0; j < this.subReporters_.length; j++) {
- var subReporter = this.subReporters_[j];
- if (subReporter[functionName]) {
- subReporter[functionName].apply(subReporter, arguments);
- }
- }
- };
- })(functionName);
- }
+jasmine.MultiReporter.prototype.addReporter = function (reporter) {
+ this.subReporters_.push(reporter);
+};
+
+(function () {
+ var functionNames = [
+ "reportRunnerStarting",
+ "reportRunnerResults",
+ "reportSuiteResults",
+ "reportSpecStarting",
+ "reportSpecResults",
+ "log"
+ ];
+ for (var i = 0; i < functionNames.length; i++) {
+ var functionName = functionNames[i];
+ jasmine.MultiReporter.prototype[functionName] = (function (functionName) {
+ return function () {
+ for (var j = 0; j < this.subReporters_.length; j++) {
+ var subReporter = this.subReporters_[j];
+ if (subReporter[functionName]) {
+ subReporter[functionName].apply(subReporter, arguments);
+ }
+ }
+ };
+ })(functionName);
+ }
})();
/**
* Holds results for a set of Jasmine spec. Allows for the results array to hold another jasmine.NestedResults
*
* @constructor
*/
-jasmine.NestedResults = function() {
- /**
- * The total count of results
- */
- this.totalCount = 0;
- /**
- * Number of passed results
- */
- this.passedCount = 0;
- /**
- * Number of failed results
- */
- this.failedCount = 0;
- /**
- * Was this suite/spec skipped?
- */
- this.skipped = false;
- /**
- * @ignore
- */
- this.items_ = [];
+jasmine.NestedResults = function () {
+ /**
+ * The total count of results
+ */
+ this.totalCount = 0;
+ /**
+ * Number of passed results
+ */
+ this.passedCount = 0;
+ /**
+ * Number of failed results
+ */
+ this.failedCount = 0;
+ /**
+ * Was this suite/spec skipped?
+ */
+ this.skipped = false;
+ /**
+ * @ignore
+ */
+ this.items_ = [];
};
/**
@@ -1780,58 +1780,58 @@
*
* @param result
*/
-jasmine.NestedResults.prototype.rollupCounts = function(result) {
- this.totalCount += result.totalCount;
- this.passedCount += result.passedCount;
- this.failedCount += result.failedCount;
+jasmine.NestedResults.prototype.rollupCounts = function (result) {
+ this.totalCount += result.totalCount;
+ this.passedCount += result.passedCount;
+ this.failedCount += result.failedCount;
};
/**
* Adds a log message.
* @param values Array of message parts which will be concatenated later.
*/
-jasmine.NestedResults.prototype.log = function(values) {
- this.items_.push(new jasmine.MessageResult(values));
+jasmine.NestedResults.prototype.log = function (values) {
+ this.items_.push(new jasmine.MessageResult(values));
};
/**
* Getter for the results: message & results.
*/
-jasmine.NestedResults.prototype.getItems = function() {
- return this.items_;
+jasmine.NestedResults.prototype.getItems = function () {
+ return this.items_;
};
/**
* Adds a result, tracking counts (total, passed, & failed)
* @param {jasmine.ExpectationResult|jasmine.NestedResults} result
*/
-jasmine.NestedResults.prototype.addResult = function(result) {
- if (result.type != 'log') {
- if (result.items_) {
- this.rollupCounts(result);
- } else {
- this.totalCount++;
- if (result.passed()) {
- this.passedCount++;
- } else {
- this.failedCount++;
- }
- }
- }
- this.items_.push(result);
+jasmine.NestedResults.prototype.addResult = function (result) {
+ if (result.type != 'log') {
+ if (result.items_) {
+ this.rollupCounts(result);
+ } else {
+ this.totalCount++;
+ if (result.passed()) {
+ this.passedCount++;
+ } else {
+ this.failedCount++;
+ }
+ }
+ }
+ this.items_.push(result);
};
/**
* @returns {Boolean} True if <b>everything</b> below passed
*/
-jasmine.NestedResults.prototype.passed = function() {
- return this.passedCount === this.totalCount;
+jasmine.NestedResults.prototype.passed = function () {
+ return this.passedCount === this.totalCount;
};
/**
* Base class for pretty printing for expectation results.
*/
-jasmine.PrettyPrinter = function() {
- this.ppNestLevel_ = 0;
+jasmine.PrettyPrinter = function () {
+ this.ppNestLevel_ = 0;
};
/**
@@ -1839,57 +1839,57 @@
*
* @param value
*/
-jasmine.PrettyPrinter.prototype.format = function(value) {
- if (this.ppNestLevel_ > 40) {
- throw new Error('jasmine.PrettyPrinter: format() nested too deeply!');
- }
-
- this.ppNestLevel_++;
- try {
- if (value === jasmine.undefined) {
- this.emitScalar('undefined');
- } else if (value === null) {
- this.emitScalar('null');
- } else if (value === jasmine.getGlobal()) {
- this.emitScalar('<global>');
- } else if (value.jasmineToString) {
- this.emitScalar(value.jasmineToString());
- } else if (typeof value === 'string') {
- this.emitString(value);
- } else if (jasmine.isSpy(value)) {
- this.emitScalar("spy on " + value.identity);
- } else if (value instanceof RegExp) {
- this.emitScalar(value.toString());
- } else if (typeof value === 'function') {
- this.emitScalar('Function');
- } else if (typeof value.nodeType === 'number') {
- this.emitScalar('HTMLNode');
- } else if (value instanceof Date) {
- this.emitScalar('Date(' + value + ')');
- } else if (value.__Jasmine_been_here_before__) {
- this.emitScalar('<circular reference: ' + (jasmine.isArray_(value) ? 'Array' : 'Object') + '>');
- } else if (jasmine.isArray_(value) || typeof value == 'object') {
- value.__Jasmine_been_here_before__ = true;
- if (jasmine.isArray_(value)) {
- this.emitArray(value);
- } else {
- this.emitObject(value);
- }
- delete value.__Jasmine_been_here_before__;
- } else {
- this.emitScalar(value.toString());
- }
- } finally {
- this.ppNestLevel_--;
- }
-};
-
-jasmine.PrettyPrinter.prototype.iterateObject = function(obj, fn) {
- for (var property in obj) {
- if (property == '__Jasmine_been_here_before__') continue;
- fn(property, obj.__lookupGetter__ ? (obj.__lookupGetter__(property) !== jasmine.undefined &&
- obj.__lookupGetter__(property) !== null) : false);
- }
+jasmine.PrettyPrinter.prototype.format = function (value) {
+ if (this.ppNestLevel_ > 40) {
+ throw new Error('jasmine.PrettyPrinter: format() nested too deeply!');
+ }
+
+ this.ppNestLevel_++;
+ try {
+ if (value === jasmine.undefined) {
+ this.emitScalar('undefined');
+ } else if (value === null) {
+ this.emitScalar('null');
+ } else if (value === jasmine.getGlobal()) {
+ this.emitScalar('<global>');
+ } else if (value.jasmineToString) {
+ this.emitScalar(value.jasmineToString());
+ } else if (typeof value === 'string') {
+ this.emitString(value);
+ } else if (jasmine.isSpy(value)) {
+ this.emitScalar("spy on " + value.identity);
+ } else if (value instanceof RegExp) {
+ this.emitScalar(value.toString());
+ } else if (typeof value === 'function') {
+ this.emitScalar('Function');
+ } else if (typeof value.nodeType === 'number') {
+ this.emitScalar('HTMLNode');
+ } else if (value instanceof Date) {
+ this.emitScalar('Date(' + value + ')');
+ } else if (value.__Jasmine_been_here_before__) {
+ this.emitScalar('<circular reference: ' + (jasmine.isArray_(value) ? 'Array' : 'Object') + '>');
+ } else if (jasmine.isArray_(value) || typeof value == 'object') {
+ value.__Jasmine_been_here_before__ = true;
+ if (jasmine.isArray_(value)) {
+ this.emitArray(value);
+ } else {
+ this.emitObject(value);
+ }
+ delete value.__Jasmine_been_here_before__;
+ } else {
+ this.emitScalar(value.toString());
+ }
+ } finally {
+ this.ppNestLevel_--;
+ }
+};
+
+jasmine.PrettyPrinter.prototype.iterateObject = function (obj, fn) {
+ for (var property in obj) {
+ if (property == '__Jasmine_been_here_before__') continue;
+ fn(property, obj.__lookupGetter__ ? (obj.__lookupGetter__(property) !== jasmine.undefined &&
+ obj.__lookupGetter__(property) !== null) : false);
+ }
};
jasmine.PrettyPrinter.prototype.emitArray = jasmine.unimplementedMethod_;
@@ -1897,155 +1897,155 @@
jasmine.PrettyPrinter.prototype.emitScalar = jasmine.unimplementedMethod_;
jasmine.PrettyPrinter.prototype.emitString = jasmine.unimplementedMethod_;
-jasmine.StringPrettyPrinter = function() {
- jasmine.PrettyPrinter.call(this);
-
- this.string = '';
+jasmine.StringPrettyPrinter = function () {
+ jasmine.PrettyPrinter.call(this);
+
+ this.string = '';
};
jasmine.util.inherit(jasmine.StringPrettyPrinter, jasmine.PrettyPrinter);
-jasmine.StringPrettyPrinter.prototype.emitScalar = function(value) {
- this.append(value);
-};
-
-jasmine.StringPrettyPrinter.prototype.emitString = function(value) {
- this.append("'" + value + "'");
-};
-
-jasmine.StringPrettyPrinter.prototype.emitArray = function(array) {
- this.append('[ ');
- for (var i = 0; i < array.length; i++) {
- if (i > 0) {
- this.append(', ');
- }
- this.format(array[i]);
- }
- this.append(' ]');
-};
-
-jasmine.StringPrettyPrinter.prototype.emitObject = function(obj) {
- var self = this;
- this.append('{ ');
- var first = true;
-
- this.iterateObject(obj, function(property, isGetter) {
- if (first) {
- first = false;
- } else {
- self.append(', ');
- }
-
- self.append(property);
- self.append(' : ');
- if (isGetter) {
- self.append('<getter>');
- } else {
- self.format(obj[property]);
- }
- });
-
- this.append(' }');
-};
-
-jasmine.StringPrettyPrinter.prototype.append = function(value) {
- this.string += value;
-};
-jasmine.Queue = function(env) {
- this.env = env;
- this.blocks = [];
- this.running = false;
- this.index = 0;
- this.offset = 0;
- this.abort = false;
-};
-
-jasmine.Queue.prototype.addBefore = function(block) {
- this.blocks.unshift(block);
-};
-
-jasmine.Queue.prototype.add = function(block) {
- this.blocks.push(block);
-};
-
-jasmine.Queue.prototype.insertNext = function(block) {
- this.blocks.splice((this.index + this.offset + 1), 0, block);
- this.offset++;
-};
-
-jasmine.Queue.prototype.start = function(onComplete) {
- this.running = true;
- this.onComplete = onComplete;
- this.next_();
-};
-
-jasmine.Queue.prototype.isRunning = function() {
- return this.running;
+jasmine.StringPrettyPrinter.prototype.emitScalar = function (value) {
+ this.append(value);
+};
+
+jasmine.StringPrettyPrinter.prototype.emitString = function (value) {
+ this.append("'" + value + "'");
+};
+
+jasmine.StringPrettyPrinter.prototype.emitArray = function (array) {
+ this.append('[ ');
+ for (var i = 0; i < array.length; i++) {
+ if (i > 0) {
+ this.append(', ');
+ }
+ this.format(array[i]);
+ }
+ this.append(' ]');
+};
+
+jasmine.StringPrettyPrinter.prototype.emitObject = function (obj) {
+ var self = this;
+ this.append('{ ');
+ var first = true;
+
+ this.iterateObject(obj, function (property, isGetter) {
+ if (first) {
+ first = false;
+ } else {
+ self.append(', ');
+ }
+
+ self.append(property);
+ self.append(' : ');
+ if (isGetter) {
+ self.append('<getter>');
+ } else {
+ self.format(obj[property]);
+ }
+ });
+
+ this.append(' }');
+};
+
+jasmine.StringPrettyPrinter.prototype.append = function (value) {
+ this.string += value;
+};
+jasmine.Queue = function (env) {
+ this.env = env;
+ this.blocks = [];
+ this.running = false;
+ this.index = 0;
+ this.offset = 0;
+ this.abort = false;
+};
+
+jasmine.Queue.prototype.addBefore = function (block) {
+ this.blocks.unshift(block);
+};
+
+jasmine.Queue.prototype.add = function (block) {
+ this.blocks.push(block);
+};
+
+jasmine.Queue.prototype.insertNext = function (block) {
+ this.blocks.splice((this.index + this.offset + 1), 0, block);
+ this.offset++;
+};
+
+jasmine.Queue.prototype.start = function (onComplete) {
+ this.running = true;
+ this.onComplete = onComplete;
+ this.next_();
+};
+
+jasmine.Queue.prototype.isRunning = function () {
+ return this.running;
};
jasmine.Queue.LOOP_DONT_RECURSE = true;
-jasmine.Queue.prototype.next_ = function() {
- var self = this;
- var goAgain = true;
-
- while (goAgain) {
- goAgain = false;
-
- if (self.index < self.blocks.length && !this.abort) {
- var calledSynchronously = true;
- var completedSynchronously = false;
-
- var onComplete = function () {
- if (jasmine.Queue.LOOP_DONT_RECURSE && calledSynchronously) {
- completedSynchronously = true;
- return;
- }
-
- if (self.blocks[self.index].abort) {
- self.abort = true;
- }
-
- self.offset = 0;
- self.index++;
-
- var now = new Date().getTime();
- if (self.env.updateInterval && now - self.env.lastUpdate > self.env.updateInterval) {
- self.env.lastUpdate = now;
- self.env.setTimeout(function() {
- self.next_();
- }, 0);
+jasmine.Queue.prototype.next_ = function () {
+ var self = this;
+ var goAgain = true;
+
+ while (goAgain) {
+ goAgain = false;
+
+ if (self.index < self.blocks.length && !this.abort) {
+ var calledSynchronously = true;
+ var completedSynchronously = false;
+
+ var onComplete = function () {
+ if (jasmine.Queue.LOOP_DONT_RECURSE && calledSynchronously) {
+ completedSynchronously = true;
+ return;
+ }
+
+ if (self.blocks[self.index].abort) {
+ self.abort = true;
+ }
+
+ self.offset = 0;
+ self.index++;
+
+ var now = new Date().getTime();
+ if (self.env.updateInterval && now - self.env.lastUpdate > self.env.updateInterval) {
+ self.env.lastUpdate = now;
+ self.env.setTimeout(function () {
+ self.next_();
+ }, 0);
+ } else {
+ if (jasmine.Queue.LOOP_DONT_RECURSE && completedSynchronously) {
+ goAgain = true;
+ } else {
+ self.next_();
+ }
+ }
+ };
+ self.blocks[self.index].execute(onComplete);
+
+ calledSynchronously = false;
+ if (completedSynchronously) {
+ onComplete();
+ }
+
} else {
- if (jasmine.Queue.LOOP_DONT_RECURSE && completedSynchronously) {
- goAgain = true;
- } else {
- self.next_();
- }
- }
- };
- self.blocks[self.index].execute(onComplete);
-
- calledSynchronously = false;
- if (completedSynchronously) {
- onComplete();
- }
-
- } else {
- self.running = false;
- if (self.onComplete) {
- self.onComplete();
- }
- }
- }
-};
-
-jasmine.Queue.prototype.results = function() {
- var results = new jasmine.NestedResults();
- for (var i = 0; i < this.blocks.length; i++) {
- if (this.blocks[i].results) {
- results.addResult(this.blocks[i].results());
- }
- }
- return results;
+ self.running = false;
+ if (self.onComplete) {
+ self.onComplete();
+ }
+ }
+ }
+};
+
+jasmine.Queue.prototype.results = function () {
+ var results = new jasmine.NestedResults();
+ for (var i = 0; i < this.blocks.length; i++) {
+ if (this.blocks[i].results) {
+ results.addResult(this.blocks[i].results());
+ }
+ }
+ return results;
};
@@ -2055,76 +2055,76 @@
* @constructor
* @param {jasmine.Env} env
*/
-jasmine.Runner = function(env) {
- var self = this;
- self.env = env;
- self.queue = new jasmine.Queue(env);
- self.before_ = [];
- self.after_ = [];
- self.suites_ = [];
-};
-
-jasmine.Runner.prototype.execute = function() {
- var self = this;
- if (self.env.reporter.reportRunnerStarting) {
- self.env.reporter.reportRunnerStarting(this);
- }
- self.queue.start(function () {
- self.finishCallback();
- });
-};
-
-jasmine.Runner.prototype.beforeEach = function(beforeEachFunction) {
- beforeEachFunction.typeName = 'beforeEach';
- this.before_.splice(0,0,beforeEachFunction);
-};
-
-jasmine.Runner.prototype.afterEach = function(afterEachFunction) {
- afterEachFunction.typeName = 'afterEach';
- this.after_.splice(0,0,afterEachFunction);
-};
-
-
-jasmine.Runner.prototype.finishCallback = function() {
- this.env.reporter.reportRunnerResults(this);
-};
-
-jasmine.Runner.prototype.addSuite = function(suite) {
- this.suites_.push(suite);
-};
-
-jasmine.Runner.prototype.add = function(block) {
- if (block instanceof jasmine.Suite) {
- this.addSuite(block);
- }
- this.queue.add(block);
+jasmine.Runner = function (env) {
+ var self = this;
+ self.env = env;
+ self.queue = new jasmine.Queue(env);
+ self.before_ = [];
+ self.after_ = [];
+ self.suites_ = [];
+};
+
+jasmine.Runner.prototype.execute = function () {
+ var self = this;
+ if (self.env.reporter.reportRunnerStarting) {
+ self.env.reporter.reportRunnerStarting(this);
+ }
+ self.queue.start(function () {
+ self.finishCallback();
+ });
+};
+
+jasmine.Runner.prototype.beforeEach = function (beforeEachFunction) {
+ beforeEachFunction.typeName = 'beforeEach';
+ this.before_.splice(0, 0, beforeEachFunction);
+};
+
+jasmine.Runner.prototype.afterEach = function (afterEachFunction) {
+ afterEachFunction.typeName = 'afterEach';
+ this.after_.splice(0, 0, afterEachFunction);
+};
+
+
+jasmine.Runner.prototype.finishCallback = function () {
+ this.env.reporter.reportRunnerResults(this);
+};
+
+jasmine.Runner.prototype.addSuite = function (suite) {
+ this.suites_.push(suite);
+};
+
+jasmine.Runner.prototype.add = function (block) {
+ if (block instanceof jasmine.Suite) {
+ this.addSuite(block);
+ }
+ this.queue.add(block);
};
jasmine.Runner.prototype.specs = function () {
- var suites = this.suites();
- var specs = [];
- for (var i = 0; i < suites.length; i++) {
- specs = specs.concat(suites[i].specs());
- }
- return specs;
-};
-
-jasmine.Runner.prototype.suites = function() {
- return this.suites_;
-};
-
-jasmine.Runner.prototype.topLevelSuites = function() {
- var topLevelSuites = [];
- for (var i = 0; i < this.suites_.length; i++) {
- if (!this.suites_[i].parentSuite) {
- topLevelSuites.push(this.suites_[i]);
- }
- }
- return topLevelSuites;
-};
-
-jasmine.Runner.prototype.results = function() {
- return this.queue.results();
+ var suites = this.suites();
+ var specs = [];
+ for (var i = 0; i < suites.length; i++) {
+ specs = specs.concat(suites[i].specs());
+ }
+ return specs;
+};
+
+jasmine.Runner.prototype.suites = function () {
+ return this.suites_;
+};
+
+jasmine.Runner.prototype.topLevelSuites = function () {
+ var topLevelSuites = [];
+ for (var i = 0; i < this.suites_.length; i++) {
+ if (!this.suites_[i].parentSuite) {
+ topLevelSuites.push(this.suites_[i]);
+ }
+ }
+ return topLevelSuites;
+};
+
+jasmine.Runner.prototype.results = function () {
+ return this.queue.results();
};
/**
* Internal representation of a Jasmine specification, or test.
@@ -2134,35 +2134,35 @@
* @param {jasmine.Suite} suite
* @param {String} description
*/
-jasmine.Spec = function(env, suite, description) {
- if (!env) {
- throw new Error('jasmine.Env() required');
- }
- if (!suite) {
- throw new Error('jasmine.Suite() required');
- }
- var spec = this;
- spec.id = env.nextSpecId ? env.nextSpecId() : null;
- spec.env = env;
- spec.suite = suite;
- spec.description = description;
- spec.queue = new jasmine.Queue(env);
-
- spec.afterCallbacks = [];
- spec.spies_ = [];
-
- spec.results_ = new jasmine.NestedResults();
- spec.results_.description = description;
- spec.matchersClass = null;
-};
-
-jasmine.Spec.prototype.getFullName = function() {
- return this.suite.getFullName() + ' ' + this.description + '.';
-};
-
-
-jasmine.Spec.prototype.results = function() {
- return this.results_;
+jasmine.Spec = function (env, suite, description) {
+ if (!env) {
+ throw new Error('jasmine.Env() required');
+ }
+ if (!suite) {
+ throw new Error('jasmine.Suite() required');
+ }
+ var spec = this;
+ spec.id = env.nextSpecId ? env.nextSpecId() : null;
+ spec.env = env;
+ spec.suite = suite;
+ spec.description = description;
+ spec.queue = new jasmine.Queue(env);
+
+ spec.afterCallbacks = [];
+ spec.spies_ = [];
+
+ spec.results_ = new jasmine.NestedResults();
+ spec.results_.description = description;
+ spec.matchersClass = null;
+};
+
+jasmine.Spec.prototype.getFullName = function () {
+ return this.suite.getFullName() + ' ' + this.description + '.';
+};
+
+
+jasmine.Spec.prototype.results = function () {
+ return this.results_;
};
/**
@@ -2170,35 +2170,35 @@
*
* Be careful not to leave calls to <code>jasmine.log</code> in production code.
*/
-jasmine.Spec.prototype.log = function() {
- return this.results_.log(arguments);
+jasmine.Spec.prototype.log = function () {
+ return this.results_.log(arguments);
};
jasmine.Spec.prototype.runs = function (func) {
- var block = new jasmine.Block(this.env, func, this);
- this.addToQueue(block);
- return this;
+ var block = new jasmine.Block(this.env, func, this);
+ this.addToQueue(block);
+ return this;
};
jasmine.Spec.prototype.addToQueue = function (block) {
- if (this.queue.isRunning()) {
- this.queue.insertNext(block);
- } else {
- this.queue.add(block);
- }
+ if (this.queue.isRunning()) {
+ this.queue.insertNext(block);
+ } else {
+ this.queue.add(block);
+ }
};
/**
* @param {jasmine.ExpectationResult} result
*/
-jasmine.Spec.prototype.addMatcherResult = function(result) {
- this.results_.addResult(result);
-};
-
-jasmine.Spec.prototype.expect = function(actual) {
- var positive = new (this.getMatchersClass_())(this.env, actual, this);
- positive.not = new (this.getMatchersClass_())(this.env, actual, this, true);
- return positive;
+jasmine.Spec.prototype.addMatcherResult = function (result) {
+ this.results_.addResult(result);
+};
+
+jasmine.Spec.prototype.expect = function (actual) {
+ var positive = new (this.getMatchersClass_())(this.env, actual, this);
+ positive.not = new (this.getMatchersClass_())(this.env, actual, this, true);
+ return positive;
};
/**
@@ -2207,10 +2207,10 @@
* @deprecated Use waitsFor() instead
* @param {Number} timeout milliseconds to wait
*/
-jasmine.Spec.prototype.waits = function(timeout) {
- var waitsFunc = new jasmine.WaitsBlock(this.env, timeout, this);
- this.addToQueue(waitsFunc);
- return this;
+jasmine.Spec.prototype.waits = function (timeout) {
+ var waitsFunc = new jasmine.WaitsBlock(this.env, timeout, this);
+ this.addToQueue(waitsFunc);
+ return this;
};
/**
@@ -2220,153 +2220,153 @@
* @param {String} optional_timeoutMessage
* @param {Number} optional_timeout
*/
-jasmine.Spec.prototype.waitsFor = function(latchFunction, optional_timeoutMessage, optional_timeout) {
- var latchFunction_ = null;
- var optional_timeoutMessage_ = null;
- var optional_timeout_ = null;
-
- for (var i = 0; i < arguments.length; i++) {
- var arg = arguments[i];
- switch (typeof arg) {
- case 'function':
- latchFunction_ = arg;
- break;
- case 'string':
- optional_timeoutMessage_ = arg;
- break;
- case 'number':
- optional_timeout_ = arg;
- break;
- }
- }
-
- var waitsForFunc = new jasmine.WaitsForBlock(this.env, optional_timeout_, latchFunction_, optional_timeoutMessage_, this);
- this.addToQueue(waitsForFunc);
- return this;
+jasmine.Spec.prototype.waitsFor = function (latchFunction, optional_timeoutMessage, optional_timeout) {
+ var latchFunction_ = null;
+ var optional_timeoutMessage_ = null;
+ var optional_timeout_ = null;
+
+ for (var i = 0; i < arguments.length; i++) {
+ var arg = arguments[i];
+ switch (typeof arg) {
+ case 'function':
+ latchFunction_ = arg;
+ break;
+ case 'string':
+ optional_timeoutMessage_ = arg;
+ break;
+ case 'number':
+ optional_timeout_ = arg;
+ break;
+ }
+ }
+
+ var waitsForFunc = new jasmine.WaitsForBlock(this.env, optional_timeout_, latchFunction_, optional_timeoutMessage_, this);
+ this.addToQueue(waitsForFunc);
+ return this;
};
jasmine.Spec.prototype.fail = function (e) {
- var expectationResult = new jasmine.ExpectationResult({
- passed: false,
- message: e ? jasmine.util.formatException(e) : 'Exception',
- trace: { stack: e.stack }
- });
- this.results_.addResult(expectationResult);
-};
-
-jasmine.Spec.prototype.getMatchersClass_ = function() {
- return this.matchersClass || this.env.matchersClass;
-};
-
-jasmine.Spec.prototype.addMatchers = function(matchersPrototype) {
- var parent = this.getMatchersClass_();
- var newMatchersClass = function() {
- parent.apply(this, arguments);
- };
- jasmine.util.inherit(newMatchersClass, parent);
- jasmine.Matchers.wrapInto_(matchersPrototype, newMatchersClass);
- this.matchersClass = newMatchersClass;
-};
-
-jasmine.Spec.prototype.finishCallback = function() {
- this.env.reporter.reportSpecResults(this);
-};
-
-jasmine.Spec.prototype.finish = function(onComplete) {
- this.removeAllSpies();
- this.finishCallback();
- if (onComplete) {
- onComplete();
- }
-};
-
-jasmine.Spec.prototype.after = function(doAfter) {
- if (this.queue.isRunning()) {
- this.queue.add(new jasmine.Block(this.env, doAfter, this));
- } else {
- this.afterCallbacks.unshift(doAfter);
- }
-};
-
-jasmine.Spec.prototype.execute = function(onComplete) {
- var spec = this;
- if (!spec.env.specFilter(spec)) {
- spec.results_.skipped = true;
- spec.finish(onComplete);
- return;
- }
-
- this.env.reporter.reportSpecStarting(this);
-
- spec.env.currentSpec = spec;
-
- spec.addBeforesAndAftersToQueue();
-
- spec.queue.start(function () {
- spec.finish(onComplete);
- });
-};
-
-jasmine.Spec.prototype.addBeforesAndAftersToQueue = function() {
- var runner = this.env.currentRunner();
- var i;
-
- for (var suite = this.suite; suite; suite = suite.parentSuite) {
- for (i = 0; i < suite.before_.length; i++) {
- this.queue.addBefore(new jasmine.Block(this.env, suite.before_[i], this));
- }
- }
- for (i = 0; i < runner.before_.length; i++) {
- this.queue.addBefore(new jasmine.Block(this.env, runner.before_[i], this));
- }
- for (i = 0; i < this.afterCallbacks.length; i++) {
- this.queue.add(new jasmine.Block(this.env, this.afterCallbacks[i], this));
- }
- for (suite = this.suite; suite; suite = suite.parentSuite) {
- for (i = 0; i < suite.after_.length; i++) {
- this.queue.add(new jasmine.Block(this.env, suite.after_[i], this));
- }
- }
- for (i = 0; i < runner.after_.length; i++) {
- this.queue.add(new jasmine.Block(this.env, runner.after_[i], this));
- }
-};
-
-jasmine.Spec.prototype.explodes = function() {
- throw 'explodes function should not have been called';
-};
-
-jasmine.Spec.prototype.spyOn = function(obj, methodName, ignoreMethodDoesntExist) {
- if (obj == jasmine.undefined) {
- throw "spyOn could not find an object to spy upon for " + methodName + "()";
- }
-
- if (!ignoreMethodDoesntExist && obj[methodName] === jasmine.undefined) {
- throw methodName + '() method does not exist';
- }
-
- if (!ignoreMethodDoesntExist && obj[methodName] && obj[methodName].isSpy) {
- throw new Error(methodName + ' has already been spied upon');
- }
-
- var spyObj = jasmine.createSpy(methodName);
-
- this.spies_.push(spyObj);
- spyObj.baseObj = obj;
- spyObj.methodName = methodName;
- spyObj.originalValue = obj[methodName];
-
- obj[methodName] = spyObj;
-
- return spyObj;
-};
-
-jasmine.Spec.prototype.removeAllSpies = function() {
- for (var i = 0; i < this.spies_.length; i++) {
- var spy = this.spies_[i];
- spy.baseObj[spy.methodName] = spy.originalValue;
- }
- this.spies_ = [];
+ var expectationResult = new jasmine.ExpectationResult({
+ passed: false,
+ message: e ? jasmine.util.formatException(e) : 'Exception',
+ trace: { stack: e.stack }
+ });
+ this.results_.addResult(expectationResult);
+};
+
+jasmine.Spec.prototype.getMatchersClass_ = function () {
+ return this.matchersClass || this.env.matchersClass;
+};
+
+jasmine.Spec.prototype.addMatchers = function (matchersPrototype) {
+ var parent = this.getMatchersClass_();
+ var newMatchersClass = function () {
+ parent.apply(this, arguments);
+ };
+ jasmine.util.inherit(newMatchersClass, parent);
+ jasmine.Matchers.wrapInto_(matchersPrototype, newMatchersClass);
+ this.matchersClass = newMatchersClass;
+};
+
+jasmine.Spec.prototype.finishCallback = function () {
+ this.env.reporter.reportSpecResults(this);
+};
+
+jasmine.Spec.prototype.finish = function (onComplete) {
+ this.removeAllSpies();
+ this.finishCallback();
+ if (onComplete) {
+ onComplete();
+ }
+};
+
+jasmine.Spec.prototype.after = function (doAfter) {
+ if (this.queue.isRunning()) {
+ this.queue.add(new jasmine.Block(this.env, doAfter, this));
+ } else {
+ this.afterCallbacks.unshift(doAfter);
+ }
+};
+
+jasmine.Spec.prototype.execute = function (onComplete) {
+ var spec = this;
+ if (!spec.env.specFilter(spec)) {
+ spec.results_.skipped = true;
+ spec.finish(onComplete);
+ return;
+ }
+
+ this.env.reporter.reportSpecStarting(this);
+
+ spec.env.currentSpec = spec;
+
+ spec.addBeforesAndAftersToQueue();
+
+ spec.queue.start(function () {
+ spec.finish(onComplete);
+ });
+};
+
+jasmine.Spec.prototype.addBeforesAndAftersToQueue = function () {
+ var runner = this.env.currentRunner();
+ var i;
+
+ for (var suite = this.suite; suite; suite = suite.parentSuite) {
+ for (i = 0; i < suite.before_.length; i++) {
+ this.queue.addBefore(new jasmine.Block(this.env, suite.before_[i], this));
+ }
+ }
+ for (i = 0; i < runner.before_.length; i++) {
+ this.queue.addBefore(new jasmine.Block(this.env, runner.before_[i], this));
+ }
+ for (i = 0; i < this.afterCallbacks.length; i++) {
+ this.queue.add(new jasmine.Block(this.env, this.afterCallbacks[i], this));
+ }
+ for (suite = this.suite; suite; suite = suite.parentSuite) {
+ for (i = 0; i < suite.after_.length; i++) {
+ this.queue.add(new jasmine.Block(this.env, suite.after_[i], this));
+ }
+ }
+ for (i = 0; i < runner.after_.length; i++) {
+ this.queue.add(new jasmine.Block(this.env, runner.after_[i], this));
+ }
+};
+
+jasmine.Spec.prototype.explodes = function () {
+ throw 'explodes function should not have been called';
+};
+
+jasmine.Spec.prototype.spyOn = function (obj, methodName, ignoreMethodDoesntExist) {
+ if (obj == jasmine.undefined) {
+ throw "spyOn could not find an object to spy upon for " + methodName + "()";
+ }
+
+ if (!ignoreMethodDoesntExist && obj[methodName] === jasmine.undefined) {
+ throw methodName + '() method does not exist';
+ }
+
+ if (!ignoreMethodDoesntExist && obj[methodName] && obj[methodName].isSpy) {
+ throw new Error(methodName + ' has already been spied upon');
+ }
+
+ var spyObj = jasmine.createSpy(methodName);
+
+ this.spies_.push(spyObj);
+ spyObj.baseObj = obj;
+ spyObj.methodName = methodName;
+ spyObj.originalValue = obj[methodName];
+
+ obj[methodName] = spyObj;
+
+ return spyObj;
+};
+
+jasmine.Spec.prototype.removeAllSpies = function () {
+ for (var i = 0; i < this.spies_.length; i++) {
+ var spy = this.spies_[i];
+ spy.baseObj[spy.methodName] = spy.originalValue;
+ }
+ this.spies_ = [];
};
/**
@@ -2378,93 +2378,93 @@
* @param {Function} specDefinitions
* @param {jasmine.Suite} parentSuite
*/
-jasmine.Suite = function(env, description, specDefinitions, parentSuite) {
- var self = this;
- self.id = env.nextSuiteId ? env.nextSuiteId() : null;
- self.description = description;
- self.queue = new jasmine.Queue(env);
- self.parentSuite = parentSuite;
- self.env = env;
- self.before_ = [];
- self.after_ = [];
- self.children_ = [];
- self.suites_ = [];
- self.specs_ = [];
-};
-
-jasmine.Suite.prototype.getFullName = function() {
- var fullName = this.description;
- for (var parentSuite = this.parentSuite; parentSuite; parentSuite = parentSuite.parentSuite) {
- fullName = parentSuite.description + ' ' + fullName;
- }
- return fullName;
-};
-
-jasmine.Suite.prototype.finish = function(onComplete) {
- this.env.reporter.reportSuiteResults(this);
- this.finished = true;
- if (typeof(onComplete) == 'function') {
- onComplete();
- }
-};
-
-jasmine.Suite.prototype.beforeEach = function(beforeEachFunction) {
- beforeEachFunction.typeName = 'beforeEach';
- this.before_.unshift(beforeEachFunction);
-};
-
-jasmine.Suite.prototype.afterEach = function(afterEachFunction) {
- afterEachFunction.typeName = 'afterEach';
- this.after_.unshift(afterEachFunction);
-};
-
-jasmine.Suite.prototype.results = function() {
- return this.queue.results();
-};
-
-jasmine.Suite.prototype.add = function(suiteOrSpec) {
- this.children_.push(suiteOrSpec);
- if (suiteOrSpec instanceof jasmine.Suite) {
- this.suites_.push(suiteOrSpec);
- this.env.currentRunner().addSuite(suiteOrSpec);
- } else {
- this.specs_.push(suiteOrSpec);
- }
- this.queue.add(suiteOrSpec);
-};
-
-jasmine.Suite.prototype.specs = function() {
- return this.specs_;
-};
-
-jasmine.Suite.prototype.suites = function() {
- return this.suites_;
-};
-
-jasmine.Suite.prototype.children = function() {
- return this.children_;
-};
-
-jasmine.Suite.prototype.execute = function(onComplete) {
- var self = this;
- this.queue.start(function () {
- self.finish(onComplete);
- });
-};
-jasmine.WaitsBlock = function(env, timeout, spec) {
- this.timeout = timeout;
- jasmine.Block.call(this, env, null, spec);
+jasmine.Suite = function (env, description, specDefinitions, parentSuite) {
+ var self = this;
+ self.id = env.nextSuiteId ? env.nextSuiteId() : null;
+ self.description = description;
+ self.queue = new jasmine.Queue(env);
+ self.parentSuite = parentSuite;
+ self.env = env;
+ self.before_ = [];
+ self.after_ = [];
+ self.children_ = [];
+ self.suites_ = [];
+ self.specs_ = [];
+};
+
+jasmine.Suite.prototype.getFullName = function () {
+ var fullName = this.description;
+ for (var parentSuite = this.parentSuite; parentSuite; parentSuite = parentSuite.parentSuite) {
+ fullName = parentSuite.description + ' ' + fullName;
+ }
+ return fullName;
+};
+
+jasmine.Suite.prototype.finish = function (onComplete) {
+ this.env.reporter.reportSuiteResults(this);
+ this.finished = true;
+ if (typeof(onComplete) == 'function') {
+ onComplete();
+ }
+};
+
+jasmine.Suite.prototype.beforeEach = function (beforeEachFunction) {
+ beforeEachFunction.typeName = 'beforeEach';
+ this.before_.unshift(beforeEachFunction);
+};
+
+jasmine.Suite.prototype.afterEach = function (afterEachFunction) {
+ afterEachFunction.typeName = 'afterEach';
+ this.after_.unshift(afterEachFunction);
+};
+
+jasmine.Suite.prototype.results = function () {
+ return this.queue.results();
+};
+
+jasmine.Suite.prototype.add = function (suiteOrSpec) {
+ this.children_.push(suiteOrSpec);
+ if (suiteOrSpec instanceof jasmine.Suite) {
+ this.suites_.push(suiteOrSpec);
+ this.env.currentRunner().addSuite(suiteOrSpec);
+ } else {
+ this.specs_.push(suiteOrSpec);
+ }
+ this.queue.add(suiteOrSpec);
+};
+
+jasmine.Suite.prototype.specs = function () {
+ return this.specs_;
+};
+
+jasmine.Suite.prototype.suites = function () {
+ return this.suites_;
+};
+
+jasmine.Suite.prototype.children = function () {
+ return this.children_;
+};
+
+jasmine.Suite.prototype.execute = function (onComplete) {
+ var self = this;
+ this.queue.start(function () {
+ self.finish(onComplete);
+ });
+};
+jasmine.WaitsBlock = function (env, timeout, spec) {
+ this.timeout = timeout;
+ jasmine.Block.call(this, env, null, spec);
};
jasmine.util.inherit(jasmine.WaitsBlock, jasmine.Block);
jasmine.WaitsBlock.prototype.execute = function (onComplete) {
- if (jasmine.VERBOSE) {
- this.env.reporter.log('>> Jasmine waiting for ' + this.timeout + ' ms...');
- }
- this.env.setTimeout(function () {
- onComplete();
- }, this.timeout);
+ if (jasmine.VERBOSE) {
+ this.env.reporter.log('>> Jasmine waiting for ' + this.timeout + ' ms...');
+ }
+ this.env.setTimeout(function () {
+ onComplete();
+ }, this.timeout);
};
/**
* A block which waits for some condition to become true, with timeout.
@@ -2477,54 +2477,54 @@
* @param {String} message The message to display if the desired condition hasn't been met within the given time period.
* @param {jasmine.Spec} spec The Jasmine spec.
*/
-jasmine.WaitsForBlock = function(env, timeout, latchFunction, message, spec) {
- this.timeout = timeout || env.defaultTimeoutInterval;
- this.latchFunction = latchFunction;
- this.message = message;
- this.totalTimeSpentWaitingForLatch = 0;
- jasmine.Block.call(this, env, null, spec);
+jasmine.WaitsForBlock = function (env, timeout, latchFunction, message, spec) {
+ this.timeout = timeout || env.defaultTimeoutInterval;
+ this.latchFunction = latchFunction;
+ this.message = message;
+ this.totalTimeSpentWaitingForLatch = 0;
+ jasmine.Block.call(this, env, null, spec);
};
jasmine.util.inherit(jasmine.WaitsForBlock, jasmine.Block);
jasmine.WaitsForBlock.TIMEOUT_INCREMENT = 10;
-jasmine.WaitsForBlock.prototype.execute = function(onComplete) {
- if (jasmine.VERBOSE) {
- this.env.reporter.log('>> Jasmine waiting for ' + (this.message || 'something to happen'));
- }
- var latchFunctionResult;
- try {
- latchFunctionResult = this.latchFunction.apply(this.spec);
- } catch (e) {
- this.spec.fail(e);
- onComplete();
- return;
- }
-
- if (latchFunctionResult) {
- onComplete();
- } else if (this.totalTimeSpentWaitingForLatch >= this.timeout) {
- var message = 'timed out after ' + this.timeout + ' msec waiting for ' + (this.message || 'something to happen');
- this.spec.fail({
- name: 'timeout',
- message: message
- });
-
- this.abort = true;
- onComplete();
- } else {
- this.totalTimeSpentWaitingForLatch += jasmine.WaitsForBlock.TIMEOUT_INCREMENT;
- var self = this;
- this.env.setTimeout(function() {
- self.execute(onComplete);
- }, jasmine.WaitsForBlock.TIMEOUT_INCREMENT);
- }
-};
-
-jasmine.version_= {
- "major": 1,
- "minor": 2,
- "build": 0,
- "revision": 1337005947
-};
-
+jasmine.WaitsForBlock.prototype.execute = function (onComplete) {
+ if (jasmine.VERBOSE) {
+ this.env.reporter.log('>> Jasmine waiting for ' + (this.message || 'something to happen'));
+ }
+ var latchFunctionResult;
+ try {
+ latchFunctionResult = this.latchFunction.apply(this.spec);
+ } catch (e) {
+ this.spec.fail(e);
+ onComplete();
+ return;
+ }
+
+ if (latchFunctionResult) {
+ onComplete();
+ } else if (this.totalTimeSpentWaitingForLatch >= this.timeout) {
+ var message = 'timed out after ' + this.timeout + ' msec waiting for ' + (this.message || 'something to happen');
+ this.spec.fail({
+ name: 'timeout',
+ message: message
+ });
+
+ this.abort = true;
+ onComplete();
+ } else {
+ this.totalTimeSpentWaitingForLatch += jasmine.WaitsForBlock.TIMEOUT_INCREMENT;
+ var self = this;
+ this.env.setTimeout(function () {
+ self.execute(onComplete);
+ }, jasmine.WaitsForBlock.TIMEOUT_INCREMENT);
+ }
+};
+
+jasmine.version_ = {
+ "major": 1,
+ "minor": 2,
+ "build": 0,
+ "revision": 1337005947
+};
+
--- a/js/flotr2/make/basic.json
+++ b/js/flotr2/make/basic.json
@@ -1,26 +1,26 @@
{
- "JAVASCRIPT": {
- "DIST_DIR": "./build",
- "flotr2-basic": [
- "./js/Flotr.js",
- "./js/DefaultOptions.js",
- "./js/DOM.js",
- "./js/EventAdapter.js",
- "./js/Color.js",
- "./js/Date.js",
- "./js/Text.js",
- "./js/Graph.js",
- "./js/Axis.js",
- "./js/Series.js",
- "./js/types/lines.js",
- "./js/types/bars.js",
- "./js/types/markers.js",
- "./js/types/points.js",
- "./js/plugins/grid.js",
- "./js/plugins/labels.js",
- "./js/plugins/legend.js",
- "./js/plugins/titles.js"
- ]
- }
+ "JAVASCRIPT": {
+ "DIST_DIR": "./build",
+ "flotr2-basic": [
+ "./js/Flotr.js",
+ "./js/DefaultOptions.js",
+ "./js/DOM.js",
+ "./js/EventAdapter.js",
+ "./js/Color.js",
+ "./js/Date.js",
+ "./js/Text.js",
+ "./js/Graph.js",
+ "./js/Axis.js",
+ "./js/Series.js",
+ "./js/types/lines.js",
+ "./js/types/bars.js",
+ "./js/types/markers.js",
+ "./js/types/points.js",
+ "./js/plugins/grid.js",
+ "./js/plugins/labels.js",
+ "./js/plugins/legend.js",
+ "./js/plugins/titles.js"
+ ]
+ }
}
--- a/js/flotr2/make/build.json
+++ b/js/flotr2/make/build.json
@@ -1,98 +1,113 @@
{
- "JAVASCRIPT": {
- "DIST_DIR": "./build",
- "ie": [
- { "src": "./lib/excanvas.js", "jshint": false },
- { "src": "./lib/base64.js", "jshint": false },
- { "src": "./lib/canvastext.js", "jshint": false }
- ],
- "lib": [
- { "src": "./lib/bean.js", "jshint": false },
- { "src": "./lib/underscore.js", "jshint": false }
- ],
- "flotr2": [
- "./js/Flotr.js",
- "./js/DefaultOptions.js",
- "./js/Color.js",
- "./js/Date.js",
- "./js/DOM.js",
- "./js/EventAdapter.js",
- "./js/Text.js",
- "./js/Graph.js",
- "./js/Axis.js",
- "./js/Series.js",
- "./js/types/lines.js",
- "./js/types/bars.js",
- "./js/types/bubbles.js",
- "./js/types/candles.js",
- "./js/types/gantt.js",
- "./js/types/markers.js",
- "./js/types/pie.js",
- "./js/types/points.js",
- "./js/types/radar.js",
- "./js/types/timeline.js",
- "./js/plugins/crosshair.js",
- "./js/plugins/download.js",
- "./js/plugins/grid.js",
- "./js/plugins/hit.js",
- "./js/plugins/selection.js",
- "./js/plugins/labels.js",
- "./js/plugins/legend.js",
- "./js/plugins/spreadsheet.js",
- "./js/plugins/titles.js"
- ],
- "flotr2-basic": [
- "./js/Flotr.js",
- "./js/DefaultOptions.js",
- "./js/DOM.js",
- "./js/EventAdapter.js",
- "./js/Color.js",
- "./js/Date.js",
- "./js/Text.js",
- "./js/Graph.js",
- "./js/Axis.js",
- "./js/Series.js",
- "./js/types/lines.js",
- "./js/types/bars.js",
- "./js/types/markers.js",
- "./js/types/points.js",
- "./js/plugins/grid.js",
- "./js/plugins/labels.js",
- "./js/plugins/legend.js",
- "./js/plugins/titles.js"
- ],
- "examples": [
- "./examples/js/Examples.js",
- "./examples/js/Example.js",
- "./examples/js/Editor.js",
- "./examples/js/Profile.js"
- ],
- "examples-types": [
- "./examples/js/ExampleList.js",
- "./examples/js/examples/basic.js",
- "./examples/js/examples/basic-stacked.js",
- "./examples/js/examples/basic-axis.js",
- "./examples/js/examples/basic-bars.js",
- "./examples/js/examples/basic-bars-stacked.js",
- "./examples/js/examples/basic-pie.js",
- "./examples/js/examples/basic-radar.js",
- "./examples/js/examples/basic-bubble.js",
- "./examples/js/examples/basic-candle.js",
- "./examples/js/examples/basic-legend.js",
- "./examples/js/examples/mouse-tracking.js",
- "./examples/js/examples/mouse-zoom.js",
- "./examples/js/examples/mouse-drag.js",
- "./examples/js/examples/basic-time.js",
- "./examples/js/examples/negative-values.js",
- "./examples/js/examples/click-example.js",
- "./examples/js/examples/download-image.js",
- "./examples/js/examples/download-data.js",
- "./examples/js/examples/advanced-titles.js",
- "./examples/js/examples/color-gradients.js",
- "./examples/js/examples/profile-bars.js",
- "./examples/js/examples/basic-timeline.js",
- "./examples/js/examples/advanced-markers.js"
- ]
- }
+ "JAVASCRIPT": {
+ "DIST_DIR": "./build",
+ "ie": [
+ {
+ "src": "./lib/excanvas.js",
+ "jshint": false
+ },
+ {
+ "src": "./lib/base64.js",
+ "jshint": false
+ },
+ {
+ "src": "./lib/canvastext.js",
+ "jshint": false
+ }
+ ],
+ "lib": [
+ {
+ "src": "./lib/bean.js",
+ "jshint": false
+ },
+ {
+ "src": "./lib/underscore.js",
+ "jshint": false
+ }
+ ],
+ "flotr2": [
+ "./js/Flotr.js",
+ "./js/DefaultOptions.js",
+ "./js/Color.js",
+ "./js/Date.js",
+ "./js/DOM.js",
+ "./js/EventAdapter.js",
+ "./js/Text.js",
+ "./js/Graph.js",
+ "./js/Axis.js",
+ "./js/Series.js",
+ "./js/types/lines.js",
+ "./js/types/bars.js",
+ "./js/types/bubbles.js",
+ "./js/types/candles.js",
+ "./js/types/gantt.js",
+ "./js/types/markers.js",
+ "./js/types/pie.js",
+ "./js/types/points.js",
+ "./js/types/radar.js",
+ "./js/types/timeline.js",
+ "./js/plugins/crosshair.js",
+ "./js/plugins/download.js",
+ "./js/plugins/grid.js",
+ "./js/plugins/hit.js",
+ "./js/plugins/selection.js",
+ "./js/plugins/labels.js",
+ "./js/plugins/legend.js",
+ "./js/plugins/spreadsheet.js",
+ "./js/plugins/titles.js"
+ ],
+ "flotr2-basic": [
+ "./js/Flotr.js",
+ "./js/DefaultOptions.js",
+ "./js/DOM.js",
+ "./js/EventAdapter.js",
+ "./js/Color.js",
+ "./js/Date.js",
+ "./js/Text.js",
+ "./js/Graph.js",
+ "./js/Axis.js",
+ "./js/Series.js",
+ "./js/types/lines.js",
+ "./js/types/bars.js",
+ "./js/types/markers.js",
+ "./js/types/points.js",
+ "./js/plugins/grid.js",
+ "./js/plugins/labels.js",
+ "./js/plugins/legend.js",
+ "./js/plugins/titles.js"
+ ],
+ "examples": [
+ "./examples/js/Examples.js",
+ "./examples/js/Example.js",
+ "./examples/js/Editor.js",
+ "./examples/js/Profile.js"
+ ],
+ "examples-types": [
+ "./examples/js/ExampleList.js",
+ "./examples/js/examples/basic.js",
+ "./examples/js/examples/basic-stacked.js",
+ "./examples/js/examples/basic-axis.js",
+ "./examples/js/examples/basic-bars.js",
+ "./examples/js/examples/basic-bars-stacked.js",
+ "./examples/js/examples/basic-pie.js",
+ "./examples/js/examples/basic-radar.js",
+ "./examples/js/examples/basic-bubble.js",
+ "./examples/js/examples/basic-candle.js",
+ "./examples/js/examples/basic-legend.js",
+ "./examples/js/examples/mouse-tracking.js",
+ "./examples/js/examples/mouse-zoom.js",
+ "./examples/js/examples/mouse-drag.js",
+ "./examples/js/examples/basic-time.js",
+ "./examples/js/examples/negative-values.js",
+ "./examples/js/examples/click-example.js",
+ "./examples/js/examples/download-image.js",
+ "./examples/js/examples/download-data.js",
+ "./examples/js/examples/advanced-titles.js",
+ "./examples/js/examples/color-gradients.js",
+ "./examples/js/examples/profile-bars.js",
+ "./examples/js/examples/basic-timeline.js",
+ "./examples/js/examples/advanced-markers.js"
+ ]
+ }
}
--- a/js/flotr2/make/examples.json
+++ b/js/flotr2/make/examples.json
@@ -1,39 +1,39 @@
{
- "JAVASCRIPT": {
- "DIST_DIR": "./build",
- "examples": [
- "./examples/js/Examples.js",
- "./examples/js/Example.js",
- "./examples/js/Editor.js",
- "./examples/js/Profile.js"
- ],
- "examples-types": [
- "./examples/js/ExampleList.js",
- "./examples/js/examples/basic.js",
- "./examples/js/examples/basic-stacked.js",
- "./examples/js/examples/basic-stepped.js",
- "./examples/js/examples/basic-axis.js",
- "./examples/js/examples/basic-bars.js",
- "./examples/js/examples/basic-bars-stacked.js",
- "./examples/js/examples/basic-pie.js",
- "./examples/js/examples/basic-radar.js",
- "./examples/js/examples/basic-bubble.js",
- "./examples/js/examples/basic-candle.js",
- "./examples/js/examples/basic-legend.js",
- "./examples/js/examples/mouse-tracking.js",
- "./examples/js/examples/mouse-zoom.js",
- "./examples/js/examples/mouse-drag.js",
- "./examples/js/examples/basic-time.js",
- "./examples/js/examples/negative-values.js",
- "./examples/js/examples/click-example.js",
- "./examples/js/examples/download-image.js",
- "./examples/js/examples/download-data.js",
- "./examples/js/examples/advanced-titles.js",
- "./examples/js/examples/color-gradients.js",
- "./examples/js/examples/profile-bars.js",
- "./examples/js/examples/basic-timeline.js",
- "./examples/js/examples/advanced-markers.js"
- ]
- }
+ "JAVASCRIPT": {
+ "DIST_DIR": "./build",
+ "examples": [
+ "./examples/js/Examples.js",
+ "./examples/js/Example.js",
+ "./examples/js/Editor.js",
+ "./examples/js/Profile.js"
+ ],
+ "examples-types": [
+ "./examples/js/ExampleList.js",
+ "./examples/js/examples/basic.js",
+ "./examples/js/examples/basic-stacked.js",
+ "./examples/js/examples/basic-stepped.js",
+ "./examples/js/examples/basic-axis.js",
+ "./examples/js/examples/basic-bars.js",
+ "./examples/js/examples/basic-bars-stacked.js",
+ "./examples/js/examples/basic-pie.js",
+ "./examples/js/examples/basic-radar.js",
+ "./examples/js/examples/basic-bubble.js",
+ "./examples/js/examples/basic-candle.js",
+ "./examples/js/examples/basic-legend.js",
+ "./examples/js/examples/mouse-tracking.js",
+ "./examples/js/examples/mouse-zoom.js",
+ "./examples/js/examples/mouse-drag.js",
+ "./examples/js/examples/basic-time.js",
+ "./examples/js/examples/negative-values.js",
+ "./examples/js/examples/click-example.js",
+ "./examples/js/examples/download-image.js",
+ "./examples/js/examples/download-data.js",
+ "./examples/js/examples/advanced-titles.js",
+ "./examples/js/examples/color-gradients.js",
+ "./examples/js/examples/profile-bars.js",
+ "./examples/js/examples/basic-timeline.js",
+ "./examples/js/examples/advanced-markers.js"
+ ]
+ }
}
--- a/js/flotr2/make/flotr2.json
+++ b/js/flotr2/make/flotr2.json
@@ -1,37 +1,37 @@
{
- "JAVASCRIPT": {
- "DIST_DIR": "./build",
- "flotr2": [
- "./js/Flotr.js",
- "./js/DefaultOptions.js",
- "./js/Color.js",
- "./js/Date.js",
- "./js/DOM.js",
- "./js/EventAdapter.js",
- "./js/Text.js",
- "./js/Graph.js",
- "./js/Axis.js",
- "./js/Series.js",
- "./js/types/lines.js",
- "./js/types/bars.js",
- "./js/types/bubbles.js",
- "./js/types/candles.js",
- "./js/types/gantt.js",
- "./js/types/markers.js",
- "./js/types/pie.js",
- "./js/types/points.js",
- "./js/types/radar.js",
- "./js/types/timeline.js",
- "./js/plugins/crosshair.js",
- "./js/plugins/download.js",
- "./js/plugins/grid.js",
- "./js/plugins/hit.js",
- "./js/plugins/selection.js",
- "./js/plugins/labels.js",
- "./js/plugins/legend.js",
- "./js/plugins/spreadsheet.js",
- "./js/plugins/titles.js"
- ]
- }
+ "JAVASCRIPT": {
+ "DIST_DIR": "./build",
+ "flotr2": [
+ "./js/Flotr.js",
+ "./js/DefaultOptions.js",
+ "./js/Color.js",
+ "./js/Date.js",
+ "./js/DOM.js",
+ "./js/EventAdapter.js",
+ "./js/Text.js",
+ "./js/Graph.js",
+ "./js/Axis.js",
+ "./js/Series.js",
+ "./js/types/lines.js",
+ "./js/types/bars.js",
+ "./js/types/bubbles.js",
+ "./js/types/candles.js",
+ "./js/types/gantt.js",
+ "./js/types/markers.js",
+ "./js/types/pie.js",
+ "./js/types/points.js",
+ "./js/types/radar.js",
+ "./js/types/timeline.js",
+ "./js/plugins/crosshair.js",
+ "./js/plugins/download.js",
+ "./js/plugins/grid.js",
+ "./js/plugins/hit.js",
+ "./js/plugins/selection.js",
+ "./js/plugins/labels.js",
+ "./js/plugins/legend.js",
+ "./js/plugins/spreadsheet.js",
+ "./js/plugins/titles.js"
+ ]
+ }
}
--- a/js/flotr2/make/ie.json
+++ b/js/flotr2/make/ie.json
@@ -1,11 +1,20 @@
{
- "JAVASCRIPT": {
- "DIST_DIR": "./build",
- "ie": [
- { "src": "./lib/excanvas.js", "jshint": false },
- { "src": "./lib/base64.js", "jshint": false },
- { "src": "./lib/canvastext.js", "jshint": false }
- ]
- }
+ "JAVASCRIPT": {
+ "DIST_DIR": "./build",
+ "ie": [
+ {
+ "src": "./lib/excanvas.js",
+ "jshint": false
+ },
+ {
+ "src": "./lib/base64.js",
+ "jshint": false
+ },
+ {
+ "src": "./lib/canvastext.js",
+ "jshint": false
+ }
+ ]
+ }
}
--- a/js/flotr2/make/lib.json
+++ b/js/flotr2/make/lib.json
@@ -1,12 +1,18 @@
{
- "JAVASCRIPT": {
- "DIST_DIR": "./build",
- "bean": [
- { "src": "./lib/bean.js", "jshint": false }
- ],
- "underscore": [
- { "src": "./lib/underscore.js", "jshint": false }
- ]
- }
+ "JAVASCRIPT": {
+ "DIST_DIR": "./build",
+ "bean": [
+ {
+ "src": "./lib/bean.js",
+ "jshint": false
+ }
+ ],
+ "underscore": [
+ {
+ "src": "./lib/underscore.js",
+ "jshint": false
+ }
+ ]
+ }
}
--- a/js/flotr2/spec/Chart.js
+++ b/js/flotr2/spec/Chart.js
@@ -1,121 +1,133 @@
describe('Charts', function () {
- var
- width = 480,
- height = 320,
- a, b, options, defaults;
+ var
+ width = 480,
+ height = 320,
+ a, b, options, defaults;
- defaults = {
- width : 480,
- height : 320,
- color : "rgb(192,216,0)",
- context : null,
- data : null,
- fill : false,
- fillColor : null,
- fillOpacity : 0.4,
- fillStyle : "rgba(192,216,0,0.4)",
- fontColor : "#545454",
- fontSize : 7.5,
- htmlText : true,
- lineWidth : 2,
- shadowSize : 4,
- show : false,
- stacked : false,
- textEnabled : true,
- xScale : function (x) { return x; },
- yScale : function (y) { return height - y; }
- };
+ defaults = {
+ width: 480,
+ height: 320,
+ color: "rgb(192,216,0)",
+ context: null,
+ data: null,
+ fill: false,
+ fillColor: null,
+ fillOpacity: 0.4,
+ fillStyle: "rgba(192,216,0,0.4)",
+ fontColor: "#545454",
+ fontSize: 7.5,
+ htmlText: true,
+ lineWidth: 2,
+ shadowSize: 4,
+ show: false,
+ stacked: false,
+ textEnabled: true,
+ xScale: function (x) {
+ return x;
+ },
+ yScale: function (y) {
+ return height - y;
+ }
+ };
- /**
- * @param skip bool Skip test against development version (use this when developing test)
- */
- function drawTest (data, o, skip) {
- options.data = data;
- if (o) _.extend(options, o);
+ /**
+ * @param skip bool Skip test against development version (use this when developing test)
+ */
+ function drawTest(data, o, skip) {
+ options.data = data;
+ if (o) _.extend(options, o);
- if (!skip) TestFlotr.graphTypes.lines.draw(options);
- options.context = b.getContext('2d');
- StableFlotr.graphTypes.lines.draw(options);
+ if (!skip) TestFlotr.graphTypes.lines.draw(options);
+ options.context = b.getContext('2d');
+ StableFlotr.graphTypes.lines.draw(options);
- expect(b).toImageDiffEqual(a);
- }
+ expect(b).toImageDiffEqual(a);
+ }
- describe('Lines', function () {
+ describe('Lines', function () {
- beforeEach(function () {
- options = _.clone(defaults);
+ beforeEach(function () {
+ options = _.clone(defaults);
+ });
+
+ /*
+ describe('Data', function () {
+ it('gets a range', function () {
+ options.stacked = true;
+ options.data = [[0, 0], [240, 160], [480, 320]];
+ range = TestFlotr.graphTypes.lines.range(options);
+ expect(range.min).toEqual(0);
+ expect(range.max).toEqual(320);
+ });
+ });
+ */
+
+ describe('Draw', function () {
+
+ beforeEach(function () {
+ this.addMatchers(imagediff.jasmine);
+ a = imagediff.createCanvas(width, height);
+ b = imagediff.createCanvas(width, height);
+ options.context = a.getContext('2d');
+ });
+
+ it('draws a line chart', function () {
+ drawTest([
+ [0, 0],
+ [240, 300],
+ [480, 0]
+ ]);
+ });
+
+ it('skips null values', function () {
+ drawTest([
+ [0, 0],
+ [100, 50],
+ [200, null],
+ [300, 150],
+ [400, 200],
+ [480, 240]
+ ]);
+ });
+
+ it('draws two lines', function () {
+ // First line
+ drawTest([
+ [0, 0],
+ [240, 160],
+ [480, 320]
+ ]);
+
+ // Second Line
+ options.context = a.getContext('2d');
+ drawTest([
+ [0, 320],
+ [240, 160],
+ [480, 0]
+ ]);
+ });
+
+ it('fills a line', function () {
+ drawTest([
+ [0, 0],
+ [240, 300],
+ [480, 0]
+ ], {
+ fill: true
+ });
+ });
+
+ it('draws no shadow', function () {
+ drawTest([
+ [0, 0],
+ [240, 300],
+ [480, 0]
+ ], {
+ shadowSize: 0
+ });
+ });
+ });
});
-
- /*
- describe('Data', function () {
- it('gets a range', function () {
- options.stacked = true;
- options.data = [[0, 0], [240, 160], [480, 320]];
- range = TestFlotr.graphTypes.lines.range(options);
- expect(range.min).toEqual(0);
- expect(range.max).toEqual(320);
- });
- });
- */
-
- describe('Draw', function () {
-
- beforeEach(function () {
- this.addMatchers(imagediff.jasmine);
- a = imagediff.createCanvas(width, height);
- b = imagediff.createCanvas(width, height);
- options.context = a.getContext('2d');
- });
-
- it('draws a line chart', function () {
- drawTest([
- [0, 0],
- [240, 300],
- [480, 0]
- ]);
- });
-
- it('skips null values', function () {
- drawTest([
- [0, 0],
- [100, 50],
- [200, null],
- [300, 150],
- [400, 200],
- [480, 240]
- ]);
- });
-
- it('draws two lines', function () {
- // First line
- drawTest([[0, 0], [240, 160], [480, 320]]);
-
- // Second Line
- options.context = a.getContext('2d');
- drawTest([[0, 320], [240, 160], [480, 0]]);
- });
-
- it('fills a line', function () {
- drawTest([
- [0, 0],
- [240, 300],
- [480, 0]
- ], {
- fill : true
- });
- });
-
- it('draws no shadow', function () {
- drawTest([
- [0, 0],
- [240, 300],
- [480, 0]
- ], {
- shadowSize : 0
- });
- });
- });
- });
});
--- a/js/flotr2/spec/Color.js
+++ b/js/flotr2/spec/Color.js
@@ -1,93 +1,93 @@
describe('Colors', function () {
- describe('Color Construction', function () {
- it('should have a color class', function () {
- expect(TestFlotr.Color).not.toBeUndefined();
+ describe('Color Construction', function () {
+ it('should have a color class', function () {
+ expect(TestFlotr.Color).not.toBeUndefined();
+ });
+
+ it('should create a color', function () {
+ var color = new TestFlotr.Color(0, 0, 0, 0);
+ expect(color).toBeTruthy();
+ });
+
+ it('should have rgba attributes', function () {
+ var color = new TestFlotr.Color(0, 0, 0, 0);
+ expect(color.r).toEqual(0);
+ expect(color.g).toEqual(0);
+ expect(color.b).toEqual(0);
+ expect(color.a).toEqual(1.0);
+ });
});
- it('should create a color', function () {
- var color = new TestFlotr.Color(0, 0, 0, 0);
- expect(color).toBeTruthy();
+ describe('Color Manipulation', function () {
+
+ var
+ color;
+
+ afterEach(function () {
+ color = null;
+ });
+
+ it('normalizes colors to upper bound', function () {
+ color = new TestFlotr.Color(1000, 1000, 1000, 10);
+ expect(color.r).toEqual(255);
+ expect(color.g).toEqual(255);
+ expect(color.b).toEqual(255);
+ expect(color.a).toEqual(1.0);
+ });
+
+ it('normalizes colors to lower bound', function () {
+ color = new TestFlotr.Color(-1000, -1000, -1000, -10);
+ expect(color.r).toEqual(0);
+ expect(color.g).toEqual(0);
+ expect(color.b).toEqual(0);
+ expect(color.a).toEqual(0.0);
+ });
+
+ it('scales colors', function () {
+ color = new TestFlotr.Color(200, 200, 200, 1.0);
+ color.scale(.5, .5, .5, .5);
+ expect(color.r).toEqual(100);
+ expect(color.g).toEqual(100);
+ expect(color.b).toEqual(100);
+ expect(color.a).toEqual(0.5);
+ });
});
- it('should have rgba attributes', function () {
- var color = new TestFlotr.Color(0, 0, 0, 0);
- expect(color.r).toEqual(0);
- expect(color.g).toEqual(0);
- expect(color.b).toEqual(0);
- expect(color.a).toEqual(1.0);
+ describe('Color Conversion', function () {
+
+ var
+ color;
+
+ beforeEach(function () {
+ color = new TestFlotr.Color(200, 200, 200, 1.0);
+ });
+ afterEach(function () {
+ color = null;
+ });
+
+ it('should convert colors to strings, rgb', function () {
+ expect(color.toString()).toEqual('rgb(200,200,200)');
+ });
+
+ it('should convert colors to strings, rgba', function () {
+ color.a = 0.5;
+ color.normalize();
+ expect(color.toString()).toEqual('rgba(200,200,200,0.5)');
+ });
+
+ it('should clone colors', function () {
+
+ var
+ color2 = color.clone();
+
+ expect(color.toString()).toEqual(color2.toString());
+
+ color.a = 0.5;
+ color.normalize();
+ color2 = color.clone();
+ expect(color.toString()).toEqual(color2.toString());
+ });
});
- });
-
- describe('Color Manipulation', function () {
-
- var
- color;
-
- afterEach(function () {
- color = null;
- });
-
- it('normalizes colors to upper bound', function () {
- color = new TestFlotr.Color(1000, 1000, 1000, 10);
- expect(color.r).toEqual(255);
- expect(color.g).toEqual(255);
- expect(color.b).toEqual(255);
- expect(color.a).toEqual(1.0);
- });
-
- it('normalizes colors to lower bound', function () {
- color = new TestFlotr.Color(-1000, -1000, -1000, -10);
- expect(color.r).toEqual(0);
- expect(color.g).toEqual(0);
- expect(color.b).toEqual(0);
- expect(color.a).toEqual(0.0);
- });
-
- it('scales colors', function () {
- color = new TestFlotr.Color(200, 200, 200, 1.0);
- color.scale(.5, .5, .5, .5);
- expect(color.r).toEqual(100);
- expect(color.g).toEqual(100);
- expect(color.b).toEqual(100);
- expect(color.a).toEqual(0.5);
- });
- });
-
- describe('Color Conversion', function () {
-
- var
- color;
-
- beforeEach(function () {
- color = new TestFlotr.Color(200, 200, 200, 1.0);
- });
- afterEach(function () {
- color = null;
- });
-
- it('should convert colors to strings, rgb', function () {
- expect(color.toString()).toEqual('rgb(200,200,200)');
- });
-
- it('should convert colors to strings, rgba', function () {
- color.a = 0.5;
- color.normalize();
- expect(color.toString()).toEqual('rgba(200,200,200,0.5)');
- });
-
- it('should clone colors', function () {
-
- var
- color2 = color.clone();
-
- expect(color.toString()).toEqual(color2.toString());
-
- color.a = 0.5;
- color.normalize();
- color2 = color.clone();
- expect(color.toString()).toEqual(color2.toString());
- });
- });
});
--- a/js/flotr2/spec/Flotr.js
+++ b/js/flotr2/spec/Flotr.js
@@ -1,77 +1,77 @@
describe('Flotr', function () {
- describe('Plots', function () {
+ describe('Plots', function () {
- var
- nodeA, nodeB,
- a, b;
+ var
+ nodeA, nodeB,
+ a, b;
- beforeEach(function () {
+ beforeEach(function () {
- // Add imagediff matchers
- this.addMatchers(imagediff.jasmine);
+ // Add imagediff matchers
+ this.addMatchers(imagediff.jasmine);
- nodeA = buildNode();
- nodeB = buildNode();
+ nodeA = buildNode();
+ nodeB = buildNode();
+ });
+
+ afterEach(function () {
+ destroyNode(nodeA);
+ destroyNode(nodeB);
+ a = null;
+ b = null;
+ Flotr = null;
+ });
+
+ _.each(TestFlotr.ExampleList.examples, function (example, key) {
+
+ it('should draw a `' + example.name + '`line graph', function () {
+
+ executeExampleTest(example, StableFlotr, nodeA);
+ executeExampleTest(example, TestFlotr, nodeB);
+
+ if (example.timeout) {
+ waits(example.timeout);
+ runs(function () {
+ expect(nodeB.graph.ctx).toImageDiffEqual(nodeA.graph.ctx, example.tolerance || 0);
+ });
+ } else {
+ expect(nodeB.graph.ctx).toImageDiffEqual(nodeA.graph.ctx, example.tolerance || 0);
+ }
+ });
+ });
+
+ // Helpers
+
+ function executeExampleTest(example, flotr, node) {
+ Math.seedrandom(example.key);
+ Flotr = flotr;
+ example.callback.apply(this, [node].concat(example.args || []));
+ }
+
+ function buildNode() {
+ var node = document.createElement('div');
+ document.body.appendChild(node);
+ node.style.width = '320px';
+ node.style.height = '240px';
+ return node;
+ }
+
+ function destroyNode(node) {
+ document.body.removeChild(node);
+ }
});
- afterEach(function () {
- destroyNode(nodeA);
- destroyNode(nodeB);
- a = null;
- b = null;
- Flotr = null;
+ describe('Main', function () {
+
+ it('gets a tick size', function () {
+ expect(TestFlotr.getTickSize).not.toBeUndefined();
+ expect(TestFlotr.getTickSize(10, 0, 100, 1)).toEqual(10);
+ expect(TestFlotr.getTickSize(20, 0, 100, 1)).toEqual(5);
+ expect(TestFlotr.getTickSize(5, 10, 110, 1)).toEqual(20);
+ expect(TestFlotr.getTickSize(0, 0, 10, 1)).toEqual(Number.POSITIVE_INFINITY);
+ expect(isNaN(TestFlotr.getTickSize(0, 0, -10, 1))).toBeTruthy();
+ });
});
-
- _.each(TestFlotr.ExampleList.examples, function (example, key) {
-
- it('should draw a `' + example.name + '`line graph', function () {
-
- executeExampleTest(example, StableFlotr, nodeA);
- executeExampleTest(example, TestFlotr, nodeB);
-
- if (example.timeout) {
- waits(example.timeout);
- runs (function () {
- expect(nodeB.graph.ctx).toImageDiffEqual(nodeA.graph.ctx, example.tolerance || 0);
- });
- } else {
- expect(nodeB.graph.ctx).toImageDiffEqual(nodeA.graph.ctx, example.tolerance || 0);
- }
- });
- });
-
- // Helpers
-
- function executeExampleTest (example, flotr, node) {
- Math.seedrandom(example.key);
- Flotr = flotr;
- example.callback.apply(this, [node].concat(example.args || []));
- }
-
- function buildNode () {
- var node = document.createElement('div');
- document.body.appendChild(node);
- node.style.width = '320px';
- node.style.height = '240px';
- return node;
- }
-
- function destroyNode (node) {
- document.body.removeChild(node);
- }
- });
-
- describe('Main', function () {
-
- it('gets a tick size', function () {
- expect(TestFlotr.getTickSize).not.toBeUndefined();
- expect(TestFlotr.getTickSize(10, 0, 100, 1)).toEqual(10);
- expect(TestFlotr.getTickSize(20, 0, 100, 1)).toEqual(5);
- expect(TestFlotr.getTickSize(5, 10, 110, 1)).toEqual(20);
- expect(TestFlotr.getTickSize(0, 0, 10, 1)).toEqual(Number.POSITIVE_INFINITY);
- expect(isNaN(TestFlotr.getTickSize(0, 0, -10, 1))).toBeTruthy();
- });
- });
});
--- a/js/flotr2/spec/Graph.js
+++ b/js/flotr2/spec/Graph.js
@@ -1,80 +1,80 @@
describe('Graph', function () {
- describe('Options', function () {
- var
- nodeA, nodeB,
- a, b, x, i,
- d1 = [],
- options = {};
+ describe('Options', function () {
+ var
+ nodeA, nodeB,
+ a, b, x, i,
+ d1 = [],
+ options = {};
- for (i = 0; i < 100; i++) {
- x = (i*1000*3600*24*36.5);
- d1.push([x, i+Math.random()*30+Math.sin(i/20+Math.random()*2)*20+Math.sin(i/10+Math.random())*10]);
- }
+ for (i = 0; i < 100; i++) {
+ x = (i * 1000 * 3600 * 24 * 36.5);
+ d1.push([x, i + Math.random() * 30 + Math.sin(i / 20 + Math.random() * 2) * 20 + Math.sin(i / 10 + Math.random()) * 10]);
+ }
- options = {
- xaxis : {
- mode : 'time',
- labelsAngle : 45
- },
- selection : {
- mode : 'x'
- },
- HtmlText : false,
- };
+ options = {
+ xaxis: {
+ mode: 'time',
+ labelsAngle: 45
+ },
+ selection: {
+ mode: 'x'
+ },
+ HtmlText: false,
+ };
- beforeEach(function () {
- nodeA = buildNode();
- Flotr = TestFlotr;
+ beforeEach(function () {
+ nodeA = buildNode();
+ Flotr = TestFlotr;
+ });
+
+ afterEach(function () {
+ destroyNode(nodeA);
+ a = b = null;
+ Flotr = null;
+ });
+
+ it('should override nested default options with user options', function () {
+ a = new TestFlotr.Graph(nodeA, d1, options);
+ expect(a.options.xaxis.mode).toEqual(options.xaxis.mode);
+ });
+
+ it('should retain default options if user option\'s nested object does not define property', function () {
+ a = new TestFlotr.Graph(nodeA, d1, options);
+ expect(a.options.xaxis.tickFormatter).toBeTruthy();
+ });
+
+ it('should not affect default options when modifying graph options (objects)', function () {
+ a = new TestFlotr.Graph(nodeA, d1, options);
+ a.options.x2axis = {
+ titleAlign: 'left'
+ };
+ a.options.xaxis.scaling = 'logarithmic';
+ expect(TestFlotr.defaultOptions.xaxis.scaling).toEqual('linear');
+ expect(TestFlotr.defaultOptions.x2axis.titleAlign).toBeFalsy();
+ });
+
+ /*
+ it('should not affect default options when modifying graph options (arrays)', function() {
+ a = new TestFlotr.Graph(nodeA, d1, options);
+ a.options.colors[1] = '#bada55';
+ expect(TestFlotr.defaultOptions.colors[1]).toNotBe('#bada55');
+ });
+ */
+
});
- afterEach(function () {
- destroyNode(nodeA);
- a = b = null;
- Flotr = null;
- });
+ function buildNode() {
+ var node = document.createElement('div');
+ document.body.appendChild(node);
+ node.style.width = '320px';
+ node.style.height = '240px';
+ return node;
+ }
- it('should override nested default options with user options', function() {
- a = new TestFlotr.Graph(nodeA, d1, options);
- expect(a.options.xaxis.mode).toEqual(options.xaxis.mode);
- });
-
- it('should retain default options if user option\'s nested object does not define property', function() {
- a = new TestFlotr.Graph(nodeA, d1, options);
- expect(a.options.xaxis.tickFormatter).toBeTruthy();
- });
-
- it('should not affect default options when modifying graph options (objects)', function() {
- a = new TestFlotr.Graph(nodeA, d1, options);
- a.options.x2axis = {
- titleAlign : 'left'
- };
- a.options.xaxis.scaling = 'logarithmic';
- expect(TestFlotr.defaultOptions.xaxis.scaling).toEqual('linear');
- expect(TestFlotr.defaultOptions.x2axis.titleAlign).toBeFalsy();
- });
-
- /*
- it('should not affect default options when modifying graph options (arrays)', function() {
- a = new TestFlotr.Graph(nodeA, d1, options);
- a.options.colors[1] = '#bada55';
- expect(TestFlotr.defaultOptions.colors[1]).toNotBe('#bada55');
- });
- */
-
- });
-
- function buildNode () {
- var node = document.createElement('div');
- document.body.appendChild(node);
- node.style.width = '320px';
- node.style.height = '240px';
- return node;
- }
-
- function destroyNode (node) {
- document.body.removeChild(node);
- }
+ function destroyNode(node) {
+ document.body.removeChild(node);
+ }
});
--- a/js/flotr2/spec/index.html
+++ b/js/flotr2/spec/index.html
@@ -1,103 +1,103 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
+ "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
- <title>Jasmine Spec Runner</title>
+ <title>Jasmine Spec Runner</title>
- <link rel="shortcut icon" type="image/png" href="../lib/jasmine/jasmine_favicon.png">
+ <link rel="shortcut icon" type="image/png" href="../lib/jasmine/jasmine_favicon.png">
- <link rel="stylesheet" type="text/css" href="../lib/jasmine/jasmine.css">
- <script type="text/javascript" src="../lib/jasmine/jasmine.js"></script>
- <script type="text/javascript" src="../lib/jasmine/jasmine-html.js"></script>
- <script type="text/javascript" src="../lib/imagediff.js"></script>
- <script type="text/javascript" src="../examples/lib/randomseed.js"></script>
+ <link rel="stylesheet" type="text/css" href="../lib/jasmine/jasmine.css">
+ <script type="text/javascript" src="../lib/jasmine/jasmine.js"></script>
+ <script type="text/javascript" src="../lib/jasmine/jasmine-html.js"></script>
+ <script type="text/javascript" src="../lib/imagediff.js"></script>
+ <script type="text/javascript" src="../examples/lib/randomseed.js"></script>
- <!-- include source files here... -->
- <script type="text/javascript" src="js/flotr2.stable.js"></script>
- <script type="text/javascript">
- var StableFlotr = Flotr.noConflict();
- </script>
+ <!-- include source files here... -->
+ <script type="text/javascript" src="js/flotr2.stable.js"></script>
+ <script type="text/javascript">
+ var StableFlotr = Flotr.noConflict();
+ </script>
- <script src="../lib/bean.js"></script>
- <script src="../lib/underscore.js"></script>
- <script src="../js/Flotr.js"></script>
- <script src="../js/DefaultOptions.js"></script>
- <script src="../js/Color.js"></script>
- <script src="../js/Date.js"></script>
- <script src="../js/DOM.js"></script>
- <script src="../js/EventAdapter.js"></script>
- <script src="../js/Text.js"></script>
- <script src="../js/Graph.js"></script>
- <script src="../js/Axis.js"></script>
- <script src="../js/Series.js"></script>
- <script src="../js/types/lines.js"></script>
- <script src="../js/types/bars.js"></script>
- <script src="../js/types/bubbles.js"></script>
- <script src="../js/types/candles.js"></script>
- <script src="../js/types/gantt.js"></script>
- <script src="../js/types/markers.js"></script>
- <script src="../js/types/pie.js"></script>
- <script src="../js/types/points.js"></script>
- <script src="../js/types/radar.js"></script>
- <script src="../js/types/timeline.js"></script>
- <script src="../js/plugins/crosshair.js"></script>
- <script src="../js/plugins/download.js"></script>
- <script src="../js/plugins/grid.js"></script>
- <script src="../js/plugins/hit.js"></script>
- <script src="../js/plugins/selection.js"></script>
- <script src="../js/plugins/labels.js"></script>
- <script src="../js/plugins/legend.js"></script>
- <script src="../js/plugins/spreadsheet.js"></script>
- <script src="../js/plugins/titles.js"></script>
- <script src="../js/charts/lines.js"></script>
+ <script src="../lib/bean.js"></script>
+ <script src="../lib/underscore.js"></script>
+ <script src="../js/Flotr.js"></script>
+ <script src="../js/DefaultOptions.js"></script>
+ <script src="../js/Color.js"></script>
+ <script src="../js/Date.js"></script>
+ <script src="../js/DOM.js"></script>
+ <script src="../js/EventAdapter.js"></script>
+ <script src="../js/Text.js"></script>
+ <script src="../js/Graph.js"></script>
+ <script src="../js/Axis.js"></script>
+ <script src="../js/Series.js"></script>
+ <script src="../js/types/lines.js"></script>
+ <script src="../js/types/bars.js"></script>
+ <script src="../js/types/bubbles.js"></script>
+ <script src="../js/types/candles.js"></script>
+ <script src="../js/types/gantt.js"></script>
+ <script src="../js/types/markers.js"></script>
+ <script src="../js/types/pie.js"></script>
+ <script src="../js/types/points.js"></script>
+ <script src="../js/types/radar.js"></script>
+ <script src="../js/types/timeline.js"></script>
+ <script src="../js/plugins/crosshair.js"></script>
+ <script src="../js/plugins/download.js"></script>
+ <script src="../js/plugins/grid.js"></script>
+ <script src="../js/plugins/hit.js"></script>
+ <script src="../js/plugins/selection.js"></script>
+ <script src="../js/plugins/labels.js"></script>
+ <script src="../js/plugins/legend.js"></script>
+ <script src="../js/plugins/spreadsheet.js"></script>
+ <script src="../js/plugins/titles.js"></script>
+ <script src="../js/charts/lines.js"></script>
- <!-- Test Examples -->
- <script type="text/javascript" src="../flotr2.examples.types.js"></script>
- <script type="text/javascript" src="js/test-background.js"></script>
- <script type="text/javascript" src="js/test-boundaries.js"></script>
- <script type="text/javascript" src="js/test-mountain-nulls.js"></script>
+ <!-- Test Examples -->
+ <script type="text/javascript" src="../flotr2.examples.types.js"></script>
+ <script type="text/javascript" src="js/test-background.js"></script>
+ <script type="text/javascript" src="js/test-boundaries.js"></script>
+ <script type="text/javascript" src="js/test-mountain-nulls.js"></script>
- <script type="text/javascript">
- var TestFlotr = Flotr.noConflict();
- </script>
+ <script type="text/javascript">
+ var TestFlotr = Flotr.noConflict();
+ </script>
- <!-- include spec files here... -->
- <script type="text/javascript" src="Flotr.js"></script>
- <script type="text/javascript" src="Color.js"></script>
- <script type="text/javascript" src="Graph.js"></script>
- <script type="text/javascript" src="Chart.js"></script>
+ <!-- include spec files here... -->
+ <script type="text/javascript" src="Flotr.js"></script>
+ <script type="text/javascript" src="Color.js"></script>
+ <script type="text/javascript" src="Graph.js"></script>
+ <script type="text/javascript" src="Chart.js"></script>
</head>
<body>
</body>
<script type="text/javascript">
-(function() {
- var jasmineEnv = jasmine.getEnv();
- jasmineEnv.updateInterval = 1000;
+ (function () {
+ var jasmineEnv = jasmine.getEnv();
+ jasmineEnv.updateInterval = 1000;
- var reporter = new jasmine.HtmlReporter();
+ var reporter = new jasmine.HtmlReporter();
- jasmineEnv.addReporter(reporter);
+ jasmineEnv.addReporter(reporter);
- jasmineEnv.specFilter = function(spec) {
- return reporter.specFilter(spec);
- };
+ jasmineEnv.specFilter = function (spec) {
+ return reporter.specFilter(spec);
+ };
- var currentWindowOnload = window.onload;
+ var currentWindowOnload = window.onload;
- window.onload = function() {
- if (currentWindowOnload) {
- currentWindowOnload();
- }
- execJasmine();
- };
+ window.onload = function () {
+ if (currentWindowOnload) {
+ currentWindowOnload();
+ }
+ execJasmine();
+ };
- function execJasmine() {
- jasmineEnv.execute();
- }
+ function execJasmine() {
+ jasmineEnv.execute();
+ }
-})();
+ })();
</script>
</html>
--- a/js/flotr2/spec/js/flotr2.stable.js
+++ b/js/flotr2/spec/js/flotr2.stable.js
@@ -1,505 +1,500 @@
/*!
- * bean.js - copyright Jacob Thornton 2011
- * https://github.com/fat/bean
- * MIT License
- * special thanks to:
- * dean edwards: http://dean.edwards.name/
- * dperini: https://github.com/dperini/nwevents
- * the entire mootools team: github.com/mootools/mootools-core
- */
+ * bean.js - copyright Jacob Thornton 2011
+ * https://github.com/fat/bean
+ * MIT License
+ * special thanks to:
+ * dean edwards: http://dean.edwards.name/
+ * dperini: https://github.com/dperini/nwevents
+ * the entire mootools team: github.com/mootools/mootools-core
+ */
/*global module:true, define:true*/
!function (name, context, definition) {
- if (typeof module !== 'undefined') module.exports = definition(name, context);
- else if (typeof define === 'function' && typeof define.amd === 'object') define(definition);
- else context[name] = definition(name, context);
+ if (typeof module !== 'undefined') module.exports = definition(name, context);
+ else if (typeof define === 'function' && typeof define.amd === 'object') define(definition);
+ else context[name] = definition(name, context);
}('bean', this, function (name, context) {
- var win = window
- , old = context[name]
- , overOut = /over|out/
- , namespaceRegex = /[^\.]*(?=\..*)\.|.*/
- , nameRegex = /\..*/
- , addEvent = 'addEventListener'
- , attachEvent = 'attachEvent'
- , removeEvent = 'removeEventListener'
- , detachEvent = 'detachEvent'
- , doc = document || {}
- , root = doc.documentElement || {}
- , W3C_MODEL = root[addEvent]
- , eventSupport = W3C_MODEL ? addEvent : attachEvent
- , slice = Array.prototype.slice
- , mouseTypeRegex = /click|mouse|menu|drag|drop/i
- , touchTypeRegex = /^touch|^gesture/i
- , ONE = { one: 1 } // singleton for quick matching making add() do one()
-
- , nativeEvents = (function (hash, events, i) {
- for (i = 0; i < events.length; i++)
- hash[events[i]] = 1
- return hash
- })({}, (
- 'click dblclick mouseup mousedown contextmenu ' + // mouse buttons
- 'mousewheel DOMMouseScroll ' + // mouse wheel
- 'mouseover mouseout mousemove selectstart selectend ' + // mouse movement
- 'keydown keypress keyup ' + // keyboard
- 'orientationchange ' + // mobile
- 'focus blur change reset select submit ' + // form elements
- 'load unload beforeunload resize move DOMContentLoaded readystatechange ' + // window
- 'error abort scroll ' + // misc
- (W3C_MODEL ? // element.fireEvent('onXYZ'... is not forgiving if we try to fire an event
- // that doesn't actually exist, so make sure we only do these on newer browsers
- 'show ' + // mouse buttons
- 'input invalid ' + // form elements
- 'touchstart touchmove touchend touchcancel ' + // touch
- 'gesturestart gesturechange gestureend ' + // gesture
- 'message readystatechange pageshow pagehide popstate ' + // window
- 'hashchange offline online ' + // window
- 'afterprint beforeprint ' + // printing
- 'dragstart dragenter dragover dragleave drag drop dragend ' + // dnd
- 'loadstart progress suspend emptied stalled loadmetadata ' + // media
- 'loadeddata canplay canplaythrough playing waiting seeking ' + // media
- 'seeked ended durationchange timeupdate play pause ratechange ' + // media
- 'volumechange cuechange ' + // media
- 'checking noupdate downloading cached updateready obsolete ' + // appcache
- '' : '')
- ).split(' ')
- )
-
- , customEvents = (function () {
- function isDescendant(parent, node) {
- while ((node = node.parentNode) !== null) {
- if (node === parent) return true
- }
- return false
- }
-
- function check(event) {
- var related = event.relatedTarget
- if (!related) return related === null
- return (related !== this && related.prefix !== 'xul' && !/document/.test(this.toString()) && !isDescendant(this, related))
- }
-
- return {
- mouseenter: { base: 'mouseover', condition: check }
- , mouseleave: { base: 'mouseout', condition: check }
- , mousewheel: { base: /Firefox/.test(navigator.userAgent) ? 'DOMMouseScroll' : 'mousewheel' }
- }
- })()
-
- , fixEvent = (function () {
- var commonProps = 'altKey attrChange attrName bubbles cancelable ctrlKey currentTarget detail eventPhase getModifierState isTrusted metaKey relatedNode relatedTarget shiftKey srcElement target timeStamp type view which'.split(' ')
- , mouseProps = commonProps.concat('button buttons clientX clientY dataTransfer fromElement offsetX offsetY pageX pageY screenX screenY toElement'.split(' '))
- , keyProps = commonProps.concat('char charCode key keyCode'.split(' '))
- , touchProps = commonProps.concat('touches targetTouches changedTouches scale rotation'.split(' '))
- , preventDefault = 'preventDefault'
- , createPreventDefault = function (event) {
- return function () {
- if (event[preventDefault])
- event[preventDefault]()
- else
- event.returnValue = false
- }
- }
- , stopPropagation = 'stopPropagation'
- , createStopPropagation = function (event) {
- return function () {
- if (event[stopPropagation])
- event[stopPropagation]()
- else
- event.cancelBubble = true
- }
- }
- , createStop = function (synEvent) {
- return function () {
- synEvent[preventDefault]()
- synEvent[stopPropagation]()
- synEvent.stopped = true
- }
- }
- , copyProps = function (event, result, props) {
- var i, p
- for (i = props.length; i--;) {
- p = props[i]
- if (!(p in result) && p in event) result[p] = event[p]
- }
- }
-
- return function (event, isNative) {
- var result = { originalEvent: event, isNative: isNative }
- if (!event)
- return result
-
- var props
- , type = event.type
- , target = event.target || event.srcElement
-
- result[preventDefault] = createPreventDefault(event)
- result[stopPropagation] = createStopPropagation(event)
- result.stop = createStop(result)
- result.target = target && target.nodeType === 3 ? target.parentNode : target
-
- if (isNative) { // we only need basic augmentation on custom events, the rest is too expensive
- if (type.indexOf('key') !== -1) {
- props = keyProps
- result.keyCode = event.which || event.keyCode
- } else if (mouseTypeRegex.test(type)) {
- props = mouseProps
- result.rightClick = event.which === 3 || event.button === 2
- result.pos = { x: 0, y: 0 }
- if (event.pageX || event.pageY) {
- result.clientX = event.pageX
- result.clientY = event.pageY
- } else if (event.clientX || event.clientY) {
- result.clientX = event.clientX + doc.body.scrollLeft + root.scrollLeft
- result.clientY = event.clientY + doc.body.scrollTop + root.scrollTop
- }
- if (overOut.test(type))
- result.relatedTarget = event.relatedTarget || event[(type === 'mouseover' ? 'from' : 'to') + 'Element']
- } else if (touchTypeRegex.test(type)) {
- props = touchProps
- }
- copyProps(event, result, props || commonProps)
- }
- return result
- }
- })()
-
- // if we're in old IE we can't do onpropertychange on doc or win so we use doc.documentElement for both
- , targetElement = function (element, isNative) {
- return !W3C_MODEL && !isNative && (element === doc || element === win) ? root : element
- }
-
- // we use one of these per listener, of any type
- , RegEntry = (function () {
- function entry(element, type, handler, original, namespaces) {
- this.element = element
- this.type = type
- this.handler = handler
- this.original = original
- this.namespaces = namespaces
- this.custom = customEvents[type]
- this.isNative = nativeEvents[type] && element[eventSupport]
- this.eventType = W3C_MODEL || this.isNative ? type : 'propertychange'
- this.customType = !W3C_MODEL && !this.isNative && type
- this.target = targetElement(element, this.isNative)
- this.eventSupport = this.target[eventSupport]
- }
-
- entry.prototype = {
- // given a list of namespaces, is our entry in any of them?
- inNamespaces: function (checkNamespaces) {
- var i, j
- if (!checkNamespaces)
- return true
- if (!this.namespaces)
+ var win = window
+ , old = context[name]
+ , overOut = /over|out/
+ , namespaceRegex = /[^\.]*(?=\..*)\.|.*/
+ , nameRegex = /\..*/
+ , addEvent = 'addEventListener'
+ , attachEvent = 'attachEvent'
+ , removeEvent = 'removeEventListener'
+ , detachEvent = 'detachEvent'
+ , doc = document || {}
+ , root = doc.documentElement || {}
+ , W3C_MODEL = root[addEvent]
+ , eventSupport = W3C_MODEL ? addEvent : attachEvent
+ , slice = Array.prototype.slice
+ , mouseTypeRegex = /click|mouse|menu|drag|drop/i
+ , touchTypeRegex = /^touch|^gesture/i
+ , ONE = { one: 1 } // singleton for quick matching making add() do one()
+
+ , nativeEvents = (function (hash, events, i) {
+ for (i = 0; i < events.length; i++)
+ hash[events[i]] = 1
+ return hash
+ })({}, (
+ 'click dblclick mouseup mousedown contextmenu ' + // mouse buttons
+ 'mousewheel DOMMouseScroll ' + // mouse wheel
+ 'mouseover mouseout mousemove selectstart selectend ' + // mouse movement
+ 'keydown keypress keyup ' + // keyboard
+ 'orientationchange ' + // mobile
+ 'focus blur change reset select submit ' + // form elements
+ 'load unload beforeunload resize move DOMContentLoaded readystatechange ' + // window
+ 'error abort scroll ' + // misc
+ (W3C_MODEL ? // element.fireEvent('onXYZ'... is not forgiving if we try to fire an event
+ // that doesn't actually exist, so make sure we only do these on newer browsers
+ 'show ' + // mouse buttons
+ 'input invalid ' + // form elements
+ 'touchstart touchmove touchend touchcancel ' + // touch
+ 'gesturestart gesturechange gestureend ' + // gesture
+ 'message readystatechange pageshow pagehide popstate ' + // window
+ 'hashchange offline online ' + // window
+ 'afterprint beforeprint ' + // printing
+ 'dragstart dragenter dragover dragleave drag drop dragend ' + // dnd
+ 'loadstart progress suspend emptied stalled loadmetadata ' + // media
+ 'loadeddata canplay canplaythrough playing waiting seeking ' + // media
+ 'seeked ended durationchange timeupdate play pause ratechange ' + // media
+ 'volumechange cuechange ' + // media
+ 'checking noupdate downloading cached updateready obsolete ' + // appcache
+ '' : '')
+ ).split(' ')
+ )
+
+ , customEvents = (function () {
+ function isDescendant(parent, node) {
+ while ((node = node.parentNode) !== null) {
+ if (node === parent) return true
+ }
return false
- for (i = checkNamespaces.length; i--;) {
- for (j = this.namespaces.length; j--;) {
- if (checkNamespaces[i] === this.namespaces[j])
- return true
- }
- }
- return false
- }
-
- // match by element, original fn (opt), handler fn (opt)
- , matches: function (checkElement, checkOriginal, checkHandler) {
- return this.element === checkElement &&
- (!checkOriginal || this.original === checkOriginal) &&
- (!checkHandler || this.handler === checkHandler)
- }
- }
-
- return entry
- })()
-
- , registry = (function () {
- // our map stores arrays by event type, just because it's better than storing
- // everything in a single array. uses '$' as a prefix for the keys for safety
- var map = {}
-
- // generic functional search of our registry for matching listeners,
- // `fn` returns false to break out of the loop
- , forAll = function (element, type, original, handler, fn) {
- if (!type || type === '*') {
- // search the whole registry
- for (var t in map) {
- if (t.charAt(0) === '$')
- forAll(element, t.substr(1), original, handler, fn)
- }
- } else {
- var i = 0, l, list = map['$' + type], all = element === '*'
- if (!list)
- return
- for (l = list.length; i < l; i++) {
- if (all || list[i].matches(element, original, handler))
- if (!fn(list[i], list, i, type))
- return
- }
- }
- }
-
- , has = function (element, type, original) {
- // we're not using forAll here simply because it's a bit slower and this
- // needs to be fast
- var i, list = map['$' + type]
- if (list) {
- for (i = list.length; i--;) {
- if (list[i].matches(element, original, null))
- return true
- }
- }
- return false
- }
-
- , get = function (element, type, original) {
- var entries = []
- forAll(element, type, original, null, function (entry) { return entries.push(entry) })
- return entries
- }
-
- , put = function (entry) {
- (map['$' + entry.type] || (map['$' + entry.type] = [])).push(entry)
- return entry
- }
-
- , del = function (entry) {
- forAll(entry.element, entry.type, null, entry.handler, function (entry, list, i) {
- list.splice(i, 1)
- if (list.length === 0)
- delete map['$' + entry.type]
- return false
- })
- }
+ }
+
+ function check(event) {
+ var related = event.relatedTarget
+ if (!related) return related === null
+ return (related !== this && related.prefix !== 'xul' && !/document/.test(this.toString()) && !isDescendant(this, related))
+ }
+
+ return {
+ mouseenter: { base: 'mouseover', condition: check }, mouseleave: { base: 'mouseout', condition: check }, mousewheel: { base: /Firefox/.test(navigator.userAgent) ? 'DOMMouseScroll' : 'mousewheel' }
+ }
+ })()
+
+ , fixEvent = (function () {
+ var commonProps = 'altKey attrChange attrName bubbles cancelable ctrlKey currentTarget detail eventPhase getModifierState isTrusted metaKey relatedNode relatedTarget shiftKey srcElement target timeStamp type view which'.split(' ')
+ , mouseProps = commonProps.concat('button buttons clientX clientY dataTransfer fromElement offsetX offsetY pageX pageY screenX screenY toElement'.split(' '))
+ , keyProps = commonProps.concat('char charCode key keyCode'.split(' '))
+ , touchProps = commonProps.concat('touches targetTouches changedTouches scale rotation'.split(' '))
+ , preventDefault = 'preventDefault'
+ , createPreventDefault = function (event) {
+ return function () {
+ if (event[preventDefault])
+ event[preventDefault]()
+ else
+ event.returnValue = false
+ }
+ }
+ , stopPropagation = 'stopPropagation'
+ , createStopPropagation = function (event) {
+ return function () {
+ if (event[stopPropagation])
+ event[stopPropagation]()
+ else
+ event.cancelBubble = true
+ }
+ }
+ , createStop = function (synEvent) {
+ return function () {
+ synEvent[preventDefault]()
+ synEvent[stopPropagation]()
+ synEvent.stopped = true
+ }
+ }
+ , copyProps = function (event, result, props) {
+ var i, p
+ for (i = props.length; i--;) {
+ p = props[i]
+ if (!(p in result) && p in event) result[p] = event[p]
+ }
+ }
+
+ return function (event, isNative) {
+ var result = { originalEvent: event, isNative: isNative }
+ if (!event)
+ return result
+
+ var props
+ , type = event.type
+ , target = event.target || event.srcElement
+
+ result[preventDefault] = createPreventDefault(event)
+ result[stopPropagation] = createStopPropagation(event)
+ result.stop = createStop(result)
+ result.target = target && target.nodeType === 3 ? target.parentNode : target
+
+ if (isNative) { // we only need basic augmentation on custom events, the rest is too expensive
+ if (type.indexOf('key') !== -1) {
+ props = keyProps
+ result.keyCode = event.which || event.keyCode
+ } else if (mouseTypeRegex.test(type)) {
+ props = mouseProps
+ result.rightClick = event.which === 3 || event.button === 2
+ result.pos = { x: 0, y: 0 }
+ if (event.pageX || event.pageY) {
+ result.clientX = event.pageX
+ result.clientY = event.pageY
+ } else if (event.clientX || event.clientY) {
+ result.clientX = event.clientX + doc.body.scrollLeft + root.scrollLeft
+ result.clientY = event.clientY + doc.body.scrollTop + root.scrollTop
+ }
+ if (overOut.test(type))
+ result.relatedTarget = event.relatedTarget || event[(type === 'mouseover' ? 'from' : 'to') + 'Element']
+ } else if (touchTypeRegex.test(type)) {
+ props = touchProps
+ }
+ copyProps(event, result, props || commonProps)
+ }
+ return result
+ }
+ })()
+
+ // if we're in old IE we can't do onpropertychange on doc or win so we use doc.documentElement for both
+ , targetElement = function (element, isNative) {
+ return !W3C_MODEL && !isNative && (element === doc || element === win) ? root : element
+ }
+
+ // we use one of these per listener, of any type
+ , RegEntry = (function () {
+ function entry(element, type, handler, original, namespaces) {
+ this.element = element
+ this.type = type
+ this.handler = handler
+ this.original = original
+ this.namespaces = namespaces
+ this.custom = customEvents[type]
+ this.isNative = nativeEvents[type] && element[eventSupport]
+ this.eventType = W3C_MODEL || this.isNative ? type : 'propertychange'
+ this.customType = !W3C_MODEL && !this.isNative && type
+ this.target = targetElement(element, this.isNative)
+ this.eventSupport = this.target[eventSupport]
+ }
+
+ entry.prototype = {
+ // given a list of namespaces, is our entry in any of them?
+ inNamespaces: function (checkNamespaces) {
+ var i, j
+ if (!checkNamespaces)
+ return true
+ if (!this.namespaces)
+ return false
+ for (i = checkNamespaces.length; i--;) {
+ for (j = this.namespaces.length; j--;) {
+ if (checkNamespaces[i] === this.namespaces[j])
+ return true
+ }
+ }
+ return false
+ }
+
+ // match by element, original fn (opt), handler fn (opt)
+ , matches: function (checkElement, checkOriginal, checkHandler) {
+ return this.element === checkElement &&
+ (!checkOriginal || this.original === checkOriginal) &&
+ (!checkHandler || this.handler === checkHandler)
+ }
+ }
+
+ return entry
+ })()
+
+ , registry = (function () {
+ // our map stores arrays by event type, just because it's better than storing
+ // everything in a single array. uses '$' as a prefix for the keys for safety
+ var map = {}
+
+ // generic functional search of our registry for matching listeners,
+ // `fn` returns false to break out of the loop
+ , forAll = function (element, type, original, handler, fn) {
+ if (!type || type === '*') {
+ // search the whole registry
+ for (var t in map) {
+ if (t.charAt(0) === '$')
+ forAll(element, t.substr(1), original, handler, fn)
+ }
+ } else {
+ var i = 0, l, list = map['$' + type], all = element === '*'
+ if (!list)
+ return
+ for (l = list.length; i < l; i++) {
+ if (all || list[i].matches(element, original, handler))
+ if (!fn(list[i], list, i, type))
+ return
+ }
+ }
+ }
+
+ , has = function (element, type, original) {
+ // we're not using forAll here simply because it's a bit slower and this
+ // needs to be fast
+ var i, list = map['$' + type]
+ if (list) {
+ for (i = list.length; i--;) {
+ if (list[i].matches(element, original, null))
+ return true
+ }
+ }
+ return false
+ }
+
+ , get = function (element, type, original) {
+ var entries = []
+ forAll(element, type, original, null, function (entry) {
+ return entries.push(entry)
+ })
+ return entries
+ }
+
+ , put = function (entry) {
+ (map['$' + entry.type] || (map['$' + entry.type] = [])).push(entry)
+ return entry
+ }
+
+ , del = function (entry) {
+ forAll(entry.element, entry.type, null, entry.handler, function (entry, list, i) {
+ list.splice(i, 1)
+ if (list.length === 0)
+ delete map['$' + entry.type]
+ return false
+ })
+ }
// dump all entries, used for onunload
- , entries = function () {
- var t, entries = []
- for (t in map) {
- if (t.charAt(0) === '$')
- entries = entries.concat(map[t])
- }
- return entries
- }
-
- return { has: has, get: get, put: put, del: del, entries: entries }
- })()
-
- // add and remove listeners to DOM elements
- , listener = W3C_MODEL ? function (element, type, fn, add) {
- element[add ? addEvent : removeEvent](type, fn, false)
- } : function (element, type, fn, add, custom) {
- if (custom && add && element['_on' + custom] === null)
- element['_on' + custom] = 0
- element[add ? attachEvent : detachEvent]('on' + type, fn)
- }
-
- , nativeHandler = function (element, fn, args) {
- return function (event) {
- event = fixEvent(event || ((this.ownerDocument || this.document || this).parentWindow || win).event, true)
- return fn.apply(element, [event].concat(args))
- }
- }
-
- , customHandler = function (element, fn, type, condition, args, isNative) {
- return function (event) {
- if (condition ? condition.apply(this, arguments) : W3C_MODEL ? true : event && event.propertyName === '_on' + type || !event) {
- if (event)
- event = fixEvent(event || ((this.ownerDocument || this.document || this).parentWindow || win).event, isNative)
- fn.apply(element, event && (!args || args.length === 0) ? arguments : slice.call(arguments, event ? 0 : 1).concat(args))
- }
- }
- }
-
- , once = function (rm, element, type, fn, originalFn) {
- // wrap the handler in a handler that does a remove as well
- return function () {
- rm(element, type, originalFn)
- fn.apply(this, arguments)
- }
- }
-
- , removeListener = function (element, orgType, handler, namespaces) {
- var i, l, entry
- , type = (orgType && orgType.replace(nameRegex, ''))
- , handlers = registry.get(element, type, handler)
-
- for (i = 0, l = handlers.length; i < l; i++) {
- if (handlers[i].inNamespaces(namespaces)) {
- if ((entry = handlers[i]).eventSupport)
- listener(entry.target, entry.eventType, entry.handler, false, entry.type)
- // TODO: this is problematic, we have a registry.get() and registry.del() that
- // both do registry searches so we waste cycles doing this. Needs to be rolled into
- // a single registry.forAll(fn) that removes while finding, but the catch is that
- // we'll be splicing the arrays that we're iterating over. Needs extra tests to
- // make sure we don't screw it up. @rvagg
- registry.del(entry)
- }
- }
- }
-
- , addListener = function (element, orgType, fn, originalFn, args) {
- var entry
- , type = orgType.replace(nameRegex, '')
- , namespaces = orgType.replace(namespaceRegex, '').split('.')
-
- if (registry.has(element, type, fn))
- return element // no dupe
- if (type === 'unload')
- fn = once(removeListener, element, type, fn, originalFn) // self clean-up
- if (customEvents[type]) {
- if (customEvents[type].condition)
- fn = customHandler(element, fn, type, customEvents[type].condition, true)
- type = customEvents[type].base || type
- }
- entry = registry.put(new RegEntry(element, type, fn, originalFn, namespaces[0] && namespaces))
- entry.handler = entry.isNative ?
- nativeHandler(element, entry.handler, args) :
- customHandler(element, entry.handler, type, false, args, false)
- if (entry.eventSupport)
- listener(entry.target, entry.eventType, entry.handler, true, entry.customType)
- }
-
- , del = function (selector, fn, $) {
- return function (e) {
- var target, i, array = typeof selector === 'string' ? $(selector, this) : selector
- for (target = e.target; target && target !== this; target = target.parentNode) {
- for (i = array.length; i--;) {
- if (array[i] === target) {
- return fn.apply(target, arguments)
- }
- }
- }
- }
- }
-
- , remove = function (element, typeSpec, fn) {
- var k, m, type, namespaces, i
- , rm = removeListener
- , isString = typeSpec && typeof typeSpec === 'string'
-
- if (isString && typeSpec.indexOf(' ') > 0) {
- // remove(el, 't1 t2 t3', fn) or remove(el, 't1 t2 t3')
- typeSpec = typeSpec.split(' ')
- for (i = typeSpec.length; i--;)
- remove(element, typeSpec[i], fn)
- return element
- }
- type = isString && typeSpec.replace(nameRegex, '')
- if (type && customEvents[type])
- type = customEvents[type].type
- if (!typeSpec || isString) {
- // remove(el) or remove(el, t1.ns) or remove(el, .ns) or remove(el, .ns1.ns2.ns3)
- if (namespaces = isString && typeSpec.replace(namespaceRegex, ''))
- namespaces = namespaces.split('.')
- rm(element, type, fn, namespaces)
- } else if (typeof typeSpec === 'function') {
- // remove(el, fn)
- rm(element, null, typeSpec)
- } else {
- // remove(el, { t1: fn1, t2, fn2 })
- for (k in typeSpec) {
- if (typeSpec.hasOwnProperty(k))
- remove(element, k, typeSpec[k])
- }
- }
- return element
- }
-
- , add = function (element, events, fn, delfn, $) {
- var type, types, i, args
- , originalFn = fn
- , isDel = fn && typeof fn === 'string'
-
- if (events && !fn && typeof events === 'object') {
- for (type in events) {
- if (events.hasOwnProperty(type))
- add.apply(this, [ element, type, events[type] ])
- }
- } else {
- args = arguments.length > 3 ? slice.call(arguments, 3) : []
- types = (isDel ? fn : events).split(' ')
- isDel && (fn = del(events, (originalFn = delfn), $)) && (args = slice.call(args, 1))
- // special case for one()
- this === ONE && (fn = once(remove, element, events, fn, originalFn))
- for (i = types.length; i--;) addListener(element, types[i], fn, originalFn, args)
- }
- return element
- }
-
- , one = function () {
- return add.apply(ONE, arguments)
- }
-
- , fireListener = W3C_MODEL ? function (isNative, type, element) {
- var evt = doc.createEvent(isNative ? 'HTMLEvents' : 'UIEvents')
- evt[isNative ? 'initEvent' : 'initUIEvent'](type, true, true, win, 1)
- element.dispatchEvent(evt)
- } : function (isNative, type, element) {
- element = targetElement(element, isNative)
- // if not-native then we're using onpropertychange so we just increment a custom property
- isNative ? element.fireEvent('on' + type, doc.createEventObject()) : element['_on' + type]++
- }
-
- , fire = function (element, type, args) {
- var i, j, l, names, handlers
- , types = type.split(' ')
-
- for (i = types.length; i--;) {
- type = types[i].replace(nameRegex, '')
- if (names = types[i].replace(namespaceRegex, ''))
- names = names.split('.')
- if (!names && !args && element[eventSupport]) {
- fireListener(nativeEvents[type], type, element)
- } else {
- // non-native event, either because of a namespace, arguments or a non DOM element
- // iterate over all listeners and manually 'fire'
- handlers = registry.get(element, type)
- args = [false].concat(args)
- for (j = 0, l = handlers.length; j < l; j++) {
- if (handlers[j].inNamespaces(names))
- handlers[j].handler.apply(element, args)
- }
- }
- }
- return element
- }
-
- , clone = function (element, from, type) {
- var i = 0
- , handlers = registry.get(from, type)
- , l = handlers.length
-
- for (;i < l; i++)
- handlers[i].original && add(element, handlers[i].type, handlers[i].original)
- return element
- }
-
- , bean = {
- add: add
- , one: one
- , remove: remove
- , clone: clone
- , fire: fire
- , noConflict: function () {
- context[name] = old
- return this
- }
- }
-
- if (win[attachEvent]) {
- // for IE, clean up on unload to avoid leaks
- var cleanup = function () {
- var i, entries = registry.entries()
- for (i in entries) {
- if (entries[i].type && entries[i].type !== 'unload')
- remove(entries[i].element, entries[i].type)
- }
- win[detachEvent]('onunload', cleanup)
- win.CollectGarbage && win.CollectGarbage()
+ , entries = function () {
+ var t, entries = []
+ for (t in map) {
+ if (t.charAt(0) === '$')
+ entries = entries.concat(map[t])
+ }
+ return entries
+ }
+
+ return { has: has, get: get, put: put, del: del, entries: entries }
+ })()
+
+ // add and remove listeners to DOM elements
+ , listener = W3C_MODEL ? function (element, type, fn, add) {
+ element[add ? addEvent : removeEvent](type, fn, false)
+ } : function (element, type, fn, add, custom) {
+ if (custom && add && element['_on' + custom] === null)
+ element['_on' + custom] = 0
+ element[add ? attachEvent : detachEvent]('on' + type, fn)
+ }
+
+ , nativeHandler = function (element, fn, args) {
+ return function (event) {
+ event = fixEvent(event || ((this.ownerDocument || this.document || this).parentWindow || win).event, true)
+ return fn.apply(element, [event].concat(args))
+ }
+ }
+
+ , customHandler = function (element, fn, type, condition, args, isNative) {
+ return function (event) {
+ if (condition ? condition.apply(this, arguments) : W3C_MODEL ? true : event && event.propertyName === '_on' + type || !event) {
+ if (event)
+ event = fixEvent(event || ((this.ownerDocument || this.document || this).parentWindow || win).event, isNative)
+ fn.apply(element, event && (!args || args.length === 0) ? arguments : slice.call(arguments, event ? 0 : 1).concat(args))
+ }
+ }
+ }
+
+ , once = function (rm, element, type, fn, originalFn) {
+ // wrap the handler in a handler that does a remove as well
+ return function () {
+ rm(element, type, originalFn)
+ fn.apply(this, arguments)
+ }
+ }
+
+ , removeListener = function (element, orgType, handler, namespaces) {
+ var i, l, entry
+ , type = (orgType && orgType.replace(nameRegex, ''))
+ , handlers = registry.get(element, type, handler)
+
+ for (i = 0, l = handlers.length; i < l; i++) {
+ if (handlers[i].inNamespaces(namespaces)) {
+ if ((entry = handlers[i]).eventSupport)
+ listener(entry.target, entry.eventType, entry.handler, false, entry.type)
+ // TODO: this is problematic, we have a registry.get() and registry.del() that
+ // both do registry searches so we waste cycles doing this. Needs to be rolled into
+ // a single registry.forAll(fn) that removes while finding, but the catch is that
+ // we'll be splicing the arrays that we're iterating over. Needs extra tests to
+ // make sure we don't screw it up. @rvagg
+ registry.del(entry)
+ }
+ }
+ }
+
+ , addListener = function (element, orgType, fn, originalFn, args) {
+ var entry
+ , type = orgType.replace(nameRegex, '')
+ , namespaces = orgType.replace(namespaceRegex, '').split('.')
+
+ if (registry.has(element, type, fn))
+ return element // no dupe
+ if (type === 'unload')
+ fn = once(removeListener, element, type, fn, originalFn) // self clean-up
+ if (customEvents[type]) {
+ if (customEvents[type].condition)
+ fn = customHandler(element, fn, type, customEvents[type].condition, true)
+ type = customEvents[type].base || type
+ }
+ entry = registry.put(new RegEntry(element, type, fn, originalFn, namespaces[0] && namespaces))
+ entry.handler = entry.isNative ?
+ nativeHandler(element, entry.handler, args) :
+ customHandler(element, entry.handler, type, false, args, false)
+ if (entry.eventSupport)
+ listener(entry.target, entry.eventType, entry.handler, true, entry.customType)
+ }
+
+ , del = function (selector, fn, $) {
+ return function (e) {
+ var target, i, array = typeof selector === 'string' ? $(selector, this) : selector
+ for (target = e.target; target && target !== this; target = target.parentNode) {
+ for (i = array.length; i--;) {
+ if (array[i] === target) {
+ return fn.apply(target, arguments)
+ }
+ }
+ }
+ }
+ }
+
+ , remove = function (element, typeSpec, fn) {
+ var k, m, type, namespaces, i
+ , rm = removeListener
+ , isString = typeSpec && typeof typeSpec === 'string'
+
+ if (isString && typeSpec.indexOf(' ') > 0) {
+ // remove(el, 't1 t2 t3', fn) or remove(el, 't1 t2 t3')
+ typeSpec = typeSpec.split(' ')
+ for (i = typeSpec.length; i--;)
+ remove(element, typeSpec[i], fn)
+ return element
+ }
+ type = isString && typeSpec.replace(nameRegex, '')
+ if (type && customEvents[type])
+ type = customEvents[type].type
+ if (!typeSpec || isString) {
+ // remove(el) or remove(el, t1.ns) or remove(el, .ns) or remove(el, .ns1.ns2.ns3)
+ if (namespaces = isString && typeSpec.replace(namespaceRegex, ''))
+ namespaces = namespaces.split('.')
+ rm(element, type, fn, namespaces)
+ } else if (typeof typeSpec === 'function') {
+ // remove(el, fn)
+ rm(element, null, typeSpec)
+ } else {
+ // remove(el, { t1: fn1, t2, fn2 })
+ for (k in typeSpec) {
+ if (typeSpec.hasOwnProperty(k))
+ remove(element, k, typeSpec[k])
+ }
+ }
+ return element
+ }
+
+ , add = function (element, events, fn, delfn, $) {
+ var type, types, i, args
+ , originalFn = fn
+ , isDel = fn && typeof fn === 'string'
+
+ if (events && !fn && typeof events === 'object') {
+ for (type in events) {
+ if (events.hasOwnProperty(type))
+ add.apply(this, [ element, type, events[type] ])
+ }
+ } else {
+ args = arguments.length > 3 ? slice.call(arguments, 3) : []
+ types = (isDel ? fn : events).split(' ')
+ isDel && (fn = del(events, (originalFn = delfn), $)) && (args = slice.call(args, 1))
+ // special case for one()
+ this === ONE && (fn = once(remove, element, events, fn, originalFn))
+ for (i = types.length; i--;) addListener(element, types[i], fn, originalFn, args)
+ }
+ return element
+ }
+
+ , one = function () {
+ return add.apply(ONE, arguments)
+ }
+
+ , fireListener = W3C_MODEL ? function (isNative, type, element) {
+ var evt = doc.createEvent(isNative ? 'HTMLEvents' : 'UIEvents')
+ evt[isNative ? 'initEvent' : 'initUIEvent'](type, true, true, win, 1)
+ element.dispatchEvent(evt)
+ } : function (isNative, type, element) {
+ element = targetElement(element, isNative)
+ // if not-native then we're using onpropertychange so we just increment a custom property
+ isNative ? element.fireEvent('on' + type, doc.createEventObject()) : element['_on' + type]++
+ }
+
+ , fire = function (element, type, args) {
+ var i, j, l, names, handlers
+ , types = type.split(' ')
+
+ for (i = types.length; i--;) {
+ type = types[i].replace(nameRegex, '')
+ if (names = types[i].replace(namespaceRegex, ''))
+ names = names.split('.')
+ if (!names && !args && element[eventSupport]) {
+ fireListener(nativeEvents[type], type, element)
+ } else {
+ // non-native event, either because of a namespace, arguments or a non DOM element
+ // iterate over all listeners and manually 'fire'
+ handlers = registry.get(element, type)
+ args = [false].concat(args)
+ for (j = 0, l = handlers.length; j < l; j++) {
+ if (handlers[j].inNamespaces(names))
+ handlers[j].handler.apply(element, args)
+ }
+ }
+ }
+ return element
+ }
+
+ , clone = function (element, from, type) {
+ var i = 0
+ , handlers = registry.get(from, type)
+ , l = handlers.length
+
+ for (; i < l; i++)
+ handlers[i].original && add(element, handlers[i].type, handlers[i].original)
+ return element
+ }
+
+ , bean = {
+ add: add, one: one, remove: remove, clone: clone, fire: fire, noConflict: function () {
+ context[name] = old
+ return this
+ }
+ }
+
+ if (win[attachEvent]) {
+ // for IE, clean up on unload to avoid leaks
+ var cleanup = function () {
+ var i, entries = registry.entries()
+ for (i in entries) {
+ if (entries[i].type && entries[i].type !== 'unload')
+ remove(entries[i].element, entries[i].type)
+ }
+ win[detachEvent]('onunload', cleanup)
+ win.CollectGarbage && win.CollectGarbage()
+ }
+ win[attachEvent]('onunload', cleanup)
}
- win[attachEvent]('onunload', cleanup)
- }
-
- return bean
+
+ return bean
});
// Underscore.js 1.1.7
// (c) 2011 Jeremy Ashkenas, DocumentCloud Inc.
@@ -509,835 +504,851 @@
// For all details and documentation:
// http://documentcloud.github.com/underscore
-(function() {
-
- // Baseline setup
- // --------------
-
- // Establish the root object, `window` in the browser, or `global` on the server.
- var root = this;
-
- // Save the previous value of the `_` variable.
- var previousUnderscore = root._;
-
- // Establish the object that gets returned to break out of a loop iteration.
- var breaker = {};
-
- // Save bytes in the minified (but not gzipped) version:
- var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
-
- // Create quick reference variables for speed access to core prototypes.
- var slice = ArrayProto.slice,
- unshift = ArrayProto.unshift,
- toString = ObjProto.toString,
- hasOwnProperty = ObjProto.hasOwnProperty;
-
- // All **ECMAScript 5** native function implementations that we hope to use
- // are declared here.
- var
- nativeForEach = ArrayProto.forEach,
- nativeMap = ArrayProto.map,
- nativeReduce = ArrayProto.reduce,
- nativeReduceRight = ArrayProto.reduceRight,
- nativeFilter = ArrayProto.filter,
- nativeEvery = ArrayProto.every,
- nativeSome = ArrayProto.some,
- nativeIndexOf = ArrayProto.indexOf,
- nativeLastIndexOf = ArrayProto.lastIndexOf,
- nativeIsArray = Array.isArray,
- nativeKeys = Object.keys,
- nativeBind = FuncProto.bind;
-
- // Create a safe reference to the Underscore object for use below.
- var _ = function(obj) { return new wrapper(obj); };
-
- // Export the Underscore object for **CommonJS**, with backwards-compatibility
- // for the old `require()` API. If we're not in CommonJS, add `_` to the
- // global object.
- if (typeof module !== 'undefined' && module.exports) {
- module.exports = _;
- _._ = _;
- } else {
- // Exported as a string, for Closure Compiler "advanced" mode.
- root['_'] = _;
- }
-
- // Current version.
- _.VERSION = '1.1.7';
-
- // Collection Functions
- // --------------------
-
- // The cornerstone, an `each` implementation, aka `forEach`.
- // Handles objects with the built-in `forEach`, arrays, and raw objects.
- // Delegates to **ECMAScript 5**'s native `forEach` if available.
- var each = _.each = _.forEach = function(obj, iterator, context) {
- if (obj == null) return;
- if (nativeForEach && obj.forEach === nativeForEach) {
- obj.forEach(iterator, context);
- } else if (obj.length === +obj.length) {
- for (var i = 0, l = obj.length; i < l; i++) {
- if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) return;
- }
+(function () {
+
+ // Baseline setup
+ // --------------
+
+ // Establish the root object, `window` in the browser, or `global` on the server.
+ var root = this;
+
+ // Save the previous value of the `_` variable.
+ var previousUnderscore = root._;
+
+ // Establish the object that gets returned to break out of a loop iteration.
+ var breaker = {};
+
+ // Save bytes in the minified (but not gzipped) version:
+ var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
+
+ // Create quick reference variables for speed access to core prototypes.
+ var slice = ArrayProto.slice,
+ unshift = ArrayProto.unshift,
+ toString = ObjProto.toString,
+ hasOwnProperty = ObjProto.hasOwnProperty;
+
+ // All **ECMAScript 5** native function implementations that we hope to use
+ // are declared here.
+ var
+ nativeForEach = ArrayProto.forEach,
+ nativeMap = ArrayProto.map,
+ nativeReduce = ArrayProto.reduce,
+ nativeReduceRight = ArrayProto.reduceRight,
+ nativeFilter = ArrayProto.filter,
+ nativeEvery = ArrayProto.every,
+ nativeSome = ArrayProto.some,
+ nativeIndexOf = ArrayProto.indexOf,
+ nativeLastIndexOf = ArrayProto.lastIndexOf,
+ nativeIsArray = Array.isArray,
+ nativeKeys = Object.keys,
+ nativeBind = FuncProto.bind;
+
+ // Create a safe reference to the Underscore object for use below.
+ var _ = function (obj) {
+ return new wrapper(obj);
+ };
+
+ // Export the Underscore object for **CommonJS**, with backwards-compatibility
+ // for the old `require()` API. If we're not in CommonJS, add `_` to the
+ // global object.
+ if (typeof module !== 'undefined' && module.exports) {
+ module.exports = _;
+ _._ = _;
} else {
- for (var key in obj) {
- if (hasOwnProperty.call(obj, key)) {
- if (iterator.call(context, obj[key], key, obj) === breaker) return;
- }
- }
+ // Exported as a string, for Closure Compiler "advanced" mode.
+ root['_'] = _;
}
- };
-
- // Return the results of applying the iterator to each element.
- // Delegates to **ECMAScript 5**'s native `map` if available.
- _.map = function(obj, iterator, context) {
- var results = [];
- if (obj == null) return results;
- if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);
- each(obj, function(value, index, list) {
- results[results.length] = iterator.call(context, value, index, list);
+
+ // Current version.
+ _.VERSION = '1.1.7';
+
+ // Collection Functions
+ // --------------------
+
+ // The cornerstone, an `each` implementation, aka `forEach`.
+ // Handles objects with the built-in `forEach`, arrays, and raw objects.
+ // Delegates to **ECMAScript 5**'s native `forEach` if available.
+ var each = _.each = _.forEach = function (obj, iterator, context) {
+ if (obj == null) return;
+ if (nativeForEach && obj.forEach === nativeForEach) {
+ obj.forEach(iterator, context);
+ } else if (obj.length === +obj.length) {
+ for (var i = 0, l = obj.length; i < l; i++) {
+ if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) return;
+ }
+ } else {
+ for (var key in obj) {
+ if (hasOwnProperty.call(obj, key)) {
+ if (iterator.call(context, obj[key], key, obj) === breaker) return;
+ }
+ }
+ }
+ };
+
+ // Return the results of applying the iterator to each element.
+ // Delegates to **ECMAScript 5**'s native `map` if available.
+ _.map = function (obj, iterator, context) {
+ var results = [];
+ if (obj == null) return results;
+ if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);
+ each(obj, function (value, index, list) {
+ results[results.length] = iterator.call(context, value, index, list);
+ });
+ return results;
+ };
+
+ // **Reduce** builds up a single result from a list of values, aka `inject`,
+ // or `foldl`. Delegates to **ECMAScript 5**'s native `reduce` if available.
+ _.reduce = _.foldl = _.inject = function (obj, iterator, memo, context) {
+ var initial = memo !== void 0;
+ if (obj == null) obj = [];
+ if (nativeReduce && obj.reduce === nativeReduce) {
+ if (context) iterator = _.bind(iterator, context);
+ return initial ? obj.reduce(iterator, memo) : obj.reduce(iterator);
+ }
+ each(obj, function (value, index, list) {
+ if (!initial) {
+ memo = value;
+ initial = true;
+ } else {
+ memo = iterator.call(context, memo, value, index, list);
+ }
+ });
+ if (!initial) throw new TypeError("Reduce of empty array with no initial value");
+ return memo;
+ };
+
+ // The right-associative version of reduce, also known as `foldr`.
+ // Delegates to **ECMAScript 5**'s native `reduceRight` if available.
+ _.reduceRight = _.foldr = function (obj, iterator, memo, context) {
+ if (obj == null) obj = [];
+ if (nativeReduceRight && obj.reduceRight === nativeReduceRight) {
+ if (context) iterator = _.bind(iterator, context);
+ return memo !== void 0 ? obj.reduceRight(iterator, memo) : obj.reduceRight(iterator);
+ }
+ var reversed = (_.isArray(obj) ? obj.slice() : _.toArray(obj)).reverse();
+ return _.reduce(reversed, iterator, memo, context);
+ };
+
+ // Return the first value which passes a truth test. Aliased as `detect`.
+ _.find = _.detect = function (obj, iterator, context) {
+ var result;
+ any(obj, function (value, index, list) {
+ if (iterator.call(context, value, index, list)) {
+ result = value;
+ return true;
+ }
+ });
+ return result;
+ };
+
+ // Return all the elements that pass a truth test.
+ // Delegates to **ECMAScript 5**'s native `filter` if available.
+ // Aliased as `select`.
+ _.filter = _.select = function (obj, iterator, context) {
+ var results = [];
+ if (obj == null) return results;
+ if (nativeFilter && obj.filter === nativeFilter) return obj.filter(iterator, context);
+ each(obj, function (value, index, list) {
+ if (iterator.call(context, value, index, list)) results[results.length] = value;
+ });
+ return results;
+ };
+
+ // Return all the elements for which a truth test fails.
+ _.reject = function (obj, iterator, context) {
+ var results = [];
+ if (obj == null) return results;
+ each(obj, function (value, index, list) {
+ if (!iterator.call(context, value, index, list)) results[results.length] = value;
+ });
+ return results;
+ };
+
+ // Determine whether all of the elements match a truth test.
+ // Delegates to **ECMAScript 5**'s native `every` if available.
+ // Aliased as `all`.
+ _.every = _.all = function (obj, iterator, context) {
+ var result = true;
+ if (obj == null) return result;
+ if (nativeEvery && obj.every === nativeEvery) return obj.every(iterator, context);
+ each(obj, function (value, index, list) {
+ if (!(result = result && iterator.call(context, value, index, list))) return breaker;
+ });
+ return result;
+ };
+
+ // Determine if at least one element in the object matches a truth test.
+ // Delegates to **ECMAScript 5**'s native `some` if available.
+ // Aliased as `any`.
+ var any = _.some = _.any = function (obj, iterator, context) {
+ iterator = iterator || _.identity;
+ var result = false;
+ if (obj == null) return result;
+ if (nativeSome && obj.some === nativeSome) return obj.some(iterator, context);
+ each(obj, function (value, index, list) {
+ if (result |= iterator.call(context, value, index, list)) return breaker;
+ });
+ return !!result;
+ };
+
+ // Determine if a given value is included in the array or object using `===`.
+ // Aliased as `contains`.
+ _.include = _.contains = function (obj, target) {
+ var found = false;
+ if (obj == null) return found;
+ if (nativeIndexOf && obj.indexOf === nativeIndexOf) return obj.indexOf(target) != -1;
+ any(obj, function (value) {
+ if (found = value === target) return true;
+ });
+ return found;
+ };
+
+ // Invoke a method (with arguments) on every item in a collection.
+ _.invoke = function (obj, method) {
+ var args = slice.call(arguments, 2);
+ return _.map(obj, function (value) {
+ return (method.call ? method || value : value[method]).apply(value, args);
+ });
+ };
+
+ // Convenience version of a common use case of `map`: fetching a property.
+ _.pluck = function (obj, key) {
+ return _.map(obj, function (value) {
+ return value[key];
+ });
+ };
+
+ // Return the maximum element or (element-based computation).
+ _.max = function (obj, iterator, context) {
+ if (!iterator && _.isArray(obj)) return Math.max.apply(Math, obj);
+ var result = {computed: -Infinity};
+ each(obj, function (value, index, list) {
+ var computed = iterator ? iterator.call(context, value, index, list) : value;
+ computed >= result.computed && (result = {value: value, computed: computed});
+ });
+ return result.value;
+ };
+
+ // Return the minimum element (or element-based computation).
+ _.min = function (obj, iterator, context) {
+ if (!iterator && _.isArray(obj)) return Math.min.apply(Math, obj);
+ var result = {computed: Infinity};
+ each(obj, function (value, index, list) {
+ var computed = iterator ? iterator.call(context, value, index, list) : value;
+ computed < result.computed && (result = {value: value, computed: computed});
+ });
+ return result.value;
+ };
+
+ // Sort the object's values by a criterion produced by an iterator.
+ _.sortBy = function (obj, iterator, context) {
+ return _.pluck(_.map(obj,function (value, index, list) {
+ return {
+ value: value,
+ criteria: iterator.call(context, value, index, list)
+ };
+ }).sort(function (left, right) {
+ var a = left.criteria, b = right.criteria;
+ return a < b ? -1 : a > b ? 1 : 0;
+ }), 'value');
+ };
+
+ // Groups the object's values by a criterion produced by an iterator
+ _.groupBy = function (obj, iterator) {
+ var result = {};
+ each(obj, function (value, index) {
+ var key = iterator(value, index);
+ (result[key] || (result[key] = [])).push(value);
+ });
+ return result;
+ };
+
+ // Use a comparator function to figure out at what index an object should
+ // be inserted so as to maintain order. Uses binary search.
+ _.sortedIndex = function (array, obj, iterator) {
+ iterator || (iterator = _.identity);
+ var low = 0, high = array.length;
+ while (low < high) {
+ var mid = (low + high) >> 1;
+ iterator(array[mid]) < iterator(obj) ? low = mid + 1 : high = mid;
+ }
+ return low;
+ };
+
+ // Safely convert anything iterable into a real, live array.
+ _.toArray = function (iterable) {
+ if (!iterable) return [];
+ if (iterable.toArray) return iterable.toArray();
+ if (_.isArray(iterable)) return slice.call(iterable);
+ if (_.isArguments(iterable)) return slice.call(iterable);
+ return _.values(iterable);
+ };
+
+ // Return the number of elements in an object.
+ _.size = function (obj) {
+ return _.toArray(obj).length;
+ };
+
+ // Array Functions
+ // ---------------
+
+ // Get the first element of an array. Passing **n** will return the first N
+ // values in the array. Aliased as `head`. The **guard** check allows it to work
+ // with `_.map`.
+ _.first = _.head = function (array, n, guard) {
+ return (n != null) && !guard ? slice.call(array, 0, n) : array[0];
+ };
+
+ // Returns everything but the first entry of the array. Aliased as `tail`.
+ // Especially useful on the arguments object. Passing an **index** will return
+ // the rest of the values in the array from that index onward. The **guard**
+ // check allows it to work with `_.map`.
+ _.rest = _.tail = function (array, index, guard) {
+ return slice.call(array, (index == null) || guard ? 1 : index);
+ };
+
+ // Get the last element of an array.
+ _.last = function (array) {
+ return array[array.length - 1];
+ };
+
+ // Trim out all falsy values from an array.
+ _.compact = function (array) {
+ return _.filter(array, function (value) {
+ return !!value;
+ });
+ };
+
+ // Return a completely flattened version of an array.
+ _.flatten = function (array) {
+ return _.reduce(array, function (memo, value) {
+ if (_.isArray(value)) return memo.concat(_.flatten(value));
+ memo[memo.length] = value;
+ return memo;
+ }, []);
+ };
+
+ // Return a version of the array that does not contain the specified value(s).
+ _.without = function (array) {
+ return _.difference(array, slice.call(arguments, 1));
+ };
+
+ // Produce a duplicate-free version of the array. If the array has already
+ // been sorted, you have the option of using a faster algorithm.
+ // Aliased as `unique`.
+ _.uniq = _.unique = function (array, isSorted) {
+ return _.reduce(array, function (memo, el, i) {
+ if (0 == i || (isSorted === true ? _.last(memo) != el : !_.include(memo, el))) memo[memo.length] = el;
+ return memo;
+ }, []);
+ };
+
+ // Produce an array that contains the union: each distinct element from all of
+ // the passed-in arrays.
+ _.union = function () {
+ return _.uniq(_.flatten(arguments));
+ };
+
+ // Produce an array that contains every item shared between all the
+ // passed-in arrays. (Aliased as "intersect" for back-compat.)
+ _.intersection = _.intersect = function (array) {
+ var rest = slice.call(arguments, 1);
+ return _.filter(_.uniq(array), function (item) {
+ return _.every(rest, function (other) {
+ return _.indexOf(other, item) >= 0;
+ });
+ });
+ };
+
+ // Take the difference between one array and another.
+ // Only the elements present in just the first array will remain.
+ _.difference = function (array, other) {
+ return _.filter(array, function (value) {
+ return !_.include(other, value);
+ });
+ };
+
+ // Zip together multiple lists into a single array -- elements that share
+ // an index go together.
+ _.zip = function () {
+ var args = slice.call(arguments);
+ var length = _.max(_.pluck(args, 'length'));
+ var results = new Array(length);
+ for (var i = 0; i < length; i++) results[i] = _.pluck(args, "" + i);
+ return results;
+ };
+
+ // If the browser doesn't supply us with indexOf (I'm looking at you, **MSIE**),
+ // we need this function. Return the position of the first occurrence of an
+ // item in an array, or -1 if the item is not included in the array.
+ // Delegates to **ECMAScript 5**'s native `indexOf` if available.
+ // If the array is large and already in sort order, pass `true`
+ // for **isSorted** to use binary search.
+ _.indexOf = function (array, item, isSorted) {
+ if (array == null) return -1;
+ var i, l;
+ if (isSorted) {
+ i = _.sortedIndex(array, item);
+ return array[i] === item ? i : -1;
+ }
+ if (nativeIndexOf && array.indexOf === nativeIndexOf) return array.indexOf(item);
+ for (i = 0, l = array.length; i < l; i++) if (array[i] === item) return i;
+ return -1;
+ };
+
+
+ // Delegates to **ECMAScript 5**'s native `lastIndexOf` if available.
+ _.lastIndexOf = function (array, item) {
+ if (array == null) return -1;
+ if (nativeLastIndexOf && array.lastIndexOf === nativeLastIndexOf) return array.lastIndexOf(item);
+ var i = array.length;
+ while (i--) if (array[i] === item) return i;
+ return -1;
+ };
+
+ // Generate an integer Array containing an arithmetic progression. A port of
+ // the native Python `range()` function. See
+ // [the Python documentation](http://docs.python.org/library/functions.html#range).
+ _.range = function (start, stop, step) {
+ if (arguments.length <= 1) {
+ stop = start || 0;
+ start = 0;
+ }
+ step = arguments[2] || 1;
+
+ var len = Math.max(Math.ceil((stop - start) / step), 0);
+ var idx = 0;
+ var range = new Array(len);
+
+ while (idx < len) {
+ range[idx++] = start;
+ start += step;
+ }
+
+ return range;
+ };
+
+ // Function (ahem) Functions
+ // ------------------
+
+ // Create a function bound to a given object (assigning `this`, and arguments,
+ // optionally). Binding with arguments is also known as `curry`.
+ // Delegates to **ECMAScript 5**'s native `Function.bind` if available.
+ // We check for `func.bind` first, to fail fast when `func` is undefined.
+ _.bind = function (func, obj) {
+ if (func.bind === nativeBind && nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));
+ var args = slice.call(arguments, 2);
+ return function () {
+ return func.apply(obj, args.concat(slice.call(arguments)));
+ };
+ };
+
+ // Bind all of an object's methods to that object. Useful for ensuring that
+ // all callbacks defined on an object belong to it.
+ _.bindAll = function (obj) {
+ var funcs = slice.call(arguments, 1);
+ if (funcs.length == 0) funcs = _.functions(obj);
+ each(funcs, function (f) {
+ obj[f] = _.bind(obj[f], obj);
+ });
+ return obj;
+ };
+
+ // Memoize an expensive function by storing its results.
+ _.memoize = function (func, hasher) {
+ var memo = {};
+ hasher || (hasher = _.identity);
+ return function () {
+ var key = hasher.apply(this, arguments);
+ return hasOwnProperty.call(memo, key) ? memo[key] : (memo[key] = func.apply(this, arguments));
+ };
+ };
+
+ // Delays a function for the given number of milliseconds, and then calls
+ // it with the arguments supplied.
+ _.delay = function (func, wait) {
+ var args = slice.call(arguments, 2);
+ return setTimeout(function () {
+ return func.apply(func, args);
+ }, wait);
+ };
+
+ // Defers a function, scheduling it to run after the current call stack has
+ // cleared.
+ _.defer = function (func) {
+ return _.delay.apply(_, [func, 1].concat(slice.call(arguments, 1)));
+ };
+
+ // Internal function used to implement `_.throttle` and `_.debounce`.
+ var limit = function (func, wait, debounce) {
+ var timeout;
+ return function () {
+ var context = this, args = arguments;
+ var throttler = function () {
+ timeout = null;
+ func.apply(context, args);
+ };
+ if (debounce) clearTimeout(timeout);
+ if (debounce || !timeout) timeout = setTimeout(throttler, wait);
+ };
+ };
+
+ // Returns a function, that, when invoked, will only be triggered at most once
+ // during a given window of time.
+ _.throttle = function (func, wait) {
+ return limit(func, wait, false);
+ };
+
+ // Returns a function, that, as long as it continues to be invoked, will not
+ // be triggered. The function will be called after it stops being called for
+ // N milliseconds.
+ _.debounce = function (func, wait) {
+ return limit(func, wait, true);
+ };
+
+ // Returns a function that will be executed at most one time, no matter how
+ // often you call it. Useful for lazy initialization.
+ _.once = function (func) {
+ var ran = false, memo;
+ return function () {
+ if (ran) return memo;
+ ran = true;
+ return memo = func.apply(this, arguments);
+ };
+ };
+
+ // Returns the first function passed as an argument to the second,
+ // allowing you to adjust arguments, run code before and after, and
+ // conditionally execute the original function.
+ _.wrap = function (func, wrapper) {
+ return function () {
+ var args = [func].concat(slice.call(arguments));
+ return wrapper.apply(this, args);
+ };
+ };
+
+ // Returns a function that is the composition of a list of functions, each
+ // consuming the return value of the function that follows.
+ _.compose = function () {
+ var funcs = slice.call(arguments);
+ return function () {
+ var args = slice.call(arguments);
+ for (var i = funcs.length - 1; i >= 0; i--) {
+ args = [funcs[i].apply(this, args)];
+ }
+ return args[0];
+ };
+ };
+
+ // Returns a function that will only be executed after being called N times.
+ _.after = function (times, func) {
+ return function () {
+ if (--times < 1) {
+ return func.apply(this, arguments);
+ }
+ };
+ };
+
+
+ // Object Functions
+ // ----------------
+
+ // Retrieve the names of an object's properties.
+ // Delegates to **ECMAScript 5**'s native `Object.keys`
+ _.keys = nativeKeys || function (obj) {
+ if (obj !== Object(obj)) throw new TypeError('Invalid object');
+ var keys = [];
+ for (var key in obj) if (hasOwnProperty.call(obj, key)) keys[keys.length] = key;
+ return keys;
+ };
+
+ // Retrieve the values of an object's properties.
+ _.values = function (obj) {
+ return _.map(obj, _.identity);
+ };
+
+ // Return a sorted list of the function names available on the object.
+ // Aliased as `methods`
+ _.functions = _.methods = function (obj) {
+ var names = [];
+ for (var key in obj) {
+ if (_.isFunction(obj[key])) names.push(key);
+ }
+ return names.sort();
+ };
+
+ // Extend a given object with all the properties in passed-in object(s).
+ _.extend = function (obj) {
+ each(slice.call(arguments, 1), function (source) {
+ for (var prop in source) {
+ if (source[prop] !== void 0) obj[prop] = source[prop];
+ }
+ });
+ return obj;
+ };
+
+ // Fill in a given object with default properties.
+ _.defaults = function (obj) {
+ each(slice.call(arguments, 1), function (source) {
+ for (var prop in source) {
+ if (obj[prop] == null) obj[prop] = source[prop];
+ }
+ });
+ return obj;
+ };
+
+ // Create a (shallow-cloned) duplicate of an object.
+ _.clone = function (obj) {
+ return _.isArray(obj) ? obj.slice() : _.extend({}, obj);
+ };
+
+ // Invokes interceptor with the obj, and then returns obj.
+ // The primary purpose of this method is to "tap into" a method chain, in
+ // order to perform operations on intermediate results within the chain.
+ _.tap = function (obj, interceptor) {
+ interceptor(obj);
+ return obj;
+ };
+
+ // Perform a deep comparison to check if two objects are equal.
+ _.isEqual = function (a, b) {
+ // Check object identity.
+ if (a === b) return true;
+ // Different types?
+ var atype = typeof(a), btype = typeof(b);
+ if (atype != btype) return false;
+ // Basic equality test (watch out for coercions).
+ if (a == b) return true;
+ // One is falsy and the other truthy.
+ if ((!a && b) || (a && !b)) return false;
+ // Unwrap any wrapped objects.
+ if (a._chain) a = a._wrapped;
+ if (b._chain) b = b._wrapped;
+ // One of them implements an isEqual()?
+ if (a.isEqual) return a.isEqual(b);
+ if (b.isEqual) return b.isEqual(a);
+ // Check dates' integer values.
+ if (_.isDate(a) && _.isDate(b)) return a.getTime() === b.getTime();
+ // Both are NaN?
+ if (_.isNaN(a) && _.isNaN(b)) return false;
+ // Compare regular expressions.
+ if (_.isRegExp(a) && _.isRegExp(b))
+ return a.source === b.source &&
+ a.global === b.global &&
+ a.ignoreCase === b.ignoreCase &&
+ a.multiline === b.multiline;
+ // If a is not an object by this point, we can't handle it.
+ if (atype !== 'object') return false;
+ // Check for different array lengths before comparing contents.
+ if (a.length && (a.length !== b.length)) return false;
+ // Nothing else worked, deep compare the contents.
+ var aKeys = _.keys(a), bKeys = _.keys(b);
+ // Different object sizes?
+ if (aKeys.length != bKeys.length) return false;
+ // Recursive comparison of contents.
+ for (var key in a) if (!(key in b) || !_.isEqual(a[key], b[key])) return false;
+ return true;
+ };
+
+ // Is a given array or object empty?
+ _.isEmpty = function (obj) {
+ if (_.isArray(obj) || _.isString(obj)) return obj.length === 0;
+ for (var key in obj) if (hasOwnProperty.call(obj, key)) return false;
+ return true;
+ };
+
+ // Is a given value a DOM element?
+ _.isElement = function (obj) {
+ return !!(obj && obj.nodeType == 1);
+ };
+
+ // Is a given value an array?
+ // Delegates to ECMA5's native Array.isArray
+ _.isArray = nativeIsArray || function (obj) {
+ return toString.call(obj) === '[object Array]';
+ };
+
+ // Is a given variable an object?
+ _.isObject = function (obj) {
+ return obj === Object(obj);
+ };
+
+ // Is a given variable an arguments object?
+ _.isArguments = function (obj) {
+ return !!(obj && hasOwnProperty.call(obj, 'callee'));
+ };
+
+ // Is a given value a function?
+ _.isFunction = function (obj) {
+ return !!(obj && obj.constructor && obj.call && obj.apply);
+ };
+
+ // Is a given value a string?
+ _.isString = function (obj) {
+ return !!(obj === '' || (obj && obj.charCodeAt && obj.substr));
+ };
+
+ // Is a given value a number?
+ _.isNumber = function (obj) {
+ return !!(obj === 0 || (obj && obj.toExponential && obj.toFixed));
+ };
+
+ // Is the given value `NaN`? `NaN` happens to be the only value in JavaScript
+ // that does not equal itself.
+ _.isNaN = function (obj) {
+ return obj !== obj;
+ };
+
+ // Is a given value a boolean?
+ _.isBoolean = function (obj) {
+ return obj === true || obj === false;
+ };
+
+ // Is a given value a date?
+ _.isDate = function (obj) {
+ return !!(obj && obj.getTimezoneOffset && obj.setUTCFullYear);
+ };
+
+ // Is the given value a regular expression?
+ _.isRegExp = function (obj) {
+ return !!(obj && obj.test && obj.exec && (obj.ignoreCase || obj.ignoreCase === false));
+ };
+
+ // Is a given value equal to null?
+ _.isNull = function (obj) {
+ return obj === null;
+ };
+
+ // Is a given variable undefined?
+ _.isUndefined = function (obj) {
+ return obj === void 0;
+ };
+
+ // Utility Functions
+ // -----------------
+
+ // Run Underscore.js in *noConflict* mode, returning the `_` variable to its
+ // previous owner. Returns a reference to the Underscore object.
+ _.noConflict = function () {
+ root._ = previousUnderscore;
+ return this;
+ };
+
+ // Keep the identity function around for default iterators.
+ _.identity = function (value) {
+ return value;
+ };
+
+ // Run a function **n** times.
+ _.times = function (n, iterator, context) {
+ for (var i = 0; i < n; i++) iterator.call(context, i);
+ };
+
+ // Add your own custom functions to the Underscore object, ensuring that
+ // they're correctly added to the OOP wrapper as well.
+ _.mixin = function (obj) {
+ each(_.functions(obj), function (name) {
+ addToWrapper(name, _[name] = obj[name]);
+ });
+ };
+
+ // Generate a unique integer id (unique within the entire client session).
+ // Useful for temporary DOM ids.
+ var idCounter = 0;
+ _.uniqueId = function (prefix) {
+ var id = idCounter++;
+ return prefix ? prefix + id : id;
+ };
+
+ // By default, Underscore uses ERB-style template delimiters, change the
+ // following template settings to use alternative delimiters.
+ _.templateSettings = {
+ evaluate: /<%([\s\S]+?)%>/g,
+ interpolate: /<%=([\s\S]+?)%>/g
+ };
+
+ // JavaScript micro-templating, similar to John Resig's implementation.
+ // Underscore templating handles arbitrary delimiters, preserves whitespace,
+ // and correctly escapes quotes within interpolated code.
+ _.template = function (str, data) {
+ var c = _.templateSettings;
+ var tmpl = 'var __p=[],print=function(){__p.push.apply(__p,arguments);};' +
+ 'with(obj||{}){__p.push(\'' +
+ str.replace(/\\/g, '\\\\')
+ .replace(/'/g, "\\'")
+ .replace(c.interpolate, function (match, code) {
+ return "'," + code.replace(/\\'/g, "'") + ",'";
+ })
+ .replace(c.evaluate || null, function (match, code) {
+ return "');" + code.replace(/\\'/g, "'")
+ .replace(/[\r\n\t]/g, ' ') + "__p.push('";
+ })
+ .replace(/\r/g, '\\r')
+ .replace(/\n/g, '\\n')
+ .replace(/\t/g, '\\t')
+ + "');}return __p.join('');";
+ var func = new Function('obj', tmpl);
+ return data ? func(data) : func;
+ };
+
+ // The OOP Wrapper
+ // ---------------
+
+ // If Underscore is called as a function, it returns a wrapped object that
+ // can be used OO-style. This wrapper holds altered versions of all the
+ // underscore functions. Wrapped objects may be chained.
+ var wrapper = function (obj) {
+ this._wrapped = obj;
+ };
+
+ // Expose `wrapper.prototype` as `_.prototype`
+ _.prototype = wrapper.prototype;
+
+ // Helper function to continue chaining intermediate results.
+ var result = function (obj, chain) {
+ return chain ? _(obj).chain() : obj;
+ };
+
+ // A method to easily add functions to the OOP wrapper.
+ var addToWrapper = function (name, func) {
+ wrapper.prototype[name] = function () {
+ var args = slice.call(arguments);
+ unshift.call(args, this._wrapped);
+ return result(func.apply(_, args), this._chain);
+ };
+ };
+
+ // Add all of the Underscore functions to the wrapper object.
+ _.mixin(_);
+
+ // Add all mutator Array functions to the wrapper.
+ each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function (name) {
+ var method = ArrayProto[name];
+ wrapper.prototype[name] = function () {
+ method.apply(this._wrapped, arguments);
+ return result(this._wrapped, this._chain);
+ };
});
- return results;
- };
-
- // **Reduce** builds up a single result from a list of values, aka `inject`,
- // or `foldl`. Delegates to **ECMAScript 5**'s native `reduce` if available.
- _.reduce = _.foldl = _.inject = function(obj, iterator, memo, context) {
- var initial = memo !== void 0;
- if (obj == null) obj = [];
- if (nativeReduce && obj.reduce === nativeReduce) {
- if (context) iterator = _.bind(iterator, context);
- return initial ? obj.reduce(iterator, memo) : obj.reduce(iterator);
- }
- each(obj, function(value, index, list) {
- if (!initial) {
- memo = value;
- initial = true;
- } else {
- memo = iterator.call(context, memo, value, index, list);
- }
+
+ // Add all accessor Array functions to the wrapper.
+ each(['concat', 'join', 'slice'], function (name) {
+ var method = ArrayProto[name];
+ wrapper.prototype[name] = function () {
+ return result(method.apply(this._wrapped, arguments), this._chain);
+ };
});
- if (!initial) throw new TypeError("Reduce of empty array with no initial value");
- return memo;
- };
-
- // The right-associative version of reduce, also known as `foldr`.
- // Delegates to **ECMAScript 5**'s native `reduceRight` if available.
- _.reduceRight = _.foldr = function(obj, iterator, memo, context) {
- if (obj == null) obj = [];
- if (nativeReduceRight && obj.reduceRight === nativeReduceRight) {
- if (context) iterator = _.bind(iterator, context);
- return memo !== void 0 ? obj.reduceRight(iterator, memo) : obj.reduceRight(iterator);
- }
- var reversed = (_.isArray(obj) ? obj.slice() : _.toArray(obj)).reverse();
- return _.reduce(reversed, iterator, memo, context);
- };
-
- // Return the first value which passes a truth test. Aliased as `detect`.
- _.find = _.detect = function(obj, iterator, context) {
- var result;
- any(obj, function(value, index, list) {
- if (iterator.call(context, value, index, list)) {
- result = value;
- return true;
- }
- });
- return result;
- };
-
- // Return all the elements that pass a truth test.
- // Delegates to **ECMAScript 5**'s native `filter` if available.
- // Aliased as `select`.
- _.filter = _.select = function(obj, iterator, context) {
- var results = [];
- if (obj == null) return results;
- if (nativeFilter && obj.filter === nativeFilter) return obj.filter(iterator, context);
- each(obj, function(value, index, list) {
- if (iterator.call(context, value, index, list)) results[results.length] = value;
- });
- return results;
- };
-
- // Return all the elements for which a truth test fails.
- _.reject = function(obj, iterator, context) {
- var results = [];
- if (obj == null) return results;
- each(obj, function(value, index, list) {
- if (!iterator.call(context, value, index, list)) results[results.length] = value;
- });
- return results;
- };
-
- // Determine whether all of the elements match a truth test.
- // Delegates to **ECMAScript 5**'s native `every` if available.
- // Aliased as `all`.
- _.every = _.all = function(obj, iterator, context) {
- var result = true;
- if (obj == null) return result;
- if (nativeEvery && obj.every === nativeEvery) return obj.every(iterator, context);
- each(obj, function(value, index, list) {
- if (!(result = result && iterator.call(context, value, index, list))) return breaker;
- });
- return result;
- };
-
- // Determine if at least one element in the object matches a truth test.
- // Delegates to **ECMAScript 5**'s native `some` if available.
- // Aliased as `any`.
- var any = _.some = _.any = function(obj, iterator, context) {
- iterator = iterator || _.identity;
- var result = false;
- if (obj == null) return result;
- if (nativeSome && obj.some === nativeSome) return obj.some(iterator, context);
- each(obj, function(value, index, list) {
- if (result |= iterator.call(context, value, index, list)) return breaker;
- });
- return !!result;
- };
-
- // Determine if a given value is included in the array or object using `===`.
- // Aliased as `contains`.
- _.include = _.contains = function(obj, target) {
- var found = false;
- if (obj == null) return found;
- if (nativeIndexOf && obj.indexOf === nativeIndexOf) return obj.indexOf(target) != -1;
- any(obj, function(value) {
- if (found = value === target) return true;
- });
- return found;
- };
-
- // Invoke a method (with arguments) on every item in a collection.
- _.invoke = function(obj, method) {
- var args = slice.call(arguments, 2);
- return _.map(obj, function(value) {
- return (method.call ? method || value : value[method]).apply(value, args);
- });
- };
-
- // Convenience version of a common use case of `map`: fetching a property.
- _.pluck = function(obj, key) {
- return _.map(obj, function(value){ return value[key]; });
- };
-
- // Return the maximum element or (element-based computation).
- _.max = function(obj, iterator, context) {
- if (!iterator && _.isArray(obj)) return Math.max.apply(Math, obj);
- var result = {computed : -Infinity};
- each(obj, function(value, index, list) {
- var computed = iterator ? iterator.call(context, value, index, list) : value;
- computed >= result.computed && (result = {value : value, computed : computed});
- });
- return result.value;
- };
-
- // Return the minimum element (or element-based computation).
- _.min = function(obj, iterator, context) {
- if (!iterator && _.isArray(obj)) return Math.min.apply(Math, obj);
- var result = {computed : Infinity};
- each(obj, function(value, index, list) {
- var computed = iterator ? iterator.call(context, value, index, list) : value;
- computed < result.computed && (result = {value : value, computed : computed});
- });
- return result.value;
- };
-
- // Sort the object's values by a criterion produced by an iterator.
- _.sortBy = function(obj, iterator, context) {
- return _.pluck(_.map(obj, function(value, index, list) {
- return {
- value : value,
- criteria : iterator.call(context, value, index, list)
- };
- }).sort(function(left, right) {
- var a = left.criteria, b = right.criteria;
- return a < b ? -1 : a > b ? 1 : 0;
- }), 'value');
- };
-
- // Groups the object's values by a criterion produced by an iterator
- _.groupBy = function(obj, iterator) {
- var result = {};
- each(obj, function(value, index) {
- var key = iterator(value, index);
- (result[key] || (result[key] = [])).push(value);
- });
- return result;
- };
-
- // Use a comparator function to figure out at what index an object should
- // be inserted so as to maintain order. Uses binary search.
- _.sortedIndex = function(array, obj, iterator) {
- iterator || (iterator = _.identity);
- var low = 0, high = array.length;
- while (low < high) {
- var mid = (low + high) >> 1;
- iterator(array[mid]) < iterator(obj) ? low = mid + 1 : high = mid;
- }
- return low;
- };
-
- // Safely convert anything iterable into a real, live array.
- _.toArray = function(iterable) {
- if (!iterable) return [];
- if (iterable.toArray) return iterable.toArray();
- if (_.isArray(iterable)) return slice.call(iterable);
- if (_.isArguments(iterable)) return slice.call(iterable);
- return _.values(iterable);
- };
-
- // Return the number of elements in an object.
- _.size = function(obj) {
- return _.toArray(obj).length;
- };
-
- // Array Functions
- // ---------------
-
- // Get the first element of an array. Passing **n** will return the first N
- // values in the array. Aliased as `head`. The **guard** check allows it to work
- // with `_.map`.
- _.first = _.head = function(array, n, guard) {
- return (n != null) && !guard ? slice.call(array, 0, n) : array[0];
- };
-
- // Returns everything but the first entry of the array. Aliased as `tail`.
- // Especially useful on the arguments object. Passing an **index** will return
- // the rest of the values in the array from that index onward. The **guard**
- // check allows it to work with `_.map`.
- _.rest = _.tail = function(array, index, guard) {
- return slice.call(array, (index == null) || guard ? 1 : index);
- };
-
- // Get the last element of an array.
- _.last = function(array) {
- return array[array.length - 1];
- };
-
- // Trim out all falsy values from an array.
- _.compact = function(array) {
- return _.filter(array, function(value){ return !!value; });
- };
-
- // Return a completely flattened version of an array.
- _.flatten = function(array) {
- return _.reduce(array, function(memo, value) {
- if (_.isArray(value)) return memo.concat(_.flatten(value));
- memo[memo.length] = value;
- return memo;
- }, []);
- };
-
- // Return a version of the array that does not contain the specified value(s).
- _.without = function(array) {
- return _.difference(array, slice.call(arguments, 1));
- };
-
- // Produce a duplicate-free version of the array. If the array has already
- // been sorted, you have the option of using a faster algorithm.
- // Aliased as `unique`.
- _.uniq = _.unique = function(array, isSorted) {
- return _.reduce(array, function(memo, el, i) {
- if (0 == i || (isSorted === true ? _.last(memo) != el : !_.include(memo, el))) memo[memo.length] = el;
- return memo;
- }, []);
- };
-
- // Produce an array that contains the union: each distinct element from all of
- // the passed-in arrays.
- _.union = function() {
- return _.uniq(_.flatten(arguments));
- };
-
- // Produce an array that contains every item shared between all the
- // passed-in arrays. (Aliased as "intersect" for back-compat.)
- _.intersection = _.intersect = function(array) {
- var rest = slice.call(arguments, 1);
- return _.filter(_.uniq(array), function(item) {
- return _.every(rest, function(other) {
- return _.indexOf(other, item) >= 0;
- });
- });
- };
-
- // Take the difference between one array and another.
- // Only the elements present in just the first array will remain.
- _.difference = function(array, other) {
- return _.filter(array, function(value){ return !_.include(other, value); });
- };
-
- // Zip together multiple lists into a single array -- elements that share
- // an index go together.
- _.zip = function() {
- var args = slice.call(arguments);
- var length = _.max(_.pluck(args, 'length'));
- var results = new Array(length);
- for (var i = 0; i < length; i++) results[i] = _.pluck(args, "" + i);
- return results;
- };
-
- // If the browser doesn't supply us with indexOf (I'm looking at you, **MSIE**),
- // we need this function. Return the position of the first occurrence of an
- // item in an array, or -1 if the item is not included in the array.
- // Delegates to **ECMAScript 5**'s native `indexOf` if available.
- // If the array is large and already in sort order, pass `true`
- // for **isSorted** to use binary search.
- _.indexOf = function(array, item, isSorted) {
- if (array == null) return -1;
- var i, l;
- if (isSorted) {
- i = _.sortedIndex(array, item);
- return array[i] === item ? i : -1;
- }
- if (nativeIndexOf && array.indexOf === nativeIndexOf) return array.indexOf(item);
- for (i = 0, l = array.length; i < l; i++) if (array[i] === item) return i;
- return -1;
- };
-
-
- // Delegates to **ECMAScript 5**'s native `lastIndexOf` if available.
- _.lastIndexOf = function(array, item) {
- if (array == null) return -1;
- if (nativeLastIndexOf && array.lastIndexOf === nativeLastIndexOf) return array.lastIndexOf(item);
- var i = array.length;
- while (i--) if (array[i] === item) return i;
- return -1;
- };
-
- // Generate an integer Array containing an arithmetic progression. A port of
- // the native Python `range()` function. See
- // [the Python documentation](http://docs.python.org/library/functions.html#range).
- _.range = function(start, stop, step) {
- if (arguments.length <= 1) {
- stop = start || 0;
- start = 0;
- }
- step = arguments[2] || 1;
-
- var len = Math.max(Math.ceil((stop - start) / step), 0);
- var idx = 0;
- var range = new Array(len);
-
- while(idx < len) {
- range[idx++] = start;
- start += step;
- }
-
- return range;
- };
-
- // Function (ahem) Functions
- // ------------------
-
- // Create a function bound to a given object (assigning `this`, and arguments,
- // optionally). Binding with arguments is also known as `curry`.
- // Delegates to **ECMAScript 5**'s native `Function.bind` if available.
- // We check for `func.bind` first, to fail fast when `func` is undefined.
- _.bind = function(func, obj) {
- if (func.bind === nativeBind && nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));
- var args = slice.call(arguments, 2);
- return function() {
- return func.apply(obj, args.concat(slice.call(arguments)));
- };
- };
-
- // Bind all of an object's methods to that object. Useful for ensuring that
- // all callbacks defined on an object belong to it.
- _.bindAll = function(obj) {
- var funcs = slice.call(arguments, 1);
- if (funcs.length == 0) funcs = _.functions(obj);
- each(funcs, function(f) { obj[f] = _.bind(obj[f], obj); });
- return obj;
- };
-
- // Memoize an expensive function by storing its results.
- _.memoize = function(func, hasher) {
- var memo = {};
- hasher || (hasher = _.identity);
- return function() {
- var key = hasher.apply(this, arguments);
- return hasOwnProperty.call(memo, key) ? memo[key] : (memo[key] = func.apply(this, arguments));
- };
- };
-
- // Delays a function for the given number of milliseconds, and then calls
- // it with the arguments supplied.
- _.delay = function(func, wait) {
- var args = slice.call(arguments, 2);
- return setTimeout(function(){ return func.apply(func, args); }, wait);
- };
-
- // Defers a function, scheduling it to run after the current call stack has
- // cleared.
- _.defer = function(func) {
- return _.delay.apply(_, [func, 1].concat(slice.call(arguments, 1)));
- };
-
- // Internal function used to implement `_.throttle` and `_.debounce`.
- var limit = function(func, wait, debounce) {
- var timeout;
- return function() {
- var context = this, args = arguments;
- var throttler = function() {
- timeout = null;
- func.apply(context, args);
- };
- if (debounce) clearTimeout(timeout);
- if (debounce || !timeout) timeout = setTimeout(throttler, wait);
- };
- };
-
- // Returns a function, that, when invoked, will only be triggered at most once
- // during a given window of time.
- _.throttle = function(func, wait) {
- return limit(func, wait, false);
- };
-
- // Returns a function, that, as long as it continues to be invoked, will not
- // be triggered. The function will be called after it stops being called for
- // N milliseconds.
- _.debounce = function(func, wait) {
- return limit(func, wait, true);
- };
-
- // Returns a function that will be executed at most one time, no matter how
- // often you call it. Useful for lazy initialization.
- _.once = function(func) {
- var ran = false, memo;
- return function() {
- if (ran) return memo;
- ran = true;
- return memo = func.apply(this, arguments);
- };
- };
-
- // Returns the first function passed as an argument to the second,
- // allowing you to adjust arguments, run code before and after, and
- // conditionally execute the original function.
- _.wrap = function(func, wrapper) {
- return function() {
- var args = [func].concat(slice.call(arguments));
- return wrapper.apply(this, args);
- };
- };
-
- // Returns a function that is the composition of a list of functions, each
- // consuming the return value of the function that follows.
- _.compose = function() {
- var funcs = slice.call(arguments);
- return function() {
- var args = slice.call(arguments);
- for (var i = funcs.length - 1; i >= 0; i--) {
- args = [funcs[i].apply(this, args)];
- }
- return args[0];
- };
- };
-
- // Returns a function that will only be executed after being called N times.
- _.after = function(times, func) {
- return function() {
- if (--times < 1) { return func.apply(this, arguments); }
- };
- };
-
-
- // Object Functions
- // ----------------
-
- // Retrieve the names of an object's properties.
- // Delegates to **ECMAScript 5**'s native `Object.keys`
- _.keys = nativeKeys || function(obj) {
- if (obj !== Object(obj)) throw new TypeError('Invalid object');
- var keys = [];
- for (var key in obj) if (hasOwnProperty.call(obj, key)) keys[keys.length] = key;
- return keys;
- };
-
- // Retrieve the values of an object's properties.
- _.values = function(obj) {
- return _.map(obj, _.identity);
- };
-
- // Return a sorted list of the function names available on the object.
- // Aliased as `methods`
- _.functions = _.methods = function(obj) {
- var names = [];
- for (var key in obj) {
- if (_.isFunction(obj[key])) names.push(key);
- }
- return names.sort();
- };
-
- // Extend a given object with all the properties in passed-in object(s).
- _.extend = function(obj) {
- each(slice.call(arguments, 1), function(source) {
- for (var prop in source) {
- if (source[prop] !== void 0) obj[prop] = source[prop];
- }
- });
- return obj;
- };
-
- // Fill in a given object with default properties.
- _.defaults = function(obj) {
- each(slice.call(arguments, 1), function(source) {
- for (var prop in source) {
- if (obj[prop] == null) obj[prop] = source[prop];
- }
- });
- return obj;
- };
-
- // Create a (shallow-cloned) duplicate of an object.
- _.clone = function(obj) {
- return _.isArray(obj) ? obj.slice() : _.extend({}, obj);
- };
-
- // Invokes interceptor with the obj, and then returns obj.
- // The primary purpose of this method is to "tap into" a method chain, in
- // order to perform operations on intermediate results within the chain.
- _.tap = function(obj, interceptor) {
- interceptor(obj);
- return obj;
- };
-
- // Perform a deep comparison to check if two objects are equal.
- _.isEqual = function(a, b) {
- // Check object identity.
- if (a === b) return true;
- // Different types?
- var atype = typeof(a), btype = typeof(b);
- if (atype != btype) return false;
- // Basic equality test (watch out for coercions).
- if (a == b) return true;
- // One is falsy and the other truthy.
- if ((!a && b) || (a && !b)) return false;
- // Unwrap any wrapped objects.
- if (a._chain) a = a._wrapped;
- if (b._chain) b = b._wrapped;
- // One of them implements an isEqual()?
- if (a.isEqual) return a.isEqual(b);
- if (b.isEqual) return b.isEqual(a);
- // Check dates' integer values.
- if (_.isDate(a) && _.isDate(b)) return a.getTime() === b.getTime();
- // Both are NaN?
- if (_.isNaN(a) && _.isNaN(b)) return false;
- // Compare regular expressions.
- if (_.isRegExp(a) && _.isRegExp(b))
- return a.source === b.source &&
- a.global === b.global &&
- a.ignoreCase === b.ignoreCase &&
- a.multiline === b.multiline;
- // If a is not an object by this point, we can't handle it.
- if (atype !== 'object') return false;
- // Check for different array lengths before comparing contents.
- if (a.length && (a.length !== b.length)) return false;
- // Nothing else worked, deep compare the contents.
- var aKeys = _.keys(a), bKeys = _.keys(b);
- // Different object sizes?
- if (aKeys.length != bKeys.length) return false;
- // Recursive comparison of contents.
- for (var key in a) if (!(key in b) || !_.isEqual(a[key], b[key])) return false;
- return true;
- };
-
- // Is a given array or object empty?
- _.isEmpty = function(obj) {
- if (_.isArray(obj) || _.isString(obj)) return obj.length === 0;
- for (var key in obj) if (hasOwnProperty.call(obj, key)) return false;
- return true;
- };
-
- // Is a given value a DOM element?
- _.isElement = function(obj) {
- return !!(obj && obj.nodeType == 1);
- };
-
- // Is a given value an array?
- // Delegates to ECMA5's native Array.isArray
- _.isArray = nativeIsArray || function(obj) {
- return toString.call(obj) === '[object Array]';
- };
-
- // Is a given variable an object?
- _.isObject = function(obj) {
- return obj === Object(obj);
- };
-
- // Is a given variable an arguments object?
- _.isArguments = function(obj) {
- return !!(obj && hasOwnProperty.call(obj, 'callee'));
- };
-
- // Is a given value a function?
- _.isFunction = function(obj) {
- return !!(obj && obj.constructor && obj.call && obj.apply);
- };
-
- // Is a given value a string?
- _.isString = function(obj) {
- return !!(obj === '' || (obj && obj.charCodeAt && obj.substr));
- };
-
- // Is a given value a number?
- _.isNumber = function(obj) {
- return !!(obj === 0 || (obj && obj.toExponential && obj.toFixed));
- };
-
- // Is the given value `NaN`? `NaN` happens to be the only value in JavaScript
- // that does not equal itself.
- _.isNaN = function(obj) {
- return obj !== obj;
- };
-
- // Is a given value a boolean?
- _.isBoolean = function(obj) {
- return obj === true || obj === false;
- };
-
- // Is a given value a date?
- _.isDate = function(obj) {
- return !!(obj && obj.getTimezoneOffset && obj.setUTCFullYear);
- };
-
- // Is the given value a regular expression?
- _.isRegExp = function(obj) {
- return !!(obj && obj.test && obj.exec && (obj.ignoreCase || obj.ignoreCase === false));
- };
-
- // Is a given value equal to null?
- _.isNull = function(obj) {
- return obj === null;
- };
-
- // Is a given variable undefined?
- _.isUndefined = function(obj) {
- return obj === void 0;
- };
-
- // Utility Functions
- // -----------------
-
- // Run Underscore.js in *noConflict* mode, returning the `_` variable to its
- // previous owner. Returns a reference to the Underscore object.
- _.noConflict = function() {
- root._ = previousUnderscore;
- return this;
- };
-
- // Keep the identity function around for default iterators.
- _.identity = function(value) {
- return value;
- };
-
- // Run a function **n** times.
- _.times = function (n, iterator, context) {
- for (var i = 0; i < n; i++) iterator.call(context, i);
- };
-
- // Add your own custom functions to the Underscore object, ensuring that
- // they're correctly added to the OOP wrapper as well.
- _.mixin = function(obj) {
- each(_.functions(obj), function(name){
- addToWrapper(name, _[name] = obj[name]);
- });
- };
-
- // Generate a unique integer id (unique within the entire client session).
- // Useful for temporary DOM ids.
- var idCounter = 0;
- _.uniqueId = function(prefix) {
- var id = idCounter++;
- return prefix ? prefix + id : id;
- };
-
- // By default, Underscore uses ERB-style template delimiters, change the
- // following template settings to use alternative delimiters.
- _.templateSettings = {
- evaluate : /<%([\s\S]+?)%>/g,
- interpolate : /<%=([\s\S]+?)%>/g
- };
-
- // JavaScript micro-templating, similar to John Resig's implementation.
- // Underscore templating handles arbitrary delimiters, preserves whitespace,
- // and correctly escapes quotes within interpolated code.
- _.template = function(str, data) {
- var c = _.templateSettings;
- var tmpl = 'var __p=[],print=function(){__p.push.apply(__p,arguments);};' +
- 'with(obj||{}){__p.push(\'' +
- str.replace(/\\/g, '\\\\')
- .replace(/'/g, "\\'")
- .replace(c.interpolate, function(match, code) {
- return "'," + code.replace(/\\'/g, "'") + ",'";
- })
- .replace(c.evaluate || null, function(match, code) {
- return "');" + code.replace(/\\'/g, "'")
- .replace(/[\r\n\t]/g, ' ') + "__p.push('";
- })
- .replace(/\r/g, '\\r')
- .replace(/\n/g, '\\n')
- .replace(/\t/g, '\\t')
- + "');}return __p.join('');";
- var func = new Function('obj', tmpl);
- return data ? func(data) : func;
- };
-
- // The OOP Wrapper
- // ---------------
-
- // If Underscore is called as a function, it returns a wrapped object that
- // can be used OO-style. This wrapper holds altered versions of all the
- // underscore functions. Wrapped objects may be chained.
- var wrapper = function(obj) { this._wrapped = obj; };
-
- // Expose `wrapper.prototype` as `_.prototype`
- _.prototype = wrapper.prototype;
-
- // Helper function to continue chaining intermediate results.
- var result = function(obj, chain) {
- return chain ? _(obj).chain() : obj;
- };
-
- // A method to easily add functions to the OOP wrapper.
- var addToWrapper = function(name, func) {
- wrapper.prototype[name] = function() {
- var args = slice.call(arguments);
- unshift.call(args, this._wrapped);
- return result(func.apply(_, args), this._chain);
- };
- };
-
- // Add all of the Underscore functions to the wrapper object.
- _.mixin(_);
-
- // Add all mutator Array functions to the wrapper.
- each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
- var method = ArrayProto[name];
- wrapper.prototype[name] = function() {
- method.apply(this._wrapped, arguments);
- return result(this._wrapped, this._chain);
- };
- });
-
- // Add all accessor Array functions to the wrapper.
- each(['concat', 'join', 'slice'], function(name) {
- var method = ArrayProto[name];
- wrapper.prototype[name] = function() {
- return result(method.apply(this._wrapped, arguments), this._chain);
- };
- });
-
- // Start chaining a wrapped Underscore object.
- wrapper.prototype.chain = function() {
- this._chain = true;
- return this;
- };
-
- // Extracts the result from a wrapped and chained object.
- wrapper.prototype.value = function() {
- return this._wrapped;
- };
+
+ // Start chaining a wrapped Underscore object.
+ wrapper.prototype.chain = function () {
+ this._chain = true;
+ return this;
+ };
+
+ // Extracts the result from a wrapped and chained object.
+ wrapper.prototype.value = function () {
+ return this._wrapped;
+ };
})();
/**
@@ -1349,245 +1360,245 @@
*/
(function () {
-var
- global = this,
- previousFlotr = this.Flotr,
- Flotr;
-
-Flotr = {
- _: _,
- bean: bean,
- isIphone: /iphone/i.test(navigator.userAgent),
- isIE: (navigator.appVersion.indexOf("MSIE") != -1 ? parseFloat(navigator.appVersion.split("MSIE")[1]) : false),
-
- /**
- * An object of the registered graph types. Use Flotr.addType(type, object)
- * to add your own type.
- */
- graphTypes: {},
-
- /**
- * The list of the registered plugins
- */
- plugins: {},
-
- /**
- * Can be used to add your own chart type.
- * @param {String} name - Type of chart, like 'pies', 'bars' etc.
- * @param {String} graphType - The object containing the basic drawing functions (draw, etc)
- */
- addType: function(name, graphType){
- Flotr.graphTypes[name] = graphType;
- Flotr.defaultOptions[name] = graphType.options || {};
- Flotr.defaultOptions.defaultType = Flotr.defaultOptions.defaultType || name;
- },
-
- /**
- * Can be used to add a plugin
- * @param {String} name - The name of the plugin
- * @param {String} plugin - The object containing the plugin's data (callbacks, options, function1, function2, ...)
- */
- addPlugin: function(name, plugin){
- Flotr.plugins[name] = plugin;
- Flotr.defaultOptions[name] = plugin.options || {};
- },
-
- /**
- * Draws the graph. This function is here for backwards compatibility with Flotr version 0.1.0alpha.
- * You could also draw graphs by directly calling Flotr.Graph(element, data, options).
- * @param {Element} el - element to insert the graph into
- * @param {Object} data - an array or object of dataseries
- * @param {Object} options - an object containing options
- * @param {Class} _GraphKlass_ - (optional) Class to pass the arguments to, defaults to Flotr.Graph
- * @return {Object} returns a new graph object and of course draws the graph.
- */
- draw: function(el, data, options, GraphKlass){
- GraphKlass = GraphKlass || Flotr.Graph;
- return new GraphKlass(el, data, options);
- },
-
- /**
- * Recursively merges two objects.
- * @param {Object} src - source object (likely the object with the least properties)
- * @param {Object} dest - destination object (optional, object with the most properties)
- * @return {Object} recursively merged Object
- * @TODO See if we can't remove this.
- */
- merge: function(src, dest){
- var i, v, result = dest || {};
-
- for (i in src) {
- v = src[i];
- if (v && typeof(v) === 'object') {
- if (v.constructor === Array) {
- result[i] = this._.clone(v);
- } else if (v.constructor !== RegExp && !this._.isElement(v)) {
- result[i] = Flotr.merge(v, (dest ? dest[i] : undefined));
- } else {
- result[i] = v;
- }
- } else {
- result[i] = v;
- }
- }
-
- return result;
- },
-
- /**
- * Recursively clones an object.
- * @param {Object} object - The object to clone
- * @return {Object} the clone
- * @TODO See if we can't remove this.
- */
- clone: function(object){
- return Flotr.merge(object, {});
- },
-
- /**
- * Function calculates the ticksize and returns it.
- * @param {Integer} noTicks - number of ticks
- * @param {Integer} min - lower bound integer value for the current axis
- * @param {Integer} max - upper bound integer value for the current axis
- * @param {Integer} decimals - number of decimals for the ticks
- * @return {Integer} returns the ticksize in pixels
- */
- getTickSize: function(noTicks, min, max, decimals){
- var delta = (max - min) / noTicks,
- magn = Flotr.getMagnitude(delta),
- tickSize = 10,
- norm = delta / magn; // Norm is between 1.0 and 10.0.
-
- if(norm < 1.5) tickSize = 1;
- else if(norm < 2.25) tickSize = 2;
- else if(norm < 3) tickSize = ((decimals === 0) ? 2 : 2.5);
- else if(norm < 7.5) tickSize = 5;
-
- return tickSize * magn;
- },
-
- /**
- * Default tick formatter.
- * @param {String, Integer} val - tick value integer
- * @param {Object} axisOpts - the axis' options
- * @return {String} formatted tick string
- */
- defaultTickFormatter: function(val, axisOpts){
- return val+'';
- },
-
- /**
- * Formats the mouse tracker values.
- * @param {Object} obj - Track value Object {x:..,y:..}
- * @return {String} Formatted track string
- */
- defaultTrackFormatter: function(obj){
- return '('+obj.x+', '+obj.y+')';
- },
-
- /**
- * Utility function to convert file size values in bytes to kB, MB, ...
- * @param value {Number} - The value to convert
- * @param precision {Number} - The number of digits after the comma (default: 2)
- * @param base {Number} - The base (default: 1000)
- */
- engineeringNotation: function(value, precision, base){
- var sizes = ['Y','Z','E','P','T','G','M','k',''],
- fractionSizes = ['y','z','a','f','p','n','µ','m',''],
- total = sizes.length;
-
- base = base || 1000;
- precision = Math.pow(10, precision || 2);
-
- if (value === 0) return 0;
-
- if (value > 1) {
- while (total-- && (value >= base)) value /= base;
- }
- else {
- sizes = fractionSizes;
- total = sizes.length;
- while (total-- && (value < 1)) value *= base;
- }
-
- return (Math.round(value * precision) / precision) + sizes[total];
- },
-
- /**
- * Returns the magnitude of the input value.
- * @param {Integer, Float} x - integer or float value
- * @return {Integer, Float} returns the magnitude of the input value
- */
- getMagnitude: function(x){
- return Math.pow(10, Math.floor(Math.log(x) / Math.LN10));
- },
- toPixel: function(val){
- return Math.floor(val)+0.5;//((val-Math.round(val) < 0.4) ? (Math.floor(val)-0.5) : val);
- },
- toRad: function(angle){
- return -angle * (Math.PI/180);
- },
- floorInBase: function(n, base) {
- return base * Math.floor(n / base);
- },
- drawText: function(ctx, text, x, y, style) {
- if (!ctx.fillText) {
- ctx.drawText(text, x, y, style);
- return;
- }
-
- style = this._.extend({
- size: Flotr.defaultOptions.fontSize,
- color: '#000000',
- textAlign: 'left',
- textBaseline: 'bottom',
- weight: 1,
- angle: 0
- }, style);
-
- ctx.save();
- ctx.translate(x, y);
- ctx.rotate(style.angle);
- ctx.fillStyle = style.color;
- ctx.font = (style.weight > 1 ? "bold " : "") + (style.size*1.3) + "px sans-serif";
- ctx.textAlign = style.textAlign;
- ctx.textBaseline = style.textBaseline;
- ctx.fillText(text, 0, 0);
- ctx.restore();
- },
- getBestTextAlign: function(angle, style) {
- style = style || {textAlign: 'center', textBaseline: 'middle'};
- angle += Flotr.getTextAngleFromAlign(style);
-
- if (Math.abs(Math.cos(angle)) > 10e-3)
- style.textAlign = (Math.cos(angle) > 0 ? 'right' : 'left');
-
- if (Math.abs(Math.sin(angle)) > 10e-3)
- style.textBaseline = (Math.sin(angle) > 0 ? 'top' : 'bottom');
-
- return style;
- },
- alignTable: {
- 'right middle' : 0,
- 'right top' : Math.PI/4,
- 'center top' : Math.PI/2,
- 'left top' : 3*(Math.PI/4),
- 'left middle' : Math.PI,
- 'left bottom' : -3*(Math.PI/4),
- 'center bottom': -Math.PI/2,
- 'right bottom' : -Math.PI/4,
- 'center middle': 0
- },
- getTextAngleFromAlign: function(style) {
- return Flotr.alignTable[style.textAlign+' '+style.textBaseline] || 0;
- },
- noConflict : function () {
- global.Flotr = previousFlotr;
- return this;
- }
-};
-
-global.Flotr = Flotr;
+ var
+ global = this,
+ previousFlotr = this.Flotr,
+ Flotr;
+
+ Flotr = {
+ _: _,
+ bean: bean,
+ isIphone: /iphone/i.test(navigator.userAgent),
+ isIE: (navigator.appVersion.indexOf("MSIE") != -1 ? parseFloat(navigator.appVersion.split("MSIE")[1]) : false),
+
+ /**
+ * An object of the registered graph types. Use Flotr.addType(type, object)
+ * to add your own type.
+ */
+ graphTypes: {},
+
+ /**
+ * The list of the registered plugins
+ */
+ plugins: {},
+
+ /**
+ * Can be used to add your own chart type.
+ * @param {String} name - Type of chart, like 'pies', 'bars' etc.
+ * @param {String} graphType - The object containing the basic drawing functions (draw, etc)
+ */
+ addType: function (name, graphType) {
+ Flotr.graphTypes[name] = graphType;
+ Flotr.defaultOptions[name] = graphType.options || {};
+ Flotr.defaultOptions.defaultType = Flotr.defaultOptions.defaultType || name;
+ },
+
+ /**
+ * Can be used to add a plugin
+ * @param {String} name - The name of the plugin
+ * @param {String} plugin - The object containing the plugin's data (callbacks, options, function1, function2, ...)
+ */
+ addPlugin: function (name, plugin) {
+ Flotr.plugins[name] = plugin;
+ Flotr.defaultOptions[name] = plugin.options || {};
+ },
+
+ /**
+ * Draws the graph. This function is here for backwards compatibility with Flotr version 0.1.0alpha.
+ * You could also draw graphs by directly calling Flotr.Graph(element, data, options).
+ * @param {Element} el - element to insert the graph into
+ * @param {Object} data - an array or object of dataseries
+ * @param {Object} options - an object containing options
+ * @param {Class} _GraphKlass_ - (optional) Class to pass the arguments to, defaults to Flotr.Graph
+ * @return {Object} returns a new graph object and of course draws the graph.
+ */
+ draw: function (el, data, options, GraphKlass) {
+ GraphKlass = GraphKlass || Flotr.Graph;
+ return new GraphKlass(el, data, options);
+ },
+
+ /**
+ * Recursively merges two objects.
+ * @param {Object} src - source object (likely the object with the least properties)
+ * @param {Object} dest - destination object (optional, object with the most properties)
+ * @return {Object} recursively merged Object
+ * @TODO See if we can't remove this.
+ */
+ merge: function (src, dest) {
+ var i, v, result = dest || {};
+
+ for (i in src) {
+ v = src[i];
+ if (v && typeof(v) === 'object') {
+ if (v.constructor === Array) {
+ result[i] = this._.clone(v);
+ } else if (v.constructor !== RegExp && !this._.isElement(v)) {
+ result[i] = Flotr.merge(v, (dest ? dest[i] : undefined));
+ } else {
+ result[i] = v;
+ }
+ } else {
+ result[i] = v;
+ }
+ }
+
+ return result;
+ },
+
+ /**
+ * Recursively clones an object.
+ * @param {Object} object - The object to clone
+ * @return {Object} the clone
+ * @TODO See if we can't remove this.
+ */
+ clone: function (object) {
+ return Flotr.merge(object, {});
+ },
+
+ /**
+ * Function calculates the ticksize and returns it.
+ * @param {Integer} noTicks - number of ticks
+ * @param {Integer} min - lower bound integer value for the current axis
+ * @param {Integer} max - upper bound integer value for the current axis
+ * @param {Integer} decimals - number of decimals for the ticks
+ * @return {Integer} returns the ticksize in pixels
+ */
+ getTickSize: function (noTicks, min, max, decimals) {
+ var delta = (max - min) / noTicks,
+ magn = Flotr.getMagnitude(delta),
+ tickSize = 10,
+ norm = delta / magn; // Norm is between 1.0 and 10.0.
+
+ if (norm < 1.5) tickSize = 1;
+ else if (norm < 2.25) tickSize = 2;
+ else if (norm < 3) tickSize = ((decimals === 0) ? 2 : 2.5);
+ else if (norm < 7.5) tickSize = 5;
+
+ return tickSize * magn;
+ },
+
+ /**
+ * Default tick formatter.
+ * @param {String, Integer} val - tick value integer
+ * @param {Object} axisOpts - the axis' options
+ * @return {String} formatted tick string
+ */
+ defaultTickFormatter: function (val, axisOpts) {
+ return val + '';
+ },
+
+ /**
+ * Formats the mouse tracker values.
+ * @param {Object} obj - Track value Object {x:..,y:..}
+ * @return {String} Formatted track string
+ */
+ defaultTrackFormatter: function (obj) {
+ return '(' + obj.x + ', ' + obj.y + ')';
+ },
+
+ /**
+ * Utility function to convert file size values in bytes to kB, MB, ...
+ * @param value {Number} - The value to convert
+ * @param precision {Number} - The number of digits after the comma (default: 2)
+ * @param base {Number} - The base (default: 1000)
+ */
+ engineeringNotation: function (value, precision, base) {
+ var sizes = ['Y', 'Z', 'E', 'P', 'T', 'G', 'M', 'k', ''],
+ fractionSizes = ['y', 'z', 'a', 'f', 'p', 'n', 'µ', 'm', ''],
+ total = sizes.length;
+
+ base = base || 1000;
+ precision = Math.pow(10, precision || 2);
+
+ if (value === 0) return 0;
+
+ if (value > 1) {
+ while (total-- && (value >= base)) value /= base;
+ }
+ else {
+ sizes = fractionSizes;
+ total = sizes.length;
+ while (total-- && (value < 1)) value *= base;
+ }
+
+ return (Math.round(value * precision) / precision) + sizes[total];
+ },
+
+ /**
+ * Returns the magnitude of the input value.
+ * @param {Integer, Float} x - integer or float value
+ * @return {Integer, Float} returns the magnitude of the input value
+ */
+ getMagnitude: function (x) {
+ return Math.pow(10, Math.floor(Math.log(x) / Math.LN10));
+ },
+ toPixel: function (val) {
+ return Math.floor(val) + 0.5;//((val-Math.round(val) < 0.4) ? (Math.floor(val)-0.5) : val);
+ },
+ toRad: function (angle) {
+ return -angle * (Math.PI / 180);
+ },
+ floorInBase: function (n, base) {
+ return base * Math.floor(n / base);
+ },
+ drawText: function (ctx, text, x, y, style) {
+ if (!ctx.fillText) {
+ ctx.drawText(text, x, y, style);
+ return;
+ }
+
+ style = this._.extend({
+ size: Flotr.defaultOptions.fontSize,
+ color: '#000000',
+ textAlign: 'left',
+ textBaseline: 'bottom',
+ weight: 1,
+ angle: 0
+ }, style);
+
+ ctx.save();
+ ctx.translate(x, y);
+ ctx.rotate(style.angle);
+ ctx.fillStyle = style.color;
+ ctx.font = (style.weight > 1 ? "bold " : "") + (style.size * 1.3) + "px sans-serif";
+ ctx.textAlign = style.textAlign;
+ ctx.textBaseline = style.textBaseline;
+ ctx.fillText(text, 0, 0);
+ ctx.restore();
+ },
+ getBestTextAlign: function (angle, style) {
+ style = style || {textAlign: 'center', textBaseline: 'middle'};
+ angle += Flotr.getTextAngleFromAlign(style);
+
+ if (Math.abs(Math.cos(angle)) > 10e-3)
+ style.textAlign = (Math.cos(angle) > 0 ? 'right' : 'left');
+
+ if (Math.abs(Math.sin(angle)) > 10e-3)
+ style.textBaseline = (Math.sin(angle) > 0 ? 'top' : 'bottom');
+
+ return style;
+ },
+ alignTable: {
+ 'right middle': 0,
+ 'right top': Math.PI / 4,
+ 'center top': Math.PI / 2,
+ 'left top': 3 * (Math.PI / 4),
+ 'left middle': Math.PI,
+ 'left bottom': -3 * (Math.PI / 4),
+ 'center bottom': -Math.PI / 2,
+ 'right bottom': -Math.PI / 4,
+ 'center middle': 0
+ },
+ getTextAngleFromAlign: function (style) {
+ return Flotr.alignTable[style.textAlign + ' ' + style.textBaseline] || 0;
+ },
+ noConflict: function () {
+ global.Flotr = previousFlotr;
+ return this;
+ }
+ };
+
+ global.Flotr = Flotr;
})();
@@ -1595,99 +1606,99 @@
* Flotr Defaults
*/
Flotr.defaultOptions = {
- colors: ['#00A8F0', '#C0D800', '#CB4B4B', '#4DA74D', '#9440ED'], //=> The default colorscheme. When there are > 5 series, additional colors are generated.
- ieBackgroundColor: '#FFFFFF', // Background color for excanvas clipping
- title: null, // => The graph's title
- subtitle: null, // => The graph's subtitle
- shadowSize: 4, // => size of the 'fake' shadow
- defaultType: null, // => default series type
- HtmlText: true, // => wether to draw the text using HTML or on the canvas
- fontColor: '#545454', // => default font color
- fontSize: 7.5, // => canvas' text font size
- resolution: 1, // => resolution of the graph, to have printer-friendly graphs !
- parseFloat: true, // => whether to preprocess data for floats (ie. if input is string)
- xaxis: {
- ticks: null, // => format: either [1, 3] or [[1, 'a'], 3]
- minorTicks: null, // => format: either [1, 3] or [[1, 'a'], 3]
- showLabels: true, // => setting to true will show the axis ticks labels, hide otherwise
- showMinorLabels: false,// => true to show the axis minor ticks labels, false to hide
- labelsAngle: 0, // => labels' angle, in degrees
- title: null, // => axis title
- titleAngle: 0, // => axis title's angle, in degrees
- noTicks: 5, // => number of ticks for automagically generated ticks
- minorTickFreq: null, // => number of minor ticks between major ticks for autogenerated ticks
- tickFormatter: Flotr.defaultTickFormatter, // => fn: number, Object -> string
- tickDecimals: null, // => no. of decimals, null means auto
- min: null, // => min. value to show, null means set automatically
- max: null, // => max. value to show, null means set automatically
- autoscale: false, // => Turns autoscaling on with true
- autoscaleMargin: 0, // => margin in % to add if auto-setting min/max
- color: null, // => color of the ticks
- mode: 'normal', // => can be 'time' or 'normal'
- timeFormat: null,
- timeMode:'UTC', // => For UTC time ('local' for local time).
- timeUnit:'millisecond',// => Unit for time (millisecond, second, minute, hour, day, month, year)
- scaling: 'linear', // => Scaling, can be 'linear' or 'logarithmic'
- base: Math.E,
- titleAlign: 'center',
- margin: true // => Turn off margins with false
- },
- x2axis: {},
- yaxis: {
- ticks: null, // => format: either [1, 3] or [[1, 'a'], 3]
- minorTicks: null, // => format: either [1, 3] or [[1, 'a'], 3]
- showLabels: true, // => setting to true will show the axis ticks labels, hide otherwise
- showMinorLabels: false,// => true to show the axis minor ticks labels, false to hide
- labelsAngle: 0, // => labels' angle, in degrees
- title: null, // => axis title
- titleAngle: 90, // => axis title's angle, in degrees
- noTicks: 5, // => number of ticks for automagically generated ticks
- minorTickFreq: null, // => number of minor ticks between major ticks for autogenerated ticks
- tickFormatter: Flotr.defaultTickFormatter, // => fn: number, Object -> string
- tickDecimals: null, // => no. of decimals, null means auto
- min: null, // => min. value to show, null means set automatically
- max: null, // => max. value to show, null means set automatically
- autoscale: false, // => Turns autoscaling on with true
- autoscaleMargin: 0, // => margin in % to add if auto-setting min/max
- color: null, // => The color of the ticks
- scaling: 'linear', // => Scaling, can be 'linear' or 'logarithmic'
- base: Math.E,
- titleAlign: 'center',
- margin: true // => Turn off margins with false
- },
- y2axis: {
- titleAngle: 270
- },
- grid: {
- color: '#545454', // => primary color used for outline and labels
- backgroundColor: null, // => null for transparent, else color
- backgroundImage: null, // => background image. String or object with src, left and top
- watermarkAlpha: 0.4, // =>
- tickColor: '#DDDDDD', // => color used for the ticks
- labelMargin: 3, // => margin in pixels
- verticalLines: true, // => whether to show gridlines in vertical direction
- minorVerticalLines: null, // => whether to show gridlines for minor ticks in vertical dir.
- horizontalLines: true, // => whether to show gridlines in horizontal direction
- minorHorizontalLines: null, // => whether to show gridlines for minor ticks in horizontal dir.
- outlineWidth: 1, // => width of the grid outline/border in pixels
- outline : 'nsew', // => walls of the outline to display
- circular: false // => if set to true, the grid will be circular, must be used when radars are drawn
- },
- mouse: {
- track: false, // => true to track the mouse, no tracking otherwise
- trackAll: false,
- position: 'se', // => position of the value box (default south-east)
- relative: false, // => next to the mouse cursor
- trackFormatter: Flotr.defaultTrackFormatter, // => formats the values in the value box
- margin: 5, // => margin in pixels of the valuebox
- lineColor: '#FF3F19', // => line color of points that are drawn when mouse comes near a value of a series
- trackDecimals: 1, // => decimals for the track values
- sensibility: 2, // => the lower this number, the more precise you have to aim to show a value
- trackY: true, // => whether or not to track the mouse in the y axis
- radius: 3, // => radius of the track point
- fillColor: null, // => color to fill our select bar with only applies to bar and similar graphs (only bars for now)
- fillOpacity: 0.4 // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- }
+ colors: ['#00A8F0', '#C0D800', '#CB4B4B', '#4DA74D', '#9440ED'], //=> The default colorscheme. When there are > 5 series, additional colors are generated.
+ ieBackgroundColor: '#FFFFFF', // Background color for excanvas clipping
+ title: null, // => The graph's title
+ subtitle: null, // => The graph's subtitle
+ shadowSize: 4, // => size of the 'fake' shadow
+ defaultType: null, // => default series type
+ HtmlText: true, // => wether to draw the text using HTML or on the canvas
+ fontColor: '#545454', // => default font color
+ fontSize: 7.5, // => canvas' text font size
+ resolution: 1, // => resolution of the graph, to have printer-friendly graphs !
+ parseFloat: true, // => whether to preprocess data for floats (ie. if input is string)
+ xaxis: {
+ ticks: null, // => format: either [1, 3] or [[1, 'a'], 3]
+ minorTicks: null, // => format: either [1, 3] or [[1, 'a'], 3]
+ showLabels: true, // => setting to true will show the axis ticks labels, hide otherwise
+ showMinorLabels: false,// => true to show the axis minor ticks labels, false to hide
+ labelsAngle: 0, // => labels' angle, in degrees
+ title: null, // => axis title
+ titleAngle: 0, // => axis title's angle, in degrees
+ noTicks: 5, // => number of ticks for automagically generated ticks
+ minorTickFreq: null, // => number of minor ticks between major ticks for autogenerated ticks
+ tickFormatter: Flotr.defaultTickFormatter, // => fn: number, Object -> string
+ tickDecimals: null, // => no. of decimals, null means auto
+ min: null, // => min. value to show, null means set automatically
+ max: null, // => max. value to show, null means set automatically
+ autoscale: false, // => Turns autoscaling on with true
+ autoscaleMargin: 0, // => margin in % to add if auto-setting min/max
+ color: null, // => color of the ticks
+ mode: 'normal', // => can be 'time' or 'normal'
+ timeFormat: null,
+ timeMode: 'UTC', // => For UTC time ('local' for local time).
+ timeUnit: 'millisecond',// => Unit for time (millisecond, second, minute, hour, day, month, year)
+ scaling: 'linear', // => Scaling, can be 'linear' or 'logarithmic'
+ base: Math.E,
+ titleAlign: 'center',
+ margin: true // => Turn off margins with false
+ },
+ x2axis: {},
+ yaxis: {
+ ticks: null, // => format: either [1, 3] or [[1, 'a'], 3]
+ minorTicks: null, // => format: either [1, 3] or [[1, 'a'], 3]
+ showLabels: true, // => setting to true will show the axis ticks labels, hide otherwise
+ showMinorLabels: false,// => true to show the axis minor ticks labels, false to hide
+ labelsAngle: 0, // => labels' angle, in degrees
+ title: null, // => axis title
+ titleAngle: 90, // => axis title's angle, in degrees
+ noTicks: 5, // => number of ticks for automagically generated ticks
+ minorTickFreq: null, // => number of minor ticks between major ticks for autogenerated ticks
+ tickFormatter: Flotr.defaultTickFormatter, // => fn: number, Object -> string
+ tickDecimals: null, // => no. of decimals, null means auto
+ min: null, // => min. value to show, null means set automatically
+ max: null, // => max. value to show, null means set automatically
+ autoscale: false, // => Turns autoscaling on with true
+ autoscaleMargin: 0, // => margin in % to add if auto-setting min/max
+ color: null, // => The color of the ticks
+ scaling: 'linear', // => Scaling, can be 'linear' or 'logarithmic'
+ base: Math.E,
+ titleAlign: 'center',
+ margin: true // => Turn off margins with false
+ },
+ y2axis: {
+ titleAngle: 270
+ },
+ grid: {
+ color: '#545454', // => primary color used for outline and labels
+ backgroundColor: null, // => null for transparent, else color
+ backgroundImage: null, // => background image. String or object with src, left and top
+ watermarkAlpha: 0.4, // =>
+ tickColor: '#DDDDDD', // => color used for the ticks
+ labelMargin: 3, // => margin in pixels
+ verticalLines: true, // => whether to show gridlines in vertical direction
+ minorVerticalLines: null, // => whether to show gridlines for minor ticks in vertical dir.
+ horizontalLines: true, // => whether to show gridlines in horizontal direction
+ minorHorizontalLines: null, // => whether to show gridlines for minor ticks in horizontal dir.
+ outlineWidth: 1, // => width of the grid outline/border in pixels
+ outline: 'nsew', // => walls of the outline to display
+ circular: false // => if set to true, the grid will be circular, must be used when radars are drawn
+ },
+ mouse: {
+ track: false, // => true to track the mouse, no tracking otherwise
+ trackAll: false,
+ position: 'se', // => position of the value box (default south-east)
+ relative: false, // => next to the mouse cursor
+ trackFormatter: Flotr.defaultTrackFormatter, // => formats the values in the value box
+ margin: 5, // => margin in pixels of the valuebox
+ lineColor: '#FF3F19', // => line color of points that are drawn when mouse comes near a value of a series
+ trackDecimals: 1, // => decimals for the track values
+ sensibility: 2, // => the lower this number, the more precise you have to aim to show a value
+ trackY: true, // => whether or not to track the mouse in the y axis
+ radius: 3, // => radius of the track point
+ fillColor: null, // => color to fill our select bar with only applies to bar and similar graphs (only bars for now)
+ fillOpacity: 0.4 // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ }
};
/**
@@ -1696,161 +1707,161 @@
(function () {
-var
- _ = Flotr._;
+ var
+ _ = Flotr._;
// Constructor
-function Color (r, g, b, a) {
- this.rgba = ['r','g','b','a'];
- var x = 4;
- while(-1<--x){
- this[this.rgba[x]] = arguments[x] || ((x==3) ? 1.0 : 0);
- }
- this.normalize();
-}
+ function Color(r, g, b, a) {
+ this.rgba = ['r', 'g', 'b', 'a'];
+ var x = 4;
+ while (-1 < --x) {
+ this[this.rgba[x]] = arguments[x] || ((x == 3) ? 1.0 : 0);
+ }
+ this.normalize();
+ }
// Constants
-var COLOR_NAMES = {
- aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],
- brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],
- darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],
- darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],
- darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],
- khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],
- lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],
- maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],
- violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]
-};
-
-Color.prototype = {
- scale: function(rf, gf, bf, af){
- var x = 4;
- while (-1 < --x) {
- if (!_.isUndefined(arguments[x])) this[this.rgba[x]] *= arguments[x];
- }
- return this.normalize();
- },
- alpha: function(alpha) {
- if (!_.isUndefined(alpha) && !_.isNull(alpha)) {
- this.a = alpha;
- }
- return this.normalize();
- },
- clone: function(){
- return new Color(this.r, this.b, this.g, this.a);
- },
- limit: function(val,minVal,maxVal){
- return Math.max(Math.min(val, maxVal), minVal);
- },
- normalize: function(){
- var limit = this.limit;
- this.r = limit(parseInt(this.r, 10), 0, 255);
- this.g = limit(parseInt(this.g, 10), 0, 255);
- this.b = limit(parseInt(this.b, 10), 0, 255);
- this.a = limit(this.a, 0, 1);
- return this;
- },
- distance: function(color){
- if (!color) return;
- color = new Color.parse(color);
- var dist = 0, x = 3;
- while(-1<--x){
- dist += Math.abs(this[this.rgba[x]] - color[this.rgba[x]]);
- }
- return dist;
- },
- toString: function(){
- return (this.a >= 1.0) ? 'rgb('+[this.r,this.g,this.b].join(',')+')' : 'rgba('+[this.r,this.g,this.b,this.a].join(',')+')';
- },
- contrast: function () {
- var
- test = 1 - ( 0.299 * this.r + 0.587 * this.g + 0.114 * this.b) / 255;
- return (test < 0.5 ? '#000000' : '#ffffff');
- }
-};
-
-_.extend(Color, {
- /**
- * Parses a color string and returns a corresponding Color.
- * The different tests are in order of probability to improve speed.
- * @param {String, Color} str - string thats representing a color
- * @return {Color} returns a Color object or false
- */
- parse: function(color){
- if (color instanceof Color) return color;
-
- var result;
-
- // #a0b1c2
- if((result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)))
- return new Color(parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16));
-
- // rgb(num,num,num)
- if((result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)))
- return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10));
-
- // #fff
- if((result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)))
- return new Color(parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16));
-
- // rgba(num,num,num,num)
- if((result = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(color)))
- return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10), parseFloat(result[4]));
-
- // rgb(num%,num%,num%)
- if((result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)))
- return new Color(parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55);
-
- // rgba(num%,num%,num%,num)
- if((result = /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(color)))
- return new Color(parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55, parseFloat(result[4]));
-
- // Otherwise, we're most likely dealing with a named color.
- var name = (color+'').replace(/^\s*([\S\s]*?)\s*$/, '$1').toLowerCase();
- if(name == 'transparent'){
- return new Color(255, 255, 255, 0);
- }
- return (result = COLOR_NAMES[name]) ? new Color(result[0], result[1], result[2]) : new Color(0, 0, 0, 0);
- },
-
- /**
- * Process color and options into color style.
- */
- processColor: function(color, options) {
-
- var opacity = options.opacity;
- if (!color) return 'rgba(0, 0, 0, 0)';
- if (color instanceof Color) return color.alpha(opacity).toString();
- if (_.isString(color)) return Color.parse(color).alpha(opacity).toString();
-
- var grad = color.colors ? color : {colors: color};
-
- if (!options.ctx) {
- if (!_.isArray(grad.colors)) return 'rgba(0, 0, 0, 0)';
- return Color.parse(_.isArray(grad.colors[0]) ? grad.colors[0][1] : grad.colors[0]).alpha(opacity).toString();
- }
- grad = _.extend({start: 'top', end: 'bottom'}, grad);
-
- if (/top/i.test(grad.start)) options.x1 = 0;
- if (/left/i.test(grad.start)) options.y1 = 0;
- if (/bottom/i.test(grad.end)) options.x2 = 0;
- if (/right/i.test(grad.end)) options.y2 = 0;
-
- var i, c, stop, gradient = options.ctx.createLinearGradient(options.x1, options.y1, options.x2, options.y2);
- for (i = 0; i < grad.colors.length; i++) {
- c = grad.colors[i];
- if (_.isArray(c)) {
- stop = c[0];
- c = c[1];
- }
- else stop = i / (grad.colors.length-1);
- gradient.addColorStop(stop, Color.parse(c).alpha(opacity));
- }
- return gradient;
- }
-});
-
-Flotr.Color = Color;
+ var COLOR_NAMES = {
+ aqua: [0, 255, 255], azure: [240, 255, 255], beige: [245, 245, 220], black: [0, 0, 0], blue: [0, 0, 255],
+ brown: [165, 42, 42], cyan: [0, 255, 255], darkblue: [0, 0, 139], darkcyan: [0, 139, 139], darkgrey: [169, 169, 169],
+ darkgreen: [0, 100, 0], darkkhaki: [189, 183, 107], darkmagenta: [139, 0, 139], darkolivegreen: [85, 107, 47],
+ darkorange: [255, 140, 0], darkorchid: [153, 50, 204], darkred: [139, 0, 0], darksalmon: [233, 150, 122],
+ darkviolet: [148, 0, 211], fuchsia: [255, 0, 255], gold: [255, 215, 0], green: [0, 128, 0], indigo: [75, 0, 130],
+ khaki: [240, 230, 140], lightblue: [173, 216, 230], lightcyan: [224, 255, 255], lightgreen: [144, 238, 144],
+ lightgrey: [211, 211, 211], lightpink: [255, 182, 193], lightyellow: [255, 255, 224], lime: [0, 255, 0], magenta: [255, 0, 255],
+ maroon: [128, 0, 0], navy: [0, 0, 128], olive: [128, 128, 0], orange: [255, 165, 0], pink: [255, 192, 203], purple: [128, 0, 128],
+ violet: [128, 0, 128], red: [255, 0, 0], silver: [192, 192, 192], white: [255, 255, 255], yellow: [255, 255, 0]
+ };
+
+ Color.prototype = {
+ scale: function (rf, gf, bf, af) {
+ var x = 4;
+ while (-1 < --x) {
+ if (!_.isUndefined(arguments[x])) this[this.rgba[x]] *= arguments[x];
+ }
+ return this.normalize();
+ },
+ alpha: function (alpha) {
+ if (!_.isUndefined(alpha) && !_.isNull(alpha)) {
+ this.a = alpha;
+ }
+ return this.normalize();
+ },
+ clone: function () {
+ return new Color(this.r, this.b, this.g, this.a);
+ },
+ limit: function (val, minVal, maxVal) {
+ return Math.max(Math.min(val, maxVal), minVal);
+ },
+ normalize: function () {
+ var limit = this.limit;
+ this.r = limit(parseInt(this.r, 10), 0, 255);
+ this.g = limit(parseInt(this.g, 10), 0, 255);
+ this.b = limit(parseInt(this.b, 10), 0, 255);
+ this.a = limit(this.a, 0, 1);
+ return this;
+ },
+ distance: function (color) {
+ if (!color) return;
+ color = new Color.parse(color);
+ var dist = 0, x = 3;
+ while (-1 < --x) {
+ dist += Math.abs(this[this.rgba[x]] - color[this.rgba[x]]);
+ }
+ return dist;
+ },
+ toString: function () {
+ return (this.a >= 1.0) ? 'rgb(' + [this.r, this.g, this.b].join(',') + ')' : 'rgba(' + [this.r, this.g, this.b, this.a].join(',') + ')';
+ },
+ contrast: function () {
+ var
+ test = 1 - ( 0.299 * this.r + 0.587 * this.g + 0.114 * this.b) / 255;
+ return (test < 0.5 ? '#000000' : '#ffffff');
+ }
+ };
+
+ _.extend(Color, {
+ /**
+ * Parses a color string and returns a corresponding Color.
+ * The different tests are in order of probability to improve speed.
+ * @param {String, Color} str - string thats representing a color
+ * @return {Color} returns a Color object or false
+ */
+ parse: function (color) {
+ if (color instanceof Color) return color;
+
+ var result;
+
+ // #a0b1c2
+ if ((result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)))
+ return new Color(parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16));
+
+ // rgb(num,num,num)
+ if ((result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)))
+ return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10));
+
+ // #fff
+ if ((result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)))
+ return new Color(parseInt(result[1] + result[1], 16), parseInt(result[2] + result[2], 16), parseInt(result[3] + result[3], 16));
+
+ // rgba(num,num,num,num)
+ if ((result = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(color)))
+ return new Color(parseInt(result[1], 10), parseInt(result[2], 10), parseInt(result[3], 10), parseFloat(result[4]));
+
+ // rgb(num%,num%,num%)
+ if ((result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)))
+ return new Color(parseFloat(result[1]) * 2.55, parseFloat(result[2]) * 2.55, parseFloat(result[3]) * 2.55);
+
+ // rgba(num%,num%,num%,num)
+ if ((result = /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(color)))
+ return new Color(parseFloat(result[1]) * 2.55, parseFloat(result[2]) * 2.55, parseFloat(result[3]) * 2.55, parseFloat(result[4]));
+
+ // Otherwise, we're most likely dealing with a named color.
+ var name = (color + '').replace(/^\s*([\S\s]*?)\s*$/, '$1').toLowerCase();
+ if (name == 'transparent') {
+ return new Color(255, 255, 255, 0);
+ }
+ return (result = COLOR_NAMES[name]) ? new Color(result[0], result[1], result[2]) : new Color(0, 0, 0, 0);
+ },
+
+ /**
+ * Process color and options into color style.
+ */
+ processColor: function (color, options) {
+
+ var opacity = options.opacity;
+ if (!color) return 'rgba(0, 0, 0, 0)';
+ if (color instanceof Color) return color.alpha(opacity).toString();
+ if (_.isString(color)) return Color.parse(color).alpha(opacity).toString();
+
+ var grad = color.colors ? color : {colors: color};
+
+ if (!options.ctx) {
+ if (!_.isArray(grad.colors)) return 'rgba(0, 0, 0, 0)';
+ return Color.parse(_.isArray(grad.colors[0]) ? grad.colors[0][1] : grad.colors[0]).alpha(opacity).toString();
+ }
+ grad = _.extend({start: 'top', end: 'bottom'}, grad);
+
+ if (/top/i.test(grad.start)) options.x1 = 0;
+ if (/left/i.test(grad.start)) options.y1 = 0;
+ if (/bottom/i.test(grad.end)) options.x2 = 0;
+ if (/right/i.test(grad.end)) options.y2 = 0;
+
+ var i, c, stop, gradient = options.ctx.createLinearGradient(options.x1, options.y1, options.x2, options.y2);
+ for (i = 0; i < grad.colors.length; i++) {
+ c = grad.colors[i];
+ if (_.isArray(c)) {
+ stop = c[0];
+ c = c[1];
+ }
+ else stop = i / (grad.colors.length - 1);
+ gradient.addColorStop(stop, Color.parse(c).alpha(opacity));
+ }
+ return gradient;
+ }
+ });
+
+ Flotr.Color = Color;
})();
@@ -1859,295 +1870,332 @@
*/
Flotr.Date = {
- set : function (date, name, mode, value) {
- mode = mode || 'UTC';
- name = 'set' + (mode === 'UTC' ? 'UTC' : '') + name;
- date[name](value);
- },
-
- get : function (date, name, mode) {
- mode = mode || 'UTC';
- name = 'get' + (mode === 'UTC' ? 'UTC' : '') + name;
- return date[name]();
- },
-
- format: function(d, format, mode) {
- if (!d) return;
-
- // We should maybe use an "official" date format spec, like PHP date() or ColdFusion
- // http://fr.php.net/manual/en/function.date.php
- // http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=functions_c-d_29.html
- var
- get = this.get,
- tokens = {
- h: get(d, 'Hours', mode).toString(),
- H: leftPad(get(d, 'Hours', mode)),
- M: leftPad(get(d, 'Minutes', mode)),
- S: leftPad(get(d, 'Seconds', mode)),
- s: get(d, 'Milliseconds', mode),
- d: get(d, 'Date', mode).toString(),
- m: (get(d, 'Month') + 1).toString(),
- y: get(d, 'FullYear').toString(),
- b: Flotr.Date.monthNames[get(d, 'Month', mode)]
- };
-
- function leftPad(n){
- n += '';
- return n.length == 1 ? "0" + n : n;
- }
-
- var r = [], c,
- escape = false;
-
- for (var i = 0; i < format.length; ++i) {
- c = format.charAt(i);
-
- if (escape) {
- r.push(tokens[c] || c);
- escape = false;
- }
- else if (c == "%")
- escape = true;
- else
- r.push(c);
- }
- return r.join('');
- },
- getFormat: function(time, span) {
- var tu = Flotr.Date.timeUnits;
- if (time < tu.second) return "%h:%M:%S.%s";
- else if (time < tu.minute) return "%h:%M:%S";
- else if (time < tu.day) return (span < 2 * tu.day) ? "%h:%M" : "%b %d %h:%M";
- else if (time < tu.month) return "%b %d";
- else if (time < tu.year) return (span < tu.year) ? "%b" : "%b %y";
- else return "%y";
- },
- formatter: function (v, axis) {
- var
- options = axis.options,
- scale = Flotr.Date.timeUnits[options.timeUnit],
- d = new Date(v * scale);
-
- // first check global format
- if (axis.options.timeFormat)
- return Flotr.Date.format(d, options.timeFormat, options.timeMode);
-
- var span = (axis.max - axis.min) * scale,
- t = axis.tickSize * Flotr.Date.timeUnits[axis.tickUnit];
-
- return Flotr.Date.format(d, Flotr.Date.getFormat(t, span), options.timeMode);
- },
- generator: function(axis) {
-
- var
- set = this.set,
- get = this.get,
- timeUnits = this.timeUnits,
- spec = this.spec,
- options = axis.options,
- mode = options.timeMode,
- scale = timeUnits[options.timeUnit],
- min = axis.min * scale,
- max = axis.max * scale,
- delta = (max - min) / options.noTicks,
- ticks = [],
- tickSize = axis.tickSize,
- tickUnit,
- formatter, i;
-
- // Use custom formatter or time tick formatter
- formatter = (options.tickFormatter === Flotr.defaultTickFormatter ?
- this.formatter : options.tickFormatter
- );
-
- for (i = 0; i < spec.length - 1; ++i) {
- var d = spec[i][0] * timeUnits[spec[i][1]];
- if (delta < (d + spec[i+1][0] * timeUnits[spec[i+1][1]]) / 2 && d >= tickSize)
- break;
- }
- tickSize = spec[i][0];
- tickUnit = spec[i][1];
-
- // special-case the possibility of several years
- if (tickUnit == "year") {
- tickSize = Flotr.getTickSize(options.noTicks*timeUnits.year, min, max, 0);
-
- // Fix for 0.5 year case
- if (tickSize == 0.5) {
- tickUnit = "month";
- tickSize = 6;
- }
- }
-
- axis.tickUnit = tickUnit;
- axis.tickSize = tickSize;
-
- var
- d = new Date(min);
-
- var step = tickSize * timeUnits[tickUnit];
-
- function setTick (name) {
- set(d, name, mode, Flotr.floorInBase(
- get(d, name, mode), tickSize
- ));
- }
-
- switch (tickUnit) {
- case "millisecond": setTick('Milliseconds'); break;
- case "second": setTick('Seconds'); break;
- case "minute": setTick('Minutes'); break;
- case "hour": setTick('Hours'); break;
- case "month": setTick('Month'); break;
- case "year": setTick('FullYear'); break;
- }
-
- // reset smaller components
- if (step >= timeUnits.second) set(d, 'Milliseconds', mode, 0);
- if (step >= timeUnits.minute) set(d, 'Seconds', mode, 0);
- if (step >= timeUnits.hour) set(d, 'Minutes', mode, 0);
- if (step >= timeUnits.day) set(d, 'Hours', mode, 0);
- if (step >= timeUnits.day * 4) set(d, 'Date', mode, 1);
- if (step >= timeUnits.year) set(d, 'Month', mode, 0);
-
- var carry = 0, v = NaN, prev;
- do {
- prev = v;
- v = d.getTime();
- ticks.push({ v: v / scale, label: formatter(v / scale, axis) });
- if (tickUnit == "month") {
- if (tickSize < 1) {
- /* a bit complicated - we'll divide the month up but we need to take care of fractions
- so we don't end up in the middle of a day */
- set(d, 'Date', mode, 1);
- var start = d.getTime();
- set(d, 'Month', mode, get(d, 'Month', mode) + 1)
- var end = d.getTime();
- d.setTime(v + carry * timeUnits.hour + (end - start) * tickSize);
- carry = get(d, 'Hours', mode)
- set(d, 'Hours', mode, 0);
- }
- else
- set(d, 'Month', mode, get(d, 'Month', mode) + tickSize);
- }
- else if (tickUnit == "year") {
- set(d, 'FullYear', mode, get(d, 'FullYear', mode) + tickSize);
- }
- else
- d.setTime(v + step);
-
- } while (v < max && v != prev);
-
- return ticks;
- },
- timeUnits: {
- millisecond: 1,
- second: 1000,
- minute: 1000 * 60,
- hour: 1000 * 60 * 60,
- day: 1000 * 60 * 60 * 24,
- month: 1000 * 60 * 60 * 24 * 30,
- year: 1000 * 60 * 60 * 24 * 365.2425
- },
- // the allowed tick sizes, after 1 year we use an integer algorithm
- spec: [
- [1, "millisecond"], [20, "millisecond"], [50, "millisecond"], [100, "millisecond"], [200, "millisecond"], [500, "millisecond"],
- [1, "second"], [2, "second"], [5, "second"], [10, "second"], [30, "second"],
- [1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"], [30, "minute"],
- [1, "hour"], [2, "hour"], [4, "hour"], [8, "hour"], [12, "hour"],
- [1, "day"], [2, "day"], [3, "day"],
- [0.25, "month"], [0.5, "month"], [1, "month"], [2, "month"], [3, "month"], [6, "month"],
- [1, "year"]
- ],
- monthNames: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
+ set: function (date, name, mode, value) {
+ mode = mode || 'UTC';
+ name = 'set' + (mode === 'UTC' ? 'UTC' : '') + name;
+ date[name](value);
+ },
+
+ get: function (date, name, mode) {
+ mode = mode || 'UTC';
+ name = 'get' + (mode === 'UTC' ? 'UTC' : '') + name;
+ return date[name]();
+ },
+
+ format: function (d, format, mode) {
+ if (!d) return;
+
+ // We should maybe use an "official" date format spec, like PHP date() or ColdFusion
+ // http://fr.php.net/manual/en/function.date.php
+ // http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=functions_c-d_29.html
+ var
+ get = this.get,
+ tokens = {
+ h: get(d, 'Hours', mode).toString(),
+ H: leftPad(get(d, 'Hours', mode)),
+ M: leftPad(get(d, 'Minutes', mode)),
+ S: leftPad(get(d, 'Seconds', mode)),
+ s: get(d, 'Milliseconds', mode),
+ d: get(d, 'Date', mode).toString(),
+ m: (get(d, 'Month') + 1).toString(),
+ y: get(d, 'FullYear').toString(),
+ b: Flotr.Date.monthNames[get(d, 'Month', mode)]
+ };
+
+ function leftPad(n) {
+ n += '';
+ return n.length == 1 ? "0" + n : n;
+ }
+
+ var r = [], c,
+ escape = false;
+
+ for (var i = 0; i < format.length; ++i) {
+ c = format.charAt(i);
+
+ if (escape) {
+ r.push(tokens[c] || c);
+ escape = false;
+ }
+ else if (c == "%")
+ escape = true;
+ else
+ r.push(c);
+ }
+ return r.join('');
+ },
+ getFormat: function (time, span) {
+ var tu = Flotr.Date.timeUnits;
+ if (time < tu.second) return "%h:%M:%S.%s";
+ else if (time < tu.minute) return "%h:%M:%S";
+ else if (time < tu.day) return (span < 2 * tu.day) ? "%h:%M" : "%b %d %h:%M";
+ else if (time < tu.month) return "%b %d";
+ else if (time < tu.year) return (span < tu.year) ? "%b" : "%b %y";
+ else return "%y";
+ },
+ formatter: function (v, axis) {
+ var
+ options = axis.options,
+ scale = Flotr.Date.timeUnits[options.timeUnit],
+ d = new Date(v * scale);
+
+ // first check global format
+ if (axis.options.timeFormat)
+ return Flotr.Date.format(d, options.timeFormat, options.timeMode);
+
+ var span = (axis.max - axis.min) * scale,
+ t = axis.tickSize * Flotr.Date.timeUnits[axis.tickUnit];
+
+ return Flotr.Date.format(d, Flotr.Date.getFormat(t, span), options.timeMode);
+ },
+ generator: function (axis) {
+
+ var
+ set = this.set,
+ get = this.get,
+ timeUnits = this.timeUnits,
+ spec = this.spec,
+ options = axis.options,
+ mode = options.timeMode,
+ scale = timeUnits[options.timeUnit],
+ min = axis.min * scale,
+ max = axis.max * scale,
+ delta = (max - min) / options.noTicks,
+ ticks = [],
+ tickSize = axis.tickSize,
+ tickUnit,
+ formatter, i;
+
+ // Use custom formatter or time tick formatter
+ formatter = (options.tickFormatter === Flotr.defaultTickFormatter ?
+ this.formatter : options.tickFormatter
+ );
+
+ for (i = 0; i < spec.length - 1; ++i) {
+ var d = spec[i][0] * timeUnits[spec[i][1]];
+ if (delta < (d + spec[i + 1][0] * timeUnits[spec[i + 1][1]]) / 2 && d >= tickSize)
+ break;
+ }
+ tickSize = spec[i][0];
+ tickUnit = spec[i][1];
+
+ // special-case the possibility of several years
+ if (tickUnit == "year") {
+ tickSize = Flotr.getTickSize(options.noTicks * timeUnits.year, min, max, 0);
+
+ // Fix for 0.5 year case
+ if (tickSize == 0.5) {
+ tickUnit = "month";
+ tickSize = 6;
+ }
+ }
+
+ axis.tickUnit = tickUnit;
+ axis.tickSize = tickSize;
+
+ var
+ d = new Date(min);
+
+ var step = tickSize * timeUnits[tickUnit];
+
+ function setTick(name) {
+ set(d, name, mode, Flotr.floorInBase(
+ get(d, name, mode), tickSize
+ ));
+ }
+
+ switch (tickUnit) {
+ case "millisecond":
+ setTick('Milliseconds');
+ break;
+ case "second":
+ setTick('Seconds');
+ break;
+ case "minute":
+ setTick('Minutes');
+ break;
+ case "hour":
+ setTick('Hours');
+ break;
+ case "month":
+ setTick('Month');
+ break;
+ case "year":
+ setTick('FullYear');
+ break;
+ }
+
+ // reset smaller components
+ if (step >= timeUnits.second) set(d, 'Milliseconds', mode, 0);
+ if (step >= timeUnits.minute) set(d, 'Seconds', mode, 0);
+ if (step >= timeUnits.hour) set(d, 'Minutes', mode, 0);
+ if (step >= timeUnits.day) set(d, 'Hours', mode, 0);
+ if (step >= timeUnits.day * 4) set(d, 'Date', mode, 1);
+ if (step >= timeUnits.year) set(d, 'Month', mode, 0);
+
+ var carry = 0, v = NaN, prev;
+ do {
+ prev = v;
+ v = d.getTime();
+ ticks.push({ v: v / scale, label: formatter(v / scale, axis) });
+ if (tickUnit == "month") {
+ if (tickSize < 1) {
+ /* a bit complicated - we'll divide the month up but we need to take care of fractions
+ so we don't end up in the middle of a day */
+ set(d, 'Date', mode, 1);
+ var start = d.getTime();
+ set(d, 'Month', mode, get(d, 'Month', mode) + 1)
+ var end = d.getTime();
+ d.setTime(v + carry * timeUnits.hour + (end - start) * tickSize);
+ carry = get(d, 'Hours', mode)
+ set(d, 'Hours', mode, 0);
+ }
+ else
+ set(d, 'Month', mode, get(d, 'Month', mode) + tickSize);
+ }
+ else if (tickUnit == "year") {
+ set(d, 'FullYear', mode, get(d, 'FullYear', mode) + tickSize);
+ }
+ else
+ d.setTime(v + step);
+
+ } while (v < max && v != prev);
+
+ return ticks;
+ },
+ timeUnits: {
+ millisecond: 1,
+ second: 1000,
+ minute: 1000 * 60,
+ hour: 1000 * 60 * 60,
+ day: 1000 * 60 * 60 * 24,
+ month: 1000 * 60 * 60 * 24 * 30,
+ year: 1000 * 60 * 60 * 24 * 365.2425
+ },
+ // the allowed tick sizes, after 1 year we use an integer algorithm
+ spec: [
+ [1, "millisecond"],
+ [20, "millisecond"],
+ [50, "millisecond"],
+ [100, "millisecond"],
+ [200, "millisecond"],
+ [500, "millisecond"],
+ [1, "second"],
+ [2, "second"],
+ [5, "second"],
+ [10, "second"],
+ [30, "second"],
+ [1, "minute"],
+ [2, "minute"],
+ [5, "minute"],
+ [10, "minute"],
+ [30, "minute"],
+ [1, "hour"],
+ [2, "hour"],
+ [4, "hour"],
+ [8, "hour"],
+ [12, "hour"],
+ [1, "day"],
+ [2, "day"],
+ [3, "day"],
+ [0.25, "month"],
+ [0.5, "month"],
+ [1, "month"],
+ [2, "month"],
+ [3, "month"],
+ [6, "month"],
+ [1, "year"]
+ ],
+ monthNames: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
};
(function () {
-var _ = Flotr._;
-
-Flotr.DOM = {
- addClass: function(element, name){
- var classList = (element.className ? element.className : '');
- if (_.include(classList.split(/\s+/g), name)) return;
- element.className = (classList ? classList + ' ' : '') + name;
- },
- /**
- * Create an element.
- */
- create: function(tag){
- return document.createElement(tag);
- },
- node: function(html) {
- var div = Flotr.DOM.create('div'), n;
- div.innerHTML = html;
- n = div.children[0];
- div.innerHTML = '';
- return n;
- },
- /**
- * Remove all children.
- */
- empty: function(element){
- element.innerHTML = '';
- /*
- if (!element) return;
- _.each(element.childNodes, function (e) {
- Flotr.DOM.empty(e);
- element.removeChild(e);
- });
- */
- },
- hide: function(element){
- Flotr.DOM.setStyles(element, {display:'none'});
- },
- /**
- * Insert a child.
- * @param {Element} element
- * @param {Element|String} Element or string to be appended.
- */
- insert: function(element, child){
- if(_.isString(child))
- element.innerHTML += child;
- else if (_.isElement(child))
- element.appendChild(child);
- },
- // @TODO find xbrowser implementation
- opacity: function(element, opacity) {
- element.style.opacity = opacity;
- },
- position: function(element, p){
- if (!element.offsetParent)
- return {left: (element.offsetLeft || 0), top: (element.offsetTop || 0)};
-
- p = this.position(element.offsetParent);
- p.left += element.offsetLeft;
- p.top += element.offsetTop;
- return p;
- },
- removeClass: function(element, name) {
- var classList = (element.className ? element.className : '');
- element.className = _.filter(classList.split(/\s+/g), function (c) {
- if (c != name) return true; }
- ).join(' ');
- },
- setStyles: function(element, o) {
- _.each(o, function (value, key) {
- element.style[key] = value;
- });
- },
- show: function(element){
- Flotr.DOM.setStyles(element, {display:''});
- },
- /**
- * Return element size.
- */
- size: function(element){
- return {
- height : element.offsetHeight,
- width : element.offsetWidth };
- }
-};
+ var _ = Flotr._;
+
+ Flotr.DOM = {
+ addClass: function (element, name) {
+ var classList = (element.className ? element.className : '');
+ if (_.include(classList.split(/\s+/g), name)) return;
+ element.className = (classList ? classList + ' ' : '') + name;
+ },
+ /**
+ * Create an element.
+ */
+ create: function (tag) {
+ return document.createElement(tag);
+ },
+ node: function (html) {
+ var div = Flotr.DOM.create('div'), n;
+ div.innerHTML = html;
+ n = div.children[0];
+ div.innerHTML = '';
+ return n;
+ },
+ /**
+ * Remove all children.
+ */
+ empty: function (element) {
+ element.innerHTML = '';
+ /*
+ if (!element) return;
+ _.each(element.childNodes, function (e) {
+ Flotr.DOM.empty(e);
+ element.removeChild(e);
+ });
+ */
+ },
+ hide: function (element) {
+ Flotr.DOM.setStyles(element, {display: 'none'});
+ },
+ /**
+ * Insert a child.
+ * @param {Element} element
+ * @param {Element|String} Element or string to be appended.
+ */
+ insert: function (element, child) {
+ if (_.isString(child))
+ element.innerHTML += child;
+ else if (_.isElement(child))
+ element.appendChild(child);
+ },
+ // @TODO find xbrowser implementation
+ opacity: function (element, opacity) {
+ element.style.opacity = opacity;
+ },
+ position: function (element, p) {
+ if (!element.offsetParent)
+ return {left: (element.offsetLeft || 0), top: (element.offsetTop || 0)};
+
+ p = this.position(element.offsetParent);
+ p.left += element.offsetLeft;
+ p.top += element.offsetTop;
+ return p;
+ },
+ removeClass: function (element, name) {
+ var classList = (element.className ? element.className : '');
+ element.className = _.filter(classList.split(/\s+/g),function (c) {
+ if (c != name) return true;
+ }
+ ).join(' ');
+ },
+ setStyles: function (element, o) {
+ _.each(o, function (value, key) {
+ element.style[key] = value;
+ });
+ },
+ show: function (element) {
+ Flotr.DOM.setStyles(element, {display: ''});
+ },
+ /**
+ * Return element size.
+ */
+ size: function (element) {
+ return {
+ height: element.offsetHeight,
+ width: element.offsetWidth };
+ }
+ };
})();
@@ -2155,53 +2203,53 @@
* Flotr Event Adapter
*/
(function () {
-var
- F = Flotr,
- bean = F.bean;
-F.EventAdapter = {
- observe: function(object, name, callback) {
- bean.add(object, name, callback);
- return this;
- },
- fire: function(object, name, args) {
- bean.fire(object, name, args);
- if (typeof(Prototype) != 'undefined')
- Event.fire(object, name, args);
- // @TODO Someone who uses mootools, add mootools adapter for existing applciations.
- return this;
- },
- stopObserving: function(object, name, callback) {
- bean.remove(object, name, callback);
- return this;
- },
- eventPointer: function(e) {
- if (!F._.isUndefined(e.touches) && e.touches.length > 0) {
- return {
- x : e.touches[0].pageX,
- y : e.touches[0].pageY
- };
- } else if (!F._.isUndefined(e.changedTouches) && e.changedTouches.length > 0) {
- return {
- x : e.changedTouches[0].pageX,
- y : e.changedTouches[0].pageY
- };
- } else if (e.pageX || e.pageY) {
- return {
- x : e.pageX,
- y : e.pageY
- };
- } else if (e.clientX || e.clientY) {
- var
- d = document,
- b = d.body,
- de = d.documentElement;
- return {
- x: e.clientX + b.scrollLeft + de.scrollLeft,
- y: e.clientY + b.scrollTop + de.scrollTop
- };
- }
- }
-};
+ var
+ F = Flotr,
+ bean = F.bean;
+ F.EventAdapter = {
+ observe: function (object, name, callback) {
+ bean.add(object, name, callback);
+ return this;
+ },
+ fire: function (object, name, args) {
+ bean.fire(object, name, args);
+ if (typeof(Prototype) != 'undefined')
+ Event.fire(object, name, args);
+ // @TODO Someone who uses mootools, add mootools adapter for existing applciations.
+ return this;
+ },
+ stopObserving: function (object, name, callback) {
+ bean.remove(object, name, callback);
+ return this;
+ },
+ eventPointer: function (e) {
+ if (!F._.isUndefined(e.touches) && e.touches.length > 0) {
+ return {
+ x: e.touches[0].pageX,
+ y: e.touches[0].pageY
+ };
+ } else if (!F._.isUndefined(e.changedTouches) && e.changedTouches.length > 0) {
+ return {
+ x: e.changedTouches[0].pageX,
+ y: e.changedTouches[0].pageY
+ };
+ } else if (e.pageX || e.pageY) {
+ return {
+ x: e.pageX,
+ y: e.pageY
+ };
+ } else if (e.clientX || e.clientY) {
+ var
+ d = document,
+ b = d.body,
+ de = d.documentElement;
+ return {
+ x: e.clientX + b.scrollLeft + de.scrollLeft,
+ y: e.clientY + b.scrollTop + de.scrollTop
+ };
+ }
+ }
+ };
})();
/**
@@ -2209,87 +2257,87 @@
*/
(function () {
-var
- F = Flotr,
- D = F.DOM,
- _ = F._,
-
-Text = function (o) {
- this.o = o;
-};
-
-Text.prototype = {
-
- dimensions : function (text, canvasStyle, htmlStyle, className) {
-
- if (!text) return { width : 0, height : 0 };
-
- return (this.o.html) ?
- this.html(text, this.o.element, htmlStyle, className) :
- this.canvas(text, canvasStyle);
- },
-
- canvas : function (text, style) {
-
- if (!this.o.textEnabled) return;
- style = style || {};
-
var
- metrics = this.measureText(text, style),
- width = metrics.width,
- height = style.size || F.defaultOptions.fontSize,
- angle = style.angle || 0,
- cosAngle = Math.cos(angle),
- sinAngle = Math.sin(angle),
- widthPadding = 2,
- heightPadding = 6,
- bounds;
-
- bounds = {
- width: Math.abs(cosAngle * width) + Math.abs(sinAngle * height) + widthPadding,
- height: Math.abs(sinAngle * width) + Math.abs(cosAngle * height) + heightPadding
- };
-
- return bounds;
- },
-
- html : function (text, element, style, className) {
-
- var div = D.create('div');
-
- D.setStyles(div, { 'position' : 'absolute', 'top' : '-10000px' });
- D.insert(div, '<div style="'+style+'" class="'+className+' flotr-dummy-div">' + text + '</div>');
- D.insert(this.o.element, div);
-
- return D.size(div);
- },
-
- measureText : function (text, style) {
-
- var
- context = this.o.ctx,
- metrics;
-
- if (!context.fillText || (F.isIphone && context.measure)) {
- return { width : context.measure(text, style)};
- }
-
- style = _.extend({
- size: F.defaultOptions.fontSize,
- weight: 1,
- angle: 0
- }, style);
-
- context.save();
- context.font = (style.weight > 1 ? "bold " : "") + (style.size*1.3) + "px sans-serif";
- metrics = context.measureText(text);
- context.restore();
-
- return metrics;
- }
-};
-
-Flotr.Text = Text;
+ F = Flotr,
+ D = F.DOM,
+ _ = F._,
+
+ Text = function (o) {
+ this.o = o;
+ };
+
+ Text.prototype = {
+
+ dimensions: function (text, canvasStyle, htmlStyle, className) {
+
+ if (!text) return { width: 0, height: 0 };
+
+ return (this.o.html) ?
+ this.html(text, this.o.element, htmlStyle, className) :
+ this.canvas(text, canvasStyle);
+ },
+
+ canvas: function (text, style) {
+
+ if (!this.o.textEnabled) return;
+ style = style || {};
+
+ var
+ metrics = this.measureText(text, style),
+ width = metrics.width,
+ height = style.size || F.defaultOptions.fontSize,
+ angle = style.angle || 0,
+ cosAngle = Math.cos(angle),
+ sinAngle = Math.sin(angle),
+ widthPadding = 2,
+ heightPadding = 6,
+ bounds;
+
+ bounds = {
+ width: Math.abs(cosAngle * width) + Math.abs(sinAngle * height) + widthPadding,
+ height: Math.abs(sinAngle * width) + Math.abs(cosAngle * height) + heightPadding
+ };
+
+ return bounds;
+ },
+
+ html: function (text, element, style, className) {
+
+ var div = D.create('div');
+
+ D.setStyles(div, { 'position': 'absolute', 'top': '-10000px' });
+ D.insert(div, '<div style="' + style + '" class="' + className + ' flotr-dummy-div">' + text + '</div>');
+ D.insert(this.o.element, div);
+
+ return D.size(div);
+ },
+
+ measureText: function (text, style) {
+
+ var
+ context = this.o.ctx,
+ metrics;
+
+ if (!context.fillText || (F.isIphone && context.measure)) {
+ return { width: context.measure(text, style)};
+ }
+
+ style = _.extend({
+ size: F.defaultOptions.fontSize,
+ weight: 1,
+ angle: 0
+ }, style);
+
+ context.save();
+ context.font = (style.weight > 1 ? "bold " : "") + (style.size * 1.3) + "px sans-serif";
+ metrics = context.measureText(text);
+ context.restore();
+
+ return metrics;
+ }
+ };
+
+ Flotr.Text = Text;
})();
@@ -2298,745 +2346,745 @@
*/
(function () {
-var
- D = Flotr.DOM,
- E = Flotr.EventAdapter,
- _ = Flotr._,
- flotr = Flotr;
-/**
- * Flotr Graph constructor.
- * @param {Element} el - element to insert the graph into
- * @param {Object} data - an array or object of dataseries
- * @param {Object} options - an object containing options
- */
-Graph = function(el, data, options){
+ var
+ D = Flotr.DOM,
+ E = Flotr.EventAdapter,
+ _ = Flotr._,
+ flotr = Flotr;
+ /**
+ * Flotr Graph constructor.
+ * @param {Element} el - element to insert the graph into
+ * @param {Object} data - an array or object of dataseries
+ * @param {Object} options - an object containing options
+ */
+ Graph = function (el, data, options) {
// Let's see if we can get away with out this [JS]
// try {
- this._setEl(el);
- this._initMembers();
- this._initPlugins();
-
- E.fire(this.el, 'flotr:beforeinit', [this]);
-
- this.data = data;
- this.series = flotr.Series.getSeries(data);
- this._initOptions(options);
- this._initGraphTypes();
- this._initCanvas();
- this._text = new flotr.Text({
- element : this.el,
- ctx : this.ctx,
- html : this.options.HtmlText,
- textEnabled : this.textEnabled
- });
- E.fire(this.el, 'flotr:afterconstruct', [this]);
- this._initEvents();
-
- this.findDataRanges();
- this.calculateSpacing();
-
- this.draw(_.bind(function() {
- E.fire(this.el, 'flotr:afterinit', [this]);
- }, this));
-/*
- try {
- } catch (e) {
- try {
- console.error(e);
- } catch (e2) {}
- }*/
-};
-
-function observe (object, name, callback) {
- E.observe.apply(this, arguments);
- this._handles.push(arguments);
- return this;
-}
-
-Graph.prototype = {
-
- destroy: function () {
- E.fire(this.el, 'flotr:destroy');
- _.each(this._handles, function (handle) {
- E.stopObserving.apply(this, handle);
- });
- this._handles = [];
- this.el.graph = null;
- },
-
- observe : observe,
-
- /**
- * @deprecated
- */
- _observe : observe,
-
- processColor: function(color, options){
- var o = { x1: 0, y1: 0, x2: this.plotWidth, y2: this.plotHeight, opacity: 1, ctx: this.ctx };
- _.extend(o, options);
- return flotr.Color.processColor(color, o);
- },
- /**
- * Function determines the min and max values for the xaxis and yaxis.
- *
- * TODO logarithmic range validation (consideration of 0)
- */
- findDataRanges: function(){
- var a = this.axes,
- xaxis, yaxis, range;
-
- _.each(this.series, function (series) {
- range = series.getRange();
- if (range) {
- xaxis = series.xaxis;
- yaxis = series.yaxis;
- xaxis.datamin = Math.min(range.xmin, xaxis.datamin);
- xaxis.datamax = Math.max(range.xmax, xaxis.datamax);
- yaxis.datamin = Math.min(range.ymin, yaxis.datamin);
- yaxis.datamax = Math.max(range.ymax, yaxis.datamax);
- xaxis.used = (xaxis.used || range.xused);
- yaxis.used = (yaxis.used || range.yused);
- }
- }, this);
-
- // Check for empty data, no data case (none used)
- if (!a.x.used && !a.x2.used) a.x.used = true;
- if (!a.y.used && !a.y2.used) a.y.used = true;
-
- _.each(a, function (axis) {
- axis.calculateRange();
- });
-
- var
- types = _.keys(flotr.graphTypes),
- drawn = false;
-
- _.each(this.series, function (series) {
- if (series.hide) return;
- _.each(types, function (type) {
- if (series[type] && series[type].show) {
- this.extendRange(type, series);
- drawn = true;
- }
- }, this);
- if (!drawn) {
- this.extendRange(this.options.defaultType, series);
- }
- }, this);
- },
-
- extendRange : function (type, series) {
- if (this[type].extendRange) this[type].extendRange(series, series.data, series[type], this[type]);
- if (this[type].extendYRange) this[type].extendYRange(series.yaxis, series.data, series[type], this[type]);
- if (this[type].extendXRange) this[type].extendXRange(series.xaxis, series.data, series[type], this[type]);
- },
-
- /**
- * Calculates axis label sizes.
- */
- calculateSpacing: function(){
-
- var a = this.axes,
- options = this.options,
- series = this.series,
- margin = options.grid.labelMargin,
- T = this._text,
- x = a.x,
- x2 = a.x2,
- y = a.y,
- y2 = a.y2,
- maxOutset = options.grid.outlineWidth,
- i, j, l, dim;
-
- // TODO post refactor, fix this
- _.each(a, function (axis) {
- axis.calculateTicks();
- axis.calculateTextDimensions(T, options);
- });
-
- // Title height
- dim = T.dimensions(
- options.title,
- {size: options.fontSize*1.5},
- 'font-size:1em;font-weight:bold;',
- 'flotr-title'
- );
- this.titleHeight = dim.height;
-
- // Subtitle height
- dim = T.dimensions(
- options.subtitle,
- {size: options.fontSize},
- 'font-size:smaller;',
- 'flotr-subtitle'
- );
- this.subtitleHeight = dim.height;
-
- for(j = 0; j < options.length; ++j){
- if (series[j].points.show){
- maxOutset = Math.max(maxOutset, series[j].points.radius + series[j].points.lineWidth/2);
- }
+ this._setEl(el);
+ this._initMembers();
+ this._initPlugins();
+
+ E.fire(this.el, 'flotr:beforeinit', [this]);
+
+ this.data = data;
+ this.series = flotr.Series.getSeries(data);
+ this._initOptions(options);
+ this._initGraphTypes();
+ this._initCanvas();
+ this._text = new flotr.Text({
+ element: this.el,
+ ctx: this.ctx,
+ html: this.options.HtmlText,
+ textEnabled: this.textEnabled
+ });
+ E.fire(this.el, 'flotr:afterconstruct', [this]);
+ this._initEvents();
+
+ this.findDataRanges();
+ this.calculateSpacing();
+
+ this.draw(_.bind(function () {
+ E.fire(this.el, 'flotr:afterinit', [this]);
+ }, this));
+ /*
+ try {
+ } catch (e) {
+ try {
+ console.error(e);
+ } catch (e2) {}
+ }*/
+ };
+
+ function observe(object, name, callback) {
+ E.observe.apply(this, arguments);
+ this._handles.push(arguments);
+ return this;
}
- var p = this.plotOffset;
- if (x.options.margin === false) {
- p.bottom = 0;
- p.top = 0;
- } else {
- p.bottom += (options.grid.circular ? 0 : (x.used && x.options.showLabels ? (x.maxLabel.height + margin) : 0)) +
- (x.used && x.options.title ? (x.titleSize.height + margin) : 0) + maxOutset;
-
- p.top += (options.grid.circular ? 0 : (x2.used && x2.options.showLabels ? (x2.maxLabel.height + margin) : 0)) +
- (x2.used && x2.options.title ? (x2.titleSize.height + margin) : 0) + this.subtitleHeight + this.titleHeight + maxOutset;
- }
- if (y.options.margin === false) {
- p.left = 0;
- p.right = 0;
- } else {
- p.left += (options.grid.circular ? 0 : (y.used && y.options.showLabels ? (y.maxLabel.width + margin) : 0)) +
- (y.used && y.options.title ? (y.titleSize.width + margin) : 0) + maxOutset;
-
- p.right += (options.grid.circular ? 0 : (y2.used && y2.options.showLabels ? (y2.maxLabel.width + margin) : 0)) +
- (y2.used && y2.options.title ? (y2.titleSize.width + margin) : 0) + maxOutset;
- }
-
- p.top = Math.floor(p.top); // In order the outline not to be blured
-
- this.plotWidth = this.canvasWidth - p.left - p.right;
- this.plotHeight = this.canvasHeight - p.bottom - p.top;
-
- // TODO post refactor, fix this
- x.length = x2.length = this.plotWidth;
- y.length = y2.length = this.plotHeight;
- y.offset = y2.offset = this.plotHeight;
- x.setScale();
- x2.setScale();
- y.setScale();
- y2.setScale();
- },
- /**
- * Draws grid, labels, series and outline.
- */
- draw: function(after) {
-
- var
- context = this.ctx,
- i;
-
- E.fire(this.el, 'flotr:beforedraw', [this.series, this]);
-
- if (this.series.length) {
-
- context.save();
- context.translate(this.plotOffset.left, this.plotOffset.top);
-
- for (i = 0; i < this.series.length; i++) {
- if (!this.series[i].hide) this.drawSeries(this.series[i]);
- }
-
- context.restore();
- this.clip();
- }
-
- E.fire(this.el, 'flotr:afterdraw', [this.series, this]);
- if (after) after();
- },
- /**
- * Actually draws the graph.
- * @param {Object} series - series to draw
- */
- drawSeries: function(series){
-
- function drawChart (series, typeKey) {
- var options = this.getOptions(series, typeKey);
- this[typeKey].draw(options);
- }
-
- var drawn = false;
- series = series || this.series;
-
- _.each(flotr.graphTypes, function (type, typeKey) {
- if (series[typeKey] && series[typeKey].show && this[typeKey]) {
- drawn = true;
- drawChart.call(this, series, typeKey);
- }
- }, this);
-
- if (!drawn) drawChart.call(this, series, this.options.defaultType);
- },
-
- getOptions : function (series, typeKey) {
- var
- type = series[typeKey],
- graphType = this[typeKey],
- options = {
- context : this.ctx,
- width : this.plotWidth,
- height : this.plotHeight,
- fontSize : this.options.fontSize,
- fontColor : this.options.fontColor,
- textEnabled : this.textEnabled,
- htmlText : this.options.HtmlText,
- text : this._text, // TODO Is this necessary?
- element : this.el,
- data : series.data,
- color : series.color,
- shadowSize : series.shadowSize,
- xScale : _.bind(series.xaxis.d2p, series.xaxis),
- yScale : _.bind(series.yaxis.d2p, series.yaxis)
- };
-
- options = flotr.merge(type, options);
-
- // Fill
- options.fillStyle = this.processColor(
- type.fillColor || series.color,
- {opacity: type.fillOpacity}
- );
-
- return options;
- },
- /**
- * Calculates the coordinates from a mouse event object.
- * @param {Event} event - Mouse Event object.
- * @return {Object} Object with coordinates of the mouse.
- */
- getEventPosition: function (e){
-
- var
- d = document,
- b = d.body,
- de = d.documentElement,
- axes = this.axes,
- plotOffset = this.plotOffset,
- lastMousePos = this.lastMousePos,
- pointer = E.eventPointer(e),
- dx = pointer.x - lastMousePos.pageX,
- dy = pointer.y - lastMousePos.pageY,
- r, rx, ry;
-
- if ('ontouchstart' in this.el) {
- r = D.position(this.overlay);
- rx = pointer.x - r.left - plotOffset.left;
- ry = pointer.y - r.top - plotOffset.top;
- } else {
- r = this.overlay.getBoundingClientRect();
- rx = e.clientX - r.left - plotOffset.left - b.scrollLeft - de.scrollLeft;
- ry = e.clientY - r.top - plotOffset.top - b.scrollTop - de.scrollTop;
- }
-
- return {
- x: axes.x.p2d(rx),
- x2: axes.x2.p2d(rx),
- y: axes.y.p2d(ry),
- y2: axes.y2.p2d(ry),
- relX: rx,
- relY: ry,
- dX: dx,
- dY: dy,
- absX: pointer.x,
- absY: pointer.y,
- pageX: pointer.x,
- pageY: pointer.y
- };
- },
- /**
- * Observes the 'click' event and fires the 'flotr:click' event.
- * @param {Event} event - 'click' Event object.
- */
- clickHandler: function(event){
- if(this.ignoreClick){
- this.ignoreClick = false;
- return this.ignoreClick;
- }
- E.fire(this.el, 'flotr:click', [this.getEventPosition(event), this]);
- },
- /**
- * Observes mouse movement over the graph area. Fires the 'flotr:mousemove' event.
- * @param {Event} event - 'mousemove' Event object.
- */
- mouseMoveHandler: function(event){
- if (this.mouseDownMoveHandler) return;
- var pos = this.getEventPosition(event);
- E.fire(this.el, 'flotr:mousemove', [event, pos, this]);
- this.lastMousePos = pos;
- },
- /**
- * Observes the 'mousedown' event.
- * @param {Event} event - 'mousedown' Event object.
- */
- mouseDownHandler: function (event){
-
- /*
- // @TODO Context menu?
- if(event.isRightClick()) {
- event.stop();
-
- var overlay = this.overlay;
- overlay.hide();
-
- function cancelContextMenu () {
- overlay.show();
- E.stopObserving(document, 'mousemove', cancelContextMenu);
- }
- E.observe(document, 'mousemove', cancelContextMenu);
- return;
- }
- */
-
- if (this.mouseUpHandler) return;
- this.mouseUpHandler = _.bind(function (e) {
- E.stopObserving(document, 'mouseup', this.mouseUpHandler);
- E.stopObserving(document, 'mousemove', this.mouseDownMoveHandler);
- this.mouseDownMoveHandler = null;
- this.mouseUpHandler = null;
- // @TODO why?
- //e.stop();
- E.fire(this.el, 'flotr:mouseup', [e, this]);
- }, this);
- this.mouseDownMoveHandler = _.bind(function (e) {
- var pos = this.getEventPosition(e);
- E.fire(this.el, 'flotr:mousemove', [event, pos, this]);
- this.lastMousePos = pos;
- }, this);
- E.observe(document, 'mouseup', this.mouseUpHandler);
- E.observe(document, 'mousemove', this.mouseDownMoveHandler);
- E.fire(this.el, 'flotr:mousedown', [event, this]);
- this.ignoreClick = false;
- },
- drawTooltip: function(content, x, y, options) {
- var mt = this.getMouseTrack(),
- style = 'opacity:0.7;background-color:#000;color:#fff;display:none;position:absolute;padding:2px 8px;-moz-border-radius:4px;border-radius:4px;white-space:nowrap;',
- p = options.position,
- m = options.margin,
- plotOffset = this.plotOffset;
-
- if(x !== null && y !== null){
- if (!options.relative) { // absolute to the canvas
- if(p.charAt(0) == 'n') style += 'top:' + (m + plotOffset.top) + 'px;bottom:auto;';
- else if(p.charAt(0) == 's') style += 'bottom:' + (m + plotOffset.bottom) + 'px;top:auto;';
- if(p.charAt(1) == 'e') style += 'right:' + (m + plotOffset.right) + 'px;left:auto;';
- else if(p.charAt(1) == 'w') style += 'left:' + (m + plotOffset.left) + 'px;right:auto;';
- }
- else { // relative to the mouse
- if(p.charAt(0) == 'n') style += 'bottom:' + (m - plotOffset.top - y + this.canvasHeight) + 'px;top:auto;';
- else if(p.charAt(0) == 's') style += 'top:' + (m + plotOffset.top + y) + 'px;bottom:auto;';
- if(p.charAt(1) == 'e') style += 'left:' + (m + plotOffset.left + x) + 'px;right:auto;';
- else if(p.charAt(1) == 'w') style += 'right:' + (m - plotOffset.left - x + this.canvasWidth) + 'px;left:auto;';
- }
-
- mt.style.cssText = style;
- D.empty(mt);
- D.insert(mt, content);
- D.show(mt);
- }
- else {
- D.hide(mt);
- }
- },
-
- clip: function (ctx) {
-
- var
- o = this.plotOffset,
- w = this.canvasWidth,
- h = this.canvasHeight;
-
- ctx = ctx || this.ctx;
-
- if (flotr.isIE && flotr.isIE < 9) {
- // Clipping for excanvas :-(
- ctx.save();
- ctx.fillStyle = this.processColor(this.options.ieBackgroundColor);
- ctx.fillRect(0, 0, w, o.top);
- ctx.fillRect(0, 0, o.left, h);
- ctx.fillRect(0, h - o.bottom, w, o.bottom);
- ctx.fillRect(w - o.right, 0, o.right,h);
- ctx.restore();
- } else {
- ctx.clearRect(0, 0, w, o.top);
- ctx.clearRect(0, 0, o.left, h);
- ctx.clearRect(0, h - o.bottom, w, o.bottom);
- ctx.clearRect(w - o.right, 0, o.right,h);
- }
- },
-
- _initMembers: function() {
- this._handles = [];
- this.lastMousePos = {pageX: null, pageY: null };
- this.plotOffset = {left: 0, right: 0, top: 0, bottom: 0};
- this.ignoreClick = true;
- this.prevHit = null;
- },
-
- _initGraphTypes: function() {
- _.each(flotr.graphTypes, function(handler, graphType){
- this[graphType] = flotr.clone(handler);
- }, this);
- },
-
- _initEvents: function () {
-
- var
- el = this.el,
- touchendHandler, movement, touchend;
-
- if ('ontouchstart' in el) {
-
- touchendHandler = _.bind(function (e) {
- touchend = true;
- E.stopObserving(document, 'touchend', touchendHandler);
- E.fire(el, 'flotr:mouseup', [event, this]);
- this.multitouches = null;
-
- if (!movement) {
- this.clickHandler(e);
- }
- }, this);
-
- this.observe(this.overlay, 'touchstart', _.bind(function (e) {
- movement = false;
- touchend = false;
- this.ignoreClick = false;
-
- if (e.touches && e.touches.length > 1) {
- this.multitouches = e.touches;
- }
-
- E.fire(el, 'flotr:mousedown', [event, this]);
- this.observe(document, 'touchend', touchendHandler);
- }, this));
-
- this.observe(this.overlay, 'touchmove', _.bind(function (e) {
-
- var pos = this.getEventPosition(e);
-
- e.preventDefault();
-
- movement = true;
-
- if (this.multitouches || (e.touches && e.touches.length > 1)) {
- this.multitouches = e.touches;
- } else {
- if (!touchend) {
- E.fire(el, 'flotr:mousemove', [event, pos, this]);
- }
- }
- this.lastMousePos = pos;
- }, this));
-
- } else {
- this.
- observe(this.overlay, 'mousedown', _.bind(this.mouseDownHandler, this)).
- observe(el, 'mousemove', _.bind(this.mouseMoveHandler, this)).
- observe(this.overlay, 'click', _.bind(this.clickHandler, this)).
- observe(el, 'mouseout', function () {
- E.fire(el, 'flotr:mouseout');
- });
- }
- },
-
- /**
- * Initializes the canvas and it's overlay canvas element. When the browser is IE, this makes use
- * of excanvas. The overlay canvas is inserted for displaying interactions. After the canvas elements
- * are created, the elements are inserted into the container element.
- */
- _initCanvas: function(){
- var el = this.el,
- o = this.options,
- children = el.children,
- removedChildren = [],
- child, i,
- size, style;
-
- // Empty the el
- for (i = children.length; i--;) {
- child = children[i];
- if (!this.canvas && child.className === 'flotr-canvas') {
- this.canvas = child;
- } else if (!this.overlay && child.className === 'flotr-overlay') {
- this.overlay = child;
- } else {
- removedChildren.push(child);
- }
- }
- for (i = removedChildren.length; i--;) {
- el.removeChild(removedChildren[i]);
- }
-
- D.setStyles(el, {position: 'relative'}); // For positioning labels and overlay.
- size = {};
- size.width = el.clientWidth;
- size.height = el.clientHeight;
-
- if(size.width <= 0 || size.height <= 0 || o.resolution <= 0){
- throw 'Invalid dimensions for plot, width = ' + size.width + ', height = ' + size.height + ', resolution = ' + o.resolution;
- }
-
- // Main canvas for drawing graph types
- this.canvas = getCanvas(this.canvas, 'canvas');
- // Overlay canvas for interactive features
- this.overlay = getCanvas(this.overlay, 'overlay');
- this.ctx = getContext(this.canvas);
- this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
- this.octx = getContext(this.overlay);
- this.octx.clearRect(0, 0, this.overlay.width, this.overlay.height);
- this.canvasHeight = size.height;
- this.canvasWidth = size.width;
- this.textEnabled = !!this.ctx.drawText || !!this.ctx.fillText; // Enable text functions
-
- function getCanvas(canvas, name){
- if(!canvas){
- canvas = D.create('canvas');
- if (typeof FlashCanvas != "undefined" && typeof canvas.getContext === 'function') {
- FlashCanvas.initElement(canvas);
- }
- canvas.className = 'flotr-'+name;
- canvas.style.cssText = 'position:absolute;left:0px;top:0px;';
- D.insert(el, canvas);
- }
- _.each(size, function(size, attribute){
- D.show(canvas);
- if (name == 'canvas' && canvas.getAttribute(attribute) === size) {
- return;
- }
- canvas.setAttribute(attribute, size * o.resolution);
- canvas.style[attribute] = size + 'px';
- });
- canvas.context_ = null; // Reset the ExCanvas context
- return canvas;
- }
-
- function getContext(canvas){
- if(window.G_vmlCanvasManager) window.G_vmlCanvasManager.initElement(canvas); // For ExCanvas
- var context = canvas.getContext('2d');
- if(!window.G_vmlCanvasManager) context.scale(o.resolution, o.resolution);
- return context;
- }
- },
-
- _initPlugins: function(){
- // TODO Should be moved to flotr and mixed in.
- _.each(flotr.plugins, function(plugin, name){
- _.each(plugin.callbacks, function(fn, c){
- this.observe(this.el, c, _.bind(fn, this));
- }, this);
- this[name] = flotr.clone(plugin);
- _.each(this[name], function(fn, p){
- if (_.isFunction(fn))
- this[name][p] = _.bind(fn, this);
- }, this);
- }, this);
- },
-
- /**
- * Sets options and initializes some variables and color specific values, used by the constructor.
- * @param {Object} opts - options object
- */
- _initOptions: function(opts){
- var options = flotr.clone(flotr.defaultOptions);
- options.x2axis = _.extend(_.clone(options.xaxis), options.x2axis);
- options.y2axis = _.extend(_.clone(options.yaxis), options.y2axis);
- this.options = flotr.merge(opts || {}, options);
-
- if (this.options.grid.minorVerticalLines === null &&
- this.options.xaxis.scaling === 'logarithmic') {
- this.options.grid.minorVerticalLines = true;
- }
- if (this.options.grid.minorHorizontalLines === null &&
- this.options.yaxis.scaling === 'logarithmic') {
- this.options.grid.minorHorizontalLines = true;
- }
-
- E.fire(this.el, 'flotr:afterinitoptions', [this]);
-
- this.axes = flotr.Axis.getAxes(this.options);
-
- // Initialize some variables used throughout this function.
- var assignedColors = [],
- colors = [],
- ln = this.series.length,
- neededColors = this.series.length,
- oc = this.options.colors,
- usedColors = [],
- variation = 0,
- c, i, j, s;
-
- // Collect user-defined colors from series.
- for(i = neededColors - 1; i > -1; --i){
- c = this.series[i].color;
- if(c){
- --neededColors;
- if(_.isNumber(c)) assignedColors.push(c);
- else usedColors.push(flotr.Color.parse(c));
- }
- }
-
- // Calculate the number of colors that need to be generated.
- for(i = assignedColors.length - 1; i > -1; --i)
- neededColors = Math.max(neededColors, assignedColors[i] + 1);
-
- // Generate needed number of colors.
- for(i = 0; colors.length < neededColors;){
- c = (oc.length == i) ? new flotr.Color(100, 100, 100) : flotr.Color.parse(oc[i]);
-
- // Make sure each serie gets a different color.
- var sign = variation % 2 == 1 ? -1 : 1,
- factor = 1 + sign * Math.ceil(variation / 2) * 0.2;
- c.scale(factor, factor, factor);
-
- /**
- * @todo if we're getting too close to something else, we should probably skip this one
- */
- colors.push(c);
-
- if(++i >= oc.length){
- i = 0;
- ++variation;
- }
- }
-
- // Fill the options with the generated colors.
- for(i = 0, j = 0; i < ln; ++i){
- s = this.series[i];
-
- // Assign the color.
- if (!s.color){
- s.color = colors[j++].toString();
- }else if(_.isNumber(s.color)){
- s.color = colors[s.color].toString();
- }
-
- // Every series needs an axis
- if (!s.xaxis) s.xaxis = this.axes.x;
- if (s.xaxis == 1) s.xaxis = this.axes.x;
- else if (s.xaxis == 2) s.xaxis = this.axes.x2;
-
- if (!s.yaxis) s.yaxis = this.axes.y;
- if (s.yaxis == 1) s.yaxis = this.axes.y;
- else if (s.yaxis == 2) s.yaxis = this.axes.y2;
-
- // Apply missing options to the series.
- for (var t in flotr.graphTypes){
- s[t] = _.extend(_.clone(this.options[t]), s[t]);
- }
- s.mouse = _.extend(_.clone(this.options.mouse), s.mouse);
-
- if (_.isUndefined(s.shadowSize)) s.shadowSize = this.options.shadowSize;
- }
- },
-
- _setEl: function(el) {
- if (!el) throw 'The target container doesn\'t exist';
- else if (el.graph instanceof Graph) el.graph.destroy();
- else if (!el.clientWidth) throw 'The target container must be visible';
-
- el.graph = this;
- this.el = el;
- }
-};
-
-Flotr.Graph = Graph;
+ Graph.prototype = {
+
+ destroy: function () {
+ E.fire(this.el, 'flotr:destroy');
+ _.each(this._handles, function (handle) {
+ E.stopObserving.apply(this, handle);
+ });
+ this._handles = [];
+ this.el.graph = null;
+ },
+
+ observe: observe,
+
+ /**
+ * @deprecated
+ */
+ _observe: observe,
+
+ processColor: function (color, options) {
+ var o = { x1: 0, y1: 0, x2: this.plotWidth, y2: this.plotHeight, opacity: 1, ctx: this.ctx };
+ _.extend(o, options);
+ return flotr.Color.processColor(color, o);
+ },
+ /**
+ * Function determines the min and max values for the xaxis and yaxis.
+ *
+ * TODO logarithmic range validation (consideration of 0)
+ */
+ findDataRanges: function () {
+ var a = this.axes,
+ xaxis, yaxis, range;
+
+ _.each(this.series, function (series) {
+ range = series.getRange();
+ if (range) {
+ xaxis = series.xaxis;
+ yaxis = series.yaxis;
+ xaxis.datamin = Math.min(range.xmin, xaxis.datamin);
+ xaxis.datamax = Math.max(range.xmax, xaxis.datamax);
+ yaxis.datamin = Math.min(range.ymin, yaxis.datamin);
+ yaxis.datamax = Math.max(range.ymax, yaxis.datamax);
+ xaxis.used = (xaxis.used || range.xused);
+ yaxis.used = (yaxis.used || range.yused);
+ }
+ }, this);
+
+ // Check for empty data, no data case (none used)
+ if (!a.x.used && !a.x2.used) a.x.used = true;
+ if (!a.y.used && !a.y2.used) a.y.used = true;
+
+ _.each(a, function (axis) {
+ axis.calculateRange();
+ });
+
+ var
+ types = _.keys(flotr.graphTypes),
+ drawn = false;
+
+ _.each(this.series, function (series) {
+ if (series.hide) return;
+ _.each(types, function (type) {
+ if (series[type] && series[type].show) {
+ this.extendRange(type, series);
+ drawn = true;
+ }
+ }, this);
+ if (!drawn) {
+ this.extendRange(this.options.defaultType, series);
+ }
+ }, this);
+ },
+
+ extendRange: function (type, series) {
+ if (this[type].extendRange) this[type].extendRange(series, series.data, series[type], this[type]);
+ if (this[type].extendYRange) this[type].extendYRange(series.yaxis, series.data, series[type], this[type]);
+ if (this[type].extendXRange) this[type].extendXRange(series.xaxis, series.data, series[type], this[type]);
+ },
+
+ /**
+ * Calculates axis label sizes.
+ */
+ calculateSpacing: function () {
+
+ var a = this.axes,
+ options = this.options,
+ series = this.series,
+ margin = options.grid.labelMargin,
+ T = this._text,
+ x = a.x,
+ x2 = a.x2,
+ y = a.y,
+ y2 = a.y2,
+ maxOutset = options.grid.outlineWidth,
+ i, j, l, dim;
+
+ // TODO post refactor, fix this
+ _.each(a, function (axis) {
+ axis.calculateTicks();
+ axis.calculateTextDimensions(T, options);
+ });
+
+ // Title height
+ dim = T.dimensions(
+ options.title,
+ {size: options.fontSize * 1.5},
+ 'font-size:1em;font-weight:bold;',
+ 'flotr-title'
+ );
+ this.titleHeight = dim.height;
+
+ // Subtitle height
+ dim = T.dimensions(
+ options.subtitle,
+ {size: options.fontSize},
+ 'font-size:smaller;',
+ 'flotr-subtitle'
+ );
+ this.subtitleHeight = dim.height;
+
+ for (j = 0; j < options.length; ++j) {
+ if (series[j].points.show) {
+ maxOutset = Math.max(maxOutset, series[j].points.radius + series[j].points.lineWidth / 2);
+ }
+ }
+
+ var p = this.plotOffset;
+ if (x.options.margin === false) {
+ p.bottom = 0;
+ p.top = 0;
+ } else {
+ p.bottom += (options.grid.circular ? 0 : (x.used && x.options.showLabels ? (x.maxLabel.height + margin) : 0)) +
+ (x.used && x.options.title ? (x.titleSize.height + margin) : 0) + maxOutset;
+
+ p.top += (options.grid.circular ? 0 : (x2.used && x2.options.showLabels ? (x2.maxLabel.height + margin) : 0)) +
+ (x2.used && x2.options.title ? (x2.titleSize.height + margin) : 0) + this.subtitleHeight + this.titleHeight + maxOutset;
+ }
+ if (y.options.margin === false) {
+ p.left = 0;
+ p.right = 0;
+ } else {
+ p.left += (options.grid.circular ? 0 : (y.used && y.options.showLabels ? (y.maxLabel.width + margin) : 0)) +
+ (y.used && y.options.title ? (y.titleSize.width + margin) : 0) + maxOutset;
+
+ p.right += (options.grid.circular ? 0 : (y2.used && y2.options.showLabels ? (y2.maxLabel.width + margin) : 0)) +
+ (y2.used && y2.options.title ? (y2.titleSize.width + margin) : 0) + maxOutset;
+ }
+
+ p.top = Math.floor(p.top); // In order the outline not to be blured
+
+ this.plotWidth = this.canvasWidth - p.left - p.right;
+ this.plotHeight = this.canvasHeight - p.bottom - p.top;
+
+ // TODO post refactor, fix this
+ x.length = x2.length = this.plotWidth;
+ y.length = y2.length = this.plotHeight;
+ y.offset = y2.offset = this.plotHeight;
+ x.setScale();
+ x2.setScale();
+ y.setScale();
+ y2.setScale();
+ },
+ /**
+ * Draws grid, labels, series and outline.
+ */
+ draw: function (after) {
+
+ var
+ context = this.ctx,
+ i;
+
+ E.fire(this.el, 'flotr:beforedraw', [this.series, this]);
+
+ if (this.series.length) {
+
+ context.save();
+ context.translate(this.plotOffset.left, this.plotOffset.top);
+
+ for (i = 0; i < this.series.length; i++) {
+ if (!this.series[i].hide) this.drawSeries(this.series[i]);
+ }
+
+ context.restore();
+ this.clip();
+ }
+
+ E.fire(this.el, 'flotr:afterdraw', [this.series, this]);
+ if (after) after();
+ },
+ /**
+ * Actually draws the graph.
+ * @param {Object} series - series to draw
+ */
+ drawSeries: function (series) {
+
+ function drawChart(series, typeKey) {
+ var options = this.getOptions(series, typeKey);
+ this[typeKey].draw(options);
+ }
+
+ var drawn = false;
+ series = series || this.series;
+
+ _.each(flotr.graphTypes, function (type, typeKey) {
+ if (series[typeKey] && series[typeKey].show && this[typeKey]) {
+ drawn = true;
+ drawChart.call(this, series, typeKey);
+ }
+ }, this);
+
+ if (!drawn) drawChart.call(this, series, this.options.defaultType);
+ },
+
+ getOptions: function (series, typeKey) {
+ var
+ type = series[typeKey],
+ graphType = this[typeKey],
+ options = {
+ context: this.ctx,
+ width: this.plotWidth,
+ height: this.plotHeight,
+ fontSize: this.options.fontSize,
+ fontColor: this.options.fontColor,
+ textEnabled: this.textEnabled,
+ htmlText: this.options.HtmlText,
+ text: this._text, // TODO Is this necessary?
+ element: this.el,
+ data: series.data,
+ color: series.color,
+ shadowSize: series.shadowSize,
+ xScale: _.bind(series.xaxis.d2p, series.xaxis),
+ yScale: _.bind(series.yaxis.d2p, series.yaxis)
+ };
+
+ options = flotr.merge(type, options);
+
+ // Fill
+ options.fillStyle = this.processColor(
+ type.fillColor || series.color,
+ {opacity: type.fillOpacity}
+ );
+
+ return options;
+ },
+ /**
+ * Calculates the coordinates from a mouse event object.
+ * @param {Event} event - Mouse Event object.
+ * @return {Object} Object with coordinates of the mouse.
+ */
+ getEventPosition: function (e) {
+
+ var
+ d = document,
+ b = d.body,
+ de = d.documentElement,
+ axes = this.axes,
+ plotOffset = this.plotOffset,
+ lastMousePos = this.lastMousePos,
+ pointer = E.eventPointer(e),
+ dx = pointer.x - lastMousePos.pageX,
+ dy = pointer.y - lastMousePos.pageY,
+ r, rx, ry;
+
+ if ('ontouchstart' in this.el) {
+ r = D.position(this.overlay);
+ rx = pointer.x - r.left - plotOffset.left;
+ ry = pointer.y - r.top - plotOffset.top;
+ } else {
+ r = this.overlay.getBoundingClientRect();
+ rx = e.clientX - r.left - plotOffset.left - b.scrollLeft - de.scrollLeft;
+ ry = e.clientY - r.top - plotOffset.top - b.scrollTop - de.scrollTop;
+ }
+
+ return {
+ x: axes.x.p2d(rx),
+ x2: axes.x2.p2d(rx),
+ y: axes.y.p2d(ry),
+ y2: axes.y2.p2d(ry),
+ relX: rx,
+ relY: ry,
+ dX: dx,
+ dY: dy,
+ absX: pointer.x,
+ absY: pointer.y,
+ pageX: pointer.x,
+ pageY: pointer.y
+ };
+ },
+ /**
+ * Observes the 'click' event and fires the 'flotr:click' event.
+ * @param {Event} event - 'click' Event object.
+ */
+ clickHandler: function (event) {
+ if (this.ignoreClick) {
+ this.ignoreClick = false;
+ return this.ignoreClick;
+ }
+ E.fire(this.el, 'flotr:click', [this.getEventPosition(event), this]);
+ },
+ /**
+ * Observes mouse movement over the graph area. Fires the 'flotr:mousemove' event.
+ * @param {Event} event - 'mousemove' Event object.
+ */
+ mouseMoveHandler: function (event) {
+ if (this.mouseDownMoveHandler) return;
+ var pos = this.getEventPosition(event);
+ E.fire(this.el, 'flotr:mousemove', [event, pos, this]);
+ this.lastMousePos = pos;
+ },
+ /**
+ * Observes the 'mousedown' event.
+ * @param {Event} event - 'mousedown' Event object.
+ */
+ mouseDownHandler: function (event) {
+
+ /*
+ // @TODO Context menu?
+ if(event.isRightClick()) {
+ event.stop();
+
+ var overlay = this.overlay;
+ overlay.hide();
+
+ function cancelContextMenu () {
+ overlay.show();
+ E.stopObserving(document, 'mousemove', cancelContextMenu);
+ }
+ E.observe(document, 'mousemove', cancelContextMenu);
+ return;
+ }
+ */
+
+ if (this.mouseUpHandler) return;
+ this.mouseUpHandler = _.bind(function (e) {
+ E.stopObserving(document, 'mouseup', this.mouseUpHandler);
+ E.stopObserving(document, 'mousemove', this.mouseDownMoveHandler);
+ this.mouseDownMoveHandler = null;
+ this.mouseUpHandler = null;
+ // @TODO why?
+ //e.stop();
+ E.fire(this.el, 'flotr:mouseup', [e, this]);
+ }, this);
+ this.mouseDownMoveHandler = _.bind(function (e) {
+ var pos = this.getEventPosition(e);
+ E.fire(this.el, 'flotr:mousemove', [event, pos, this]);
+ this.lastMousePos = pos;
+ }, this);
+ E.observe(document, 'mouseup', this.mouseUpHandler);
+ E.observe(document, 'mousemove', this.mouseDownMoveHandler);
+ E.fire(this.el, 'flotr:mousedown', [event, this]);
+ this.ignoreClick = false;
+ },
+ drawTooltip: function (content, x, y, options) {
+ var mt = this.getMouseTrack(),
+ style = 'opacity:0.7;background-color:#000;color:#fff;display:none;position:absolute;padding:2px 8px;-moz-border-radius:4px;border-radius:4px;white-space:nowrap;',
+ p = options.position,
+ m = options.margin,
+ plotOffset = this.plotOffset;
+
+ if (x !== null && y !== null) {
+ if (!options.relative) { // absolute to the canvas
+ if (p.charAt(0) == 'n') style += 'top:' + (m + plotOffset.top) + 'px;bottom:auto;';
+ else if (p.charAt(0) == 's') style += 'bottom:' + (m + plotOffset.bottom) + 'px;top:auto;';
+ if (p.charAt(1) == 'e') style += 'right:' + (m + plotOffset.right) + 'px;left:auto;';
+ else if (p.charAt(1) == 'w') style += 'left:' + (m + plotOffset.left) + 'px;right:auto;';
+ }
+ else { // relative to the mouse
+ if (p.charAt(0) == 'n') style += 'bottom:' + (m - plotOffset.top - y + this.canvasHeight) + 'px;top:auto;';
+ else if (p.charAt(0) == 's') style += 'top:' + (m + plotOffset.top + y) + 'px;bottom:auto;';
+ if (p.charAt(1) == 'e') style += 'left:' + (m + plotOffset.left + x) + 'px;right:auto;';
+ else if (p.charAt(1) == 'w') style += 'right:' + (m - plotOffset.left - x + this.canvasWidth) + 'px;left:auto;';
+ }
+
+ mt.style.cssText = style;
+ D.empty(mt);
+ D.insert(mt, content);
+ D.show(mt);
+ }
+ else {
+ D.hide(mt);
+ }
+ },
+
+ clip: function (ctx) {
+
+ var
+ o = this.plotOffset,
+ w = this.canvasWidth,
+ h = this.canvasHeight;
+
+ ctx = ctx || this.ctx;
+
+ if (flotr.isIE && flotr.isIE < 9) {
+ // Clipping for excanvas :-(
+ ctx.save();
+ ctx.fillStyle = this.processColor(this.options.ieBackgroundColor);
+ ctx.fillRect(0, 0, w, o.top);
+ ctx.fillRect(0, 0, o.left, h);
+ ctx.fillRect(0, h - o.bottom, w, o.bottom);
+ ctx.fillRect(w - o.right, 0, o.right, h);
+ ctx.restore();
+ } else {
+ ctx.clearRect(0, 0, w, o.top);
+ ctx.clearRect(0, 0, o.left, h);
+ ctx.clearRect(0, h - o.bottom, w, o.bottom);
+ ctx.clearRect(w - o.right, 0, o.right, h);
+ }
+ },
+
+ _initMembers: function () {
+ this._handles = [];
+ this.lastMousePos = {pageX: null, pageY: null };
+ this.plotOffset = {left: 0, right: 0, top: 0, bottom: 0};
+ this.ignoreClick = true;
+ this.prevHit = null;
+ },
+
+ _initGraphTypes: function () {
+ _.each(flotr.graphTypes, function (handler, graphType) {
+ this[graphType] = flotr.clone(handler);
+ }, this);
+ },
+
+ _initEvents: function () {
+
+ var
+ el = this.el,
+ touchendHandler, movement, touchend;
+
+ if ('ontouchstart' in el) {
+
+ touchendHandler = _.bind(function (e) {
+ touchend = true;
+ E.stopObserving(document, 'touchend', touchendHandler);
+ E.fire(el, 'flotr:mouseup', [event, this]);
+ this.multitouches = null;
+
+ if (!movement) {
+ this.clickHandler(e);
+ }
+ }, this);
+
+ this.observe(this.overlay, 'touchstart', _.bind(function (e) {
+ movement = false;
+ touchend = false;
+ this.ignoreClick = false;
+
+ if (e.touches && e.touches.length > 1) {
+ this.multitouches = e.touches;
+ }
+
+ E.fire(el, 'flotr:mousedown', [event, this]);
+ this.observe(document, 'touchend', touchendHandler);
+ }, this));
+
+ this.observe(this.overlay, 'touchmove', _.bind(function (e) {
+
+ var pos = this.getEventPosition(e);
+
+ e.preventDefault();
+
+ movement = true;
+
+ if (this.multitouches || (e.touches && e.touches.length > 1)) {
+ this.multitouches = e.touches;
+ } else {
+ if (!touchend) {
+ E.fire(el, 'flotr:mousemove', [event, pos, this]);
+ }
+ }
+ this.lastMousePos = pos;
+ }, this));
+
+ } else {
+ this.
+ observe(this.overlay, 'mousedown', _.bind(this.mouseDownHandler, this)).
+ observe(el, 'mousemove', _.bind(this.mouseMoveHandler, this)).
+ observe(this.overlay, 'click', _.bind(this.clickHandler, this)).
+ observe(el, 'mouseout', function () {
+ E.fire(el, 'flotr:mouseout');
+ });
+ }
+ },
+
+ /**
+ * Initializes the canvas and it's overlay canvas element. When the browser is IE, this makes use
+ * of excanvas. The overlay canvas is inserted for displaying interactions. After the canvas elements
+ * are created, the elements are inserted into the container element.
+ */
+ _initCanvas: function () {
+ var el = this.el,
+ o = this.options,
+ children = el.children,
+ removedChildren = [],
+ child, i,
+ size, style;
+
+ // Empty the el
+ for (i = children.length; i--;) {
+ child = children[i];
+ if (!this.canvas && child.className === 'flotr-canvas') {
+ this.canvas = child;
+ } else if (!this.overlay && child.className === 'flotr-overlay') {
+ this.overlay = child;
+ } else {
+ removedChildren.push(child);
+ }
+ }
+ for (i = removedChildren.length; i--;) {
+ el.removeChild(removedChildren[i]);
+ }
+
+ D.setStyles(el, {position: 'relative'}); // For positioning labels and overlay.
+ size = {};
+ size.width = el.clientWidth;
+ size.height = el.clientHeight;
+
+ if (size.width <= 0 || size.height <= 0 || o.resolution <= 0) {
+ throw 'Invalid dimensions for plot, width = ' + size.width + ', height = ' + size.height + ', resolution = ' + o.resolution;
+ }
+
+ // Main canvas for drawing graph types
+ this.canvas = getCanvas(this.canvas, 'canvas');
+ // Overlay canvas for interactive features
+ this.overlay = getCanvas(this.overlay, 'overlay');
+ this.ctx = getContext(this.canvas);
+ this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
+ this.octx = getContext(this.overlay);
+ this.octx.clearRect(0, 0, this.overlay.width, this.overlay.height);
+ this.canvasHeight = size.height;
+ this.canvasWidth = size.width;
+ this.textEnabled = !!this.ctx.drawText || !!this.ctx.fillText; // Enable text functions
+
+ function getCanvas(canvas, name) {
+ if (!canvas) {
+ canvas = D.create('canvas');
+ if (typeof FlashCanvas != "undefined" && typeof canvas.getContext === 'function') {
+ FlashCanvas.initElement(canvas);
+ }
+ canvas.className = 'flotr-' + name;
+ canvas.style.cssText = 'position:absolute;left:0px;top:0px;';
+ D.insert(el, canvas);
+ }
+ _.each(size, function (size, attribute) {
+ D.show(canvas);
+ if (name == 'canvas' && canvas.getAttribute(attribute) === size) {
+ return;
+ }
+ canvas.setAttribute(attribute, size * o.resolution);
+ canvas.style[attribute] = size + 'px';
+ });
+ canvas.context_ = null; // Reset the ExCanvas context
+ return canvas;
+ }
+
+ function getContext(canvas) {
+ if (window.G_vmlCanvasManager) window.G_vmlCanvasManager.initElement(canvas); // For ExCanvas
+ var context = canvas.getContext('2d');
+ if (!window.G_vmlCanvasManager) context.scale(o.resolution, o.resolution);
+ return context;
+ }
+ },
+
+ _initPlugins: function () {
+ // TODO Should be moved to flotr and mixed in.
+ _.each(flotr.plugins, function (plugin, name) {
+ _.each(plugin.callbacks, function (fn, c) {
+ this.observe(this.el, c, _.bind(fn, this));
+ }, this);
+ this[name] = flotr.clone(plugin);
+ _.each(this[name], function (fn, p) {
+ if (_.isFunction(fn))
+ this[name][p] = _.bind(fn, this);
+ }, this);
+ }, this);
+ },
+
+ /**
+ * Sets options and initializes some variables and color specific values, used by the constructor.
+ * @param {Object} opts - options object
+ */
+ _initOptions: function (opts) {
+ var options = flotr.clone(flotr.defaultOptions);
+ options.x2axis = _.extend(_.clone(options.xaxis), options.x2axis);
+ options.y2axis = _.extend(_.clone(options.yaxis), options.y2axis);
+ this.options = flotr.merge(opts || {}, options);
+
+ if (this.options.grid.minorVerticalLines === null &&
+ this.options.xaxis.scaling === 'logarithmic') {
+ this.options.grid.minorVerticalLines = true;
+ }
+ if (this.options.grid.minorHorizontalLines === null &&
+ this.options.yaxis.scaling === 'logarithmic') {
+ this.options.grid.minorHorizontalLines = true;
+ }
+
+ E.fire(this.el, 'flotr:afterinitoptions', [this]);
+
+ this.axes = flotr.Axis.getAxes(this.options);
+
+ // Initialize some variables used throughout this function.
+ var assignedColors = [],
+ colors = [],
+ ln = this.series.length,
+ neededColors = this.series.length,
+ oc = this.options.colors,
+ usedColors = [],
+ variation = 0,
+ c, i, j, s;
+
+ // Collect user-defined colors from series.
+ for (i = neededColors - 1; i > -1; --i) {
+ c = this.series[i].color;
+ if (c) {
+ --neededColors;
+ if (_.isNumber(c)) assignedColors.push(c);
+ else usedColors.push(flotr.Color.parse(c));
+ }
+ }
+
+ // Calculate the number of colors that need to be generated.
+ for (i = assignedColors.length - 1; i > -1; --i)
+ neededColors = Math.max(neededColors, assignedColors[i] + 1);
+
+ // Generate needed number of colors.
+ for (i = 0; colors.length < neededColors;) {
+ c = (oc.length == i) ? new flotr.Color(100, 100, 100) : flotr.Color.parse(oc[i]);
+
+ // Make sure each serie gets a different color.
+ var sign = variation % 2 == 1 ? -1 : 1,
+ factor = 1 + sign * Math.ceil(variation / 2) * 0.2;
+ c.scale(factor, factor, factor);
+
+ /**
+ * @todo if we're getting too close to something else, we should probably skip this one
+ */
+ colors.push(c);
+
+ if (++i >= oc.length) {
+ i = 0;
+ ++variation;
+ }
+ }
+
+ // Fill the options with the generated colors.
+ for (i = 0, j = 0; i < ln; ++i) {
+ s = this.series[i];
+
+ // Assign the color.
+ if (!s.color) {
+ s.color = colors[j++].toString();
+ } else if (_.isNumber(s.color)) {
+ s.color = colors[s.color].toString();
+ }
+
+ // Every series needs an axis
+ if (!s.xaxis) s.xaxis = this.axes.x;
+ if (s.xaxis == 1) s.xaxis = this.axes.x;
+ else if (s.xaxis == 2) s.xaxis = this.axes.x2;
+
+ if (!s.yaxis) s.yaxis = this.axes.y;
+ if (s.yaxis == 1) s.yaxis = this.axes.y;
+ else if (s.yaxis == 2) s.yaxis = this.axes.y2;
+
+ // Apply missing options to the series.
+ for (var t in flotr.graphTypes) {
+ s[t] = _.extend(_.clone(this.options[t]), s[t]);
+ }
+ s.mouse = _.extend(_.clone(this.options.mouse), s.mouse);
+
+ if (_.isUndefined(s.shadowSize)) s.shadowSize = this.options.shadowSize;
+ }
+ },
+
+ _setEl: function (el) {
+ if (!el) throw 'The target container doesn\'t exist';
+ else if (el.graph instanceof Graph) el.graph.destroy();
+ else if (!el.clientWidth) throw 'The target container must be visible';
+
+ el.graph = this;
+ this.el = el;
+ }
+ };
+
+ Flotr.Graph = Graph;
})();
@@ -3046,305 +3094,309 @@
(function () {
-var
- _ = Flotr._,
- LOGARITHMIC = 'logarithmic';
-
-function Axis (o) {
-
- this.orientation = 1;
- this.offset = 0;
- this.datamin = Number.MAX_VALUE;
- this.datamax = -Number.MAX_VALUE;
-
- _.extend(this, o);
-
- this._setTranslations();
-}
+ var
+ _ = Flotr._,
+ LOGARITHMIC = 'logarithmic';
+
+ function Axis(o) {
+
+ this.orientation = 1;
+ this.offset = 0;
+ this.datamin = Number.MAX_VALUE;
+ this.datamax = -Number.MAX_VALUE;
+
+ _.extend(this, o);
+
+ this._setTranslations();
+ }
// Prototype
-Axis.prototype = {
-
- setScale : function () {
- var length = this.length;
- if (this.options.scaling == LOGARITHMIC) {
- this.scale = length / (log(this.max, this.options.base) - log(this.min, this.options.base));
- } else {
- this.scale = length / (this.max - this.min);
+ Axis.prototype = {
+
+ setScale: function () {
+ var length = this.length;
+ if (this.options.scaling == LOGARITHMIC) {
+ this.scale = length / (log(this.max, this.options.base) - log(this.min, this.options.base));
+ } else {
+ this.scale = length / (this.max - this.min);
+ }
+ },
+
+ calculateTicks: function () {
+ var options = this.options;
+
+ this.ticks = [];
+ this.minorTicks = [];
+
+ // User Ticks
+ if (options.ticks) {
+ this._cleanUserTicks(options.ticks, this.ticks);
+ this._cleanUserTicks(options.minorTicks || [], this.minorTicks);
+ }
+ else {
+ if (options.mode == 'time') {
+ this._calculateTimeTicks();
+ } else if (options.scaling === 'logarithmic') {
+ this._calculateLogTicks();
+ } else {
+ this._calculateTicks();
+ }
+ }
+
+ // Ticks to strings
+ _.each(this.ticks, function (tick) {
+ tick.label += '';
+ });
+ _.each(this.minorTicks, function (tick) {
+ tick.label += '';
+ });
+ },
+
+ /**
+ * Calculates the range of an axis to apply autoscaling.
+ */
+ calculateRange: function () {
+
+ if (!this.used) return;
+
+ var axis = this,
+ o = axis.options,
+ min = o.min !== null ? o.min : axis.datamin,
+ max = o.max !== null ? o.max : axis.datamax,
+ margin = o.autoscaleMargin;
+
+ if (o.scaling == 'logarithmic') {
+ if (min <= 0) min = axis.datamin;
+
+ // Let it widen later on
+ if (max <= 0) max = min;
+ }
+
+ if (max == min) {
+ var widen = max ? 0.01 : 1.00;
+ if (o.min === null) min -= widen;
+ if (o.max === null) max += widen;
+ }
+
+ if (o.scaling === 'logarithmic') {
+ if (min < 0) min = max / o.base; // Could be the result of widening
+
+ var maxexp = Math.log(max);
+ if (o.base != Math.E) maxexp /= Math.log(o.base);
+ maxexp = Math.ceil(maxexp);
+
+ var minexp = Math.log(min);
+ if (o.base != Math.E) minexp /= Math.log(o.base);
+ minexp = Math.ceil(minexp);
+
+ axis.tickSize = Flotr.getTickSize(o.noTicks, minexp, maxexp, o.tickDecimals === null ? 0 : o.tickDecimals);
+
+ // Try to determine a suitable amount of miniticks based on the length of a decade
+ if (o.minorTickFreq === null) {
+ if (maxexp - minexp > 10)
+ o.minorTickFreq = 0;
+ else if (maxexp - minexp > 5)
+ o.minorTickFreq = 2;
+ else
+ o.minorTickFreq = 5;
+ }
+ } else {
+ axis.tickSize = Flotr.getTickSize(o.noTicks, min, max, o.tickDecimals);
+ }
+
+ axis.min = min;
+ axis.max = max; //extendRange may use axis.min or axis.max, so it should be set before it is caled
+
+ // Autoscaling. @todo This probably fails with log scale. Find a testcase and fix it
+ if (o.min === null && o.autoscale) {
+ axis.min -= axis.tickSize * margin;
+ // Make sure we don't go below zero if all values are positive.
+ if (axis.min < 0 && axis.datamin >= 0) axis.min = 0;
+ axis.min = axis.tickSize * Math.floor(axis.min / axis.tickSize);
+ }
+
+ if (o.max === null && o.autoscale) {
+ axis.max += axis.tickSize * margin;
+ if (axis.max > 0 && axis.datamax <= 0 && axis.datamax != axis.datamin) axis.max = 0;
+ axis.max = axis.tickSize * Math.ceil(axis.max / axis.tickSize);
+ }
+
+ if (axis.min == axis.max) axis.max = axis.min + 1;
+ },
+
+ calculateTextDimensions: function (T, options) {
+
+ var maxLabel = '',
+ length,
+ i;
+
+ if (this.options.showLabels) {
+ for (i = 0; i < this.ticks.length; ++i) {
+ length = this.ticks[i].label.length;
+ if (length > maxLabel.length) {
+ maxLabel = this.ticks[i].label;
+ }
+ }
+ }
+
+ this.maxLabel = T.dimensions(
+ maxLabel,
+ {size: options.fontSize, angle: Flotr.toRad(this.options.labelsAngle)},
+ 'font-size:smaller;',
+ 'flotr-grid-label'
+ );
+
+ this.titleSize = T.dimensions(
+ this.options.title,
+ {size: options.fontSize * 1.2, angle: Flotr.toRad(this.options.titleAngle)},
+ 'font-weight:bold;',
+ 'flotr-axis-title'
+ );
+ },
+
+ _cleanUserTicks: function (ticks, axisTicks) {
+
+ var axis = this, options = this.options,
+ v, i, label, tick;
+
+ if (_.isFunction(ticks)) ticks = ticks({min: axis.min, max: axis.max});
+
+ for (i = 0; i < ticks.length; ++i) {
+ tick = ticks[i];
+ if (typeof(tick) === 'object') {
+ v = tick[0];
+ label = (tick.length > 1) ? tick[1] : options.tickFormatter(v, {min: axis.min, max: axis.max});
+ } else {
+ v = tick;
+ label = options.tickFormatter(v, {min: this.min, max: this.max});
+ }
+ axisTicks[i] = { v: v, label: label };
+ }
+ },
+
+ _calculateTimeTicks: function () {
+ this.ticks = Flotr.Date.generator(this);
+ },
+
+ _calculateLogTicks: function () {
+
+ var axis = this,
+ o = axis.options,
+ v,
+ decadeStart;
+
+ var max = Math.log(axis.max);
+ if (o.base != Math.E) max /= Math.log(o.base);
+ max = Math.ceil(max);
+
+ var min = Math.log(axis.min);
+ if (o.base != Math.E) min /= Math.log(o.base);
+ min = Math.ceil(min);
+
+ for (i = min; i < max; i += axis.tickSize) {
+ decadeStart = (o.base == Math.E) ? Math.exp(i) : Math.pow(o.base, i);
+ // Next decade begins here:
+ var decadeEnd = decadeStart * ((o.base == Math.E) ? Math.exp(axis.tickSize) : Math.pow(o.base, axis.tickSize));
+ var stepSize = (decadeEnd - decadeStart) / o.minorTickFreq;
+
+ axis.ticks.push({v: decadeStart, label: o.tickFormatter(decadeStart, {min: axis.min, max: axis.max})});
+ for (v = decadeStart + stepSize; v < decadeEnd; v += stepSize)
+ axis.minorTicks.push({v: v, label: o.tickFormatter(v, {min: axis.min, max: axis.max})});
+ }
+
+ // Always show the value at the would-be start of next decade (end of this decade)
+ decadeStart = (o.base == Math.E) ? Math.exp(i) : Math.pow(o.base, i);
+ axis.ticks.push({v: decadeStart, label: o.tickFormatter(decadeStart, {min: axis.min, max: axis.max})});
+ },
+
+ _calculateTicks: function () {
+
+ var axis = this,
+ o = axis.options,
+ tickSize = axis.tickSize,
+ min = axis.min,
+ max = axis.max,
+ start = tickSize * Math.ceil(min / tickSize), // Round to nearest multiple of tick size.
+ decimals,
+ minorTickSize,
+ v, v2,
+ i, j;
+
+ if (o.minorTickFreq)
+ minorTickSize = tickSize / o.minorTickFreq;
+
+ // Then store all possible ticks.
+ for (i = 0; (v = v2 = start + i * tickSize) <= max; ++i) {
+
+ // Round (this is always needed to fix numerical instability).
+ decimals = o.tickDecimals;
+ if (decimals === null) decimals = 1 - Math.floor(Math.log(tickSize) / Math.LN10);
+ if (decimals < 0) decimals = 0;
+
+ v = v.toFixed(decimals);
+ axis.ticks.push({ v: v, label: o.tickFormatter(v, {min: axis.min, max: axis.max}) });
+
+ if (o.minorTickFreq) {
+ for (j = 0; j < o.minorTickFreq && (i * tickSize + j * minorTickSize) < max; ++j) {
+ v = v2 + j * minorTickSize;
+ axis.minorTicks.push({ v: v, label: o.tickFormatter(v, {min: axis.min, max: axis.max}) });
+ }
+ }
+ }
+
+ },
+
+ _setTranslations: function (logarithmic) {
+ this.d2p = (logarithmic ? d2pLog : d2p);
+ this.p2d = (logarithmic ? p2dLog : p2d);
+ }
+ };
+
+
+// Static Methods
+ _.extend(Axis, {
+ getAxes: function (options) {
+ return {
+ x: new Axis({options: options.xaxis, n: 1, length: this.plotWidth}),
+ x2: new Axis({options: options.x2axis, n: 2, length: this.plotWidth}),
+ y: new Axis({options: options.yaxis, n: 1, length: this.plotHeight, offset: this.plotHeight, orientation: -1}),
+ y2: new Axis({options: options.y2axis, n: 2, length: this.plotHeight, offset: this.plotHeight, orientation: -1})
+ };
+ }
+ });
+
+
+// Helper Methods
+
+ function d2p(dataValue) {
+ return this.offset + this.orientation * (dataValue - this.min) * this.scale;
}
- },
-
- calculateTicks : function () {
- var options = this.options;
-
- this.ticks = [];
- this.minorTicks = [];
-
- // User Ticks
- if(options.ticks){
- this._cleanUserTicks(options.ticks, this.ticks);
- this._cleanUserTicks(options.minorTicks || [], this.minorTicks);
+
+ function p2d(pointValue) {
+ return (this.offset + this.orientation * pointValue) / this.scale + this.min;
}
- else {
- if (options.mode == 'time') {
- this._calculateTimeTicks();
- } else if (options.scaling === 'logarithmic') {
- this._calculateLogTicks();
- } else {
- this._calculateTicks();
- }
+
+ function d2pLog(dataValue) {
+ return this.offset + this.orientation * (log(dataValue, this.options.base) - log(this.min, this.options.base)) * this.scale;
}
- // Ticks to strings
- _.each(this.ticks, function (tick) { tick.label += ''; });
- _.each(this.minorTicks, function (tick) { tick.label += ''; });
- },
-
- /**
- * Calculates the range of an axis to apply autoscaling.
- */
- calculateRange: function () {
-
- if (!this.used) return;
-
- var axis = this,
- o = axis.options,
- min = o.min !== null ? o.min : axis.datamin,
- max = o.max !== null ? o.max : axis.datamax,
- margin = o.autoscaleMargin;
-
- if (o.scaling == 'logarithmic') {
- if (min <= 0) min = axis.datamin;
-
- // Let it widen later on
- if (max <= 0) max = min;
+ function p2dLog(pointValue) {
+ return exp((this.offset + this.orientation * pointValue) / this.scale + log(this.min, this.options.base), this.options.base);
}
- if (max == min) {
- var widen = max ? 0.01 : 1.00;
- if (o.min === null) min -= widen;
- if (o.max === null) max += widen;
+ function log(value, base) {
+ value = Math.log(Math.max(value, Number.MIN_VALUE));
+ if (base !== Math.E)
+ value /= Math.log(base);
+ return value;
}
- if (o.scaling === 'logarithmic') {
- if (min < 0) min = max / o.base; // Could be the result of widening
-
- var maxexp = Math.log(max);
- if (o.base != Math.E) maxexp /= Math.log(o.base);
- maxexp = Math.ceil(maxexp);
-
- var minexp = Math.log(min);
- if (o.base != Math.E) minexp /= Math.log(o.base);
- minexp = Math.ceil(minexp);
-
- axis.tickSize = Flotr.getTickSize(o.noTicks, minexp, maxexp, o.tickDecimals === null ? 0 : o.tickDecimals);
-
- // Try to determine a suitable amount of miniticks based on the length of a decade
- if (o.minorTickFreq === null) {
- if (maxexp - minexp > 10)
- o.minorTickFreq = 0;
- else if (maxexp - minexp > 5)
- o.minorTickFreq = 2;
- else
- o.minorTickFreq = 5;
- }
- } else {
- axis.tickSize = Flotr.getTickSize(o.noTicks, min, max, o.tickDecimals);
+ function exp(value, base) {
+ return (base === Math.E) ? Math.exp(value) : Math.pow(base, value);
}
- axis.min = min;
- axis.max = max; //extendRange may use axis.min or axis.max, so it should be set before it is caled
-
- // Autoscaling. @todo This probably fails with log scale. Find a testcase and fix it
- if(o.min === null && o.autoscale){
- axis.min -= axis.tickSize * margin;
- // Make sure we don't go below zero if all values are positive.
- if(axis.min < 0 && axis.datamin >= 0) axis.min = 0;
- axis.min = axis.tickSize * Math.floor(axis.min / axis.tickSize);
- }
-
- if(o.max === null && o.autoscale){
- axis.max += axis.tickSize * margin;
- if(axis.max > 0 && axis.datamax <= 0 && axis.datamax != axis.datamin) axis.max = 0;
- axis.max = axis.tickSize * Math.ceil(axis.max / axis.tickSize);
- }
-
- if (axis.min == axis.max) axis.max = axis.min + 1;
- },
-
- calculateTextDimensions : function (T, options) {
-
- var maxLabel = '',
- length,
- i;
-
- if (this.options.showLabels) {
- for (i = 0; i < this.ticks.length; ++i) {
- length = this.ticks[i].label.length;
- if (length > maxLabel.length){
- maxLabel = this.ticks[i].label;
- }
- }
- }
-
- this.maxLabel = T.dimensions(
- maxLabel,
- {size:options.fontSize, angle: Flotr.toRad(this.options.labelsAngle)},
- 'font-size:smaller;',
- 'flotr-grid-label'
- );
-
- this.titleSize = T.dimensions(
- this.options.title,
- {size:options.fontSize*1.2, angle: Flotr.toRad(this.options.titleAngle)},
- 'font-weight:bold;',
- 'flotr-axis-title'
- );
- },
-
- _cleanUserTicks : function (ticks, axisTicks) {
-
- var axis = this, options = this.options,
- v, i, label, tick;
-
- if(_.isFunction(ticks)) ticks = ticks({min : axis.min, max : axis.max});
-
- for(i = 0; i < ticks.length; ++i){
- tick = ticks[i];
- if(typeof(tick) === 'object'){
- v = tick[0];
- label = (tick.length > 1) ? tick[1] : options.tickFormatter(v, {min : axis.min, max : axis.max});
- } else {
- v = tick;
- label = options.tickFormatter(v, {min : this.min, max : this.max});
- }
- axisTicks[i] = { v: v, label: label };
- }
- },
-
- _calculateTimeTicks : function () {
- this.ticks = Flotr.Date.generator(this);
- },
-
- _calculateLogTicks : function () {
-
- var axis = this,
- o = axis.options,
- v,
- decadeStart;
-
- var max = Math.log(axis.max);
- if (o.base != Math.E) max /= Math.log(o.base);
- max = Math.ceil(max);
-
- var min = Math.log(axis.min);
- if (o.base != Math.E) min /= Math.log(o.base);
- min = Math.ceil(min);
-
- for (i = min; i < max; i += axis.tickSize) {
- decadeStart = (o.base == Math.E) ? Math.exp(i) : Math.pow(o.base, i);
- // Next decade begins here:
- var decadeEnd = decadeStart * ((o.base == Math.E) ? Math.exp(axis.tickSize) : Math.pow(o.base, axis.tickSize));
- var stepSize = (decadeEnd - decadeStart) / o.minorTickFreq;
-
- axis.ticks.push({v: decadeStart, label: o.tickFormatter(decadeStart, {min : axis.min, max : axis.max})});
- for (v = decadeStart + stepSize; v < decadeEnd; v += stepSize)
- axis.minorTicks.push({v: v, label: o.tickFormatter(v, {min : axis.min, max : axis.max})});
- }
-
- // Always show the value at the would-be start of next decade (end of this decade)
- decadeStart = (o.base == Math.E) ? Math.exp(i) : Math.pow(o.base, i);
- axis.ticks.push({v: decadeStart, label: o.tickFormatter(decadeStart, {min : axis.min, max : axis.max})});
- },
-
- _calculateTicks : function () {
-
- var axis = this,
- o = axis.options,
- tickSize = axis.tickSize,
- min = axis.min,
- max = axis.max,
- start = tickSize * Math.ceil(min / tickSize), // Round to nearest multiple of tick size.
- decimals,
- minorTickSize,
- v, v2,
- i, j;
-
- if (o.minorTickFreq)
- minorTickSize = tickSize / o.minorTickFreq;
-
- // Then store all possible ticks.
- for (i = 0; (v = v2 = start + i * tickSize) <= max; ++i){
-
- // Round (this is always needed to fix numerical instability).
- decimals = o.tickDecimals;
- if (decimals === null) decimals = 1 - Math.floor(Math.log(tickSize) / Math.LN10);
- if (decimals < 0) decimals = 0;
-
- v = v.toFixed(decimals);
- axis.ticks.push({ v: v, label: o.tickFormatter(v, {min : axis.min, max : axis.max}) });
-
- if (o.minorTickFreq) {
- for (j = 0; j < o.minorTickFreq && (i * tickSize + j * minorTickSize) < max; ++j) {
- v = v2 + j * minorTickSize;
- axis.minorTicks.push({ v: v, label: o.tickFormatter(v, {min : axis.min, max : axis.max}) });
- }
- }
- }
-
- },
-
- _setTranslations : function (logarithmic) {
- this.d2p = (logarithmic ? d2pLog : d2p);
- this.p2d = (logarithmic ? p2dLog : p2d);
- }
-};
-
-
-// Static Methods
-_.extend(Axis, {
- getAxes : function (options) {
- return {
- x: new Axis({options: options.xaxis, n: 1, length: this.plotWidth}),
- x2: new Axis({options: options.x2axis, n: 2, length: this.plotWidth}),
- y: new Axis({options: options.yaxis, n: 1, length: this.plotHeight, offset: this.plotHeight, orientation: -1}),
- y2: new Axis({options: options.y2axis, n: 2, length: this.plotHeight, offset: this.plotHeight, orientation: -1})
- };
- }
-});
-
-
-// Helper Methods
-
-function d2p (dataValue) {
- return this.offset + this.orientation * (dataValue - this.min) * this.scale;
-}
-
-function p2d (pointValue) {
- return (this.offset + this.orientation * pointValue) / this.scale + this.min;
-}
-
-function d2pLog (dataValue) {
- return this.offset + this.orientation * (log(dataValue, this.options.base) - log(this.min, this.options.base)) * this.scale;
-}
-
-function p2dLog (pointValue) {
- return exp((this.offset + this.orientation * pointValue) / this.scale + log(this.min, this.options.base), this.options.base);
-}
-
-function log (value, base) {
- value = Math.log(Math.max(value, Number.MIN_VALUE));
- if (base !== Math.E)
- value /= Math.log(base);
- return value;
-}
-
-function exp (value, base) {
- return (base === Math.E) ? Math.exp(value) : Math.pow(base, value);
-}
-
-Flotr.Axis = Axis;
+ Flotr.Axis = Axis;
})();
@@ -3354,908 +3406,920 @@
(function () {
-var
- _ = Flotr._;
-
-function Series (o) {
- _.extend(this, o);
-}
-
-Series.prototype = {
-
- getRange: function () {
-
var
- data = this.data,
- length = data.length,
- xmin = Number.MAX_VALUE,
- ymin = Number.MAX_VALUE,
- xmax = -Number.MAX_VALUE,
- ymax = -Number.MAX_VALUE,
- xused = false,
- yused = false,
- x, y, i;
-
- if (length < 0 || this.hide) return false;
-
- for (i = 0; i < length; i++) {
- x = data[i][0];
- y = data[i][1];
- if (x < xmin) { xmin = x; xused = true; }
- if (x > xmax) { xmax = x; xused = true; }
- if (y < ymin) { ymin = y; yused = true; }
- if (y > ymax) { ymax = y; yused = true; }
+ _ = Flotr._;
+
+ function Series(o) {
+ _.extend(this, o);
}
- return {
- xmin : xmin,
- xmax : xmax,
- ymin : ymin,
- ymax : ymax,
- xused : xused,
- yused : yused
- };
- }
-};
-
-_.extend(Series, {
- /**
- * Collects dataseries from input and parses the series into the right format. It returns an Array
- * of Objects each having at least the 'data' key set.
- * @param {Array, Object} data - Object or array of dataseries
- * @return {Array} Array of Objects parsed into the right format ({(...,) data: [[x1,y1], [x2,y2], ...] (, ...)})
- */
- getSeries: function(data){
- return _.map(data, function(s){
- var series;
- if (s.data) {
- series = new Series();
- _.extend(series, s);
- } else {
- series = new Series({data:s});
- }
- return series;
+ Series.prototype = {
+
+ getRange: function () {
+
+ var
+ data = this.data,
+ length = data.length,
+ xmin = Number.MAX_VALUE,
+ ymin = Number.MAX_VALUE,
+ xmax = -Number.MAX_VALUE,
+ ymax = -Number.MAX_VALUE,
+ xused = false,
+ yused = false,
+ x, y, i;
+
+ if (length < 0 || this.hide) return false;
+
+ for (i = 0; i < length; i++) {
+ x = data[i][0];
+ y = data[i][1];
+ if (x < xmin) {
+ xmin = x;
+ xused = true;
+ }
+ if (x > xmax) {
+ xmax = x;
+ xused = true;
+ }
+ if (y < ymin) {
+ ymin = y;
+ yused = true;
+ }
+ if (y > ymax) {
+ ymax = y;
+ yused = true;
+ }
+ }
+
+ return {
+ xmin: xmin,
+ xmax: xmax,
+ ymin: ymin,
+ ymax: ymax,
+ xused: xused,
+ yused: yused
+ };
+ }
+ };
+
+ _.extend(Series, {
+ /**
+ * Collects dataseries from input and parses the series into the right format. It returns an Array
+ * of Objects each having at least the 'data' key set.
+ * @param {Array, Object} data - Object or array of dataseries
+ * @return {Array} Array of Objects parsed into the right format ({(...,) data: [[x1,y1], [x2,y2], ...] (, ...)})
+ */
+ getSeries: function (data) {
+ return _.map(data, function (s) {
+ var series;
+ if (s.data) {
+ series = new Series();
+ _.extend(series, s);
+ } else {
+ series = new Series({data: s});
+ }
+ return series;
+ });
+ }
});
- }
-});
-
-Flotr.Series = Series;
+
+ Flotr.Series = Series;
})();
/** Lines **/
Flotr.addType('lines', {
- options: {
- show: false, // => setting to true will show lines, false will hide
- lineWidth: 2, // => line width in pixels
- fill: false, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- fillBorder: false, // => draw a border around the fill
- fillColor: null, // => fill color
- fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- steps: false, // => draw steps
- stacked: false // => setting to true will show stacked lines, false will show normal lines
- },
-
- stack : {
- values : []
- },
-
- /**
- * Draws lines series in the canvas element.
- * @param {Object} options
- */
- draw : function (options) {
-
- var
- context = options.context,
- lineWidth = options.lineWidth,
- shadowSize = options.shadowSize,
- offset;
-
- context.save();
- context.lineJoin = 'round';
-
- if (shadowSize) {
-
- context.lineWidth = shadowSize / 2;
- offset = lineWidth / 2 + context.lineWidth / 2;
-
- // @TODO do this instead with a linear gradient
- context.strokeStyle = "rgba(0,0,0,0.1)";
- this.plot(options, offset + shadowSize / 2, false);
-
- context.strokeStyle = "rgba(0,0,0,0.2)";
- this.plot(options, offset, false);
+ options: {
+ show: false, // => setting to true will show lines, false will hide
+ lineWidth: 2, // => line width in pixels
+ fill: false, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ fillBorder: false, // => draw a border around the fill
+ fillColor: null, // => fill color
+ fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ steps: false, // => draw steps
+ stacked: false // => setting to true will show stacked lines, false will show normal lines
+ },
+
+ stack: {
+ values: []
+ },
+
+ /**
+ * Draws lines series in the canvas element.
+ * @param {Object} options
+ */
+ draw: function (options) {
+
+ var
+ context = options.context,
+ lineWidth = options.lineWidth,
+ shadowSize = options.shadowSize,
+ offset;
+
+ context.save();
+ context.lineJoin = 'round';
+
+ if (shadowSize) {
+
+ context.lineWidth = shadowSize / 2;
+ offset = lineWidth / 2 + context.lineWidth / 2;
+
+ // @TODO do this instead with a linear gradient
+ context.strokeStyle = "rgba(0,0,0,0.1)";
+ this.plot(options, offset + shadowSize / 2, false);
+
+ context.strokeStyle = "rgba(0,0,0,0.2)";
+ this.plot(options, offset, false);
+ }
+
+ context.lineWidth = lineWidth;
+ context.strokeStyle = options.color;
+
+ this.plot(options, 0, true);
+
+ context.restore();
+ },
+
+ plot: function (options, shadowOffset, incStack) {
+
+ var
+ context = options.context,
+ width = options.width,
+ height = options.height,
+ xScale = options.xScale,
+ yScale = options.yScale,
+ data = options.data,
+ stack = options.stacked ? this.stack : false,
+ length = data.length - 1,
+ prevx = null,
+ prevy = null,
+ zero = yScale(0),
+ start = null,
+ x1, x2, y1, y2, stack1, stack2, i;
+
+ if (length < 1) return;
+
+ context.beginPath();
+
+ for (i = 0; i < length; ++i) {
+
+ // To allow empty values
+ if (data[i][1] === null || data[i + 1][1] === null) {
+ if (options.fill) {
+ if (i > 0 && data[i][1]) {
+ context.stroke();
+ fill();
+ start = null;
+ context.closePath();
+ context.beginPath();
+ }
+ }
+ continue;
+ }
+
+ // Zero is infinity for log scales
+ // TODO handle zero for logarithmic
+ // if (xa.options.scaling === 'logarithmic' && (data[i][0] <= 0 || data[i+1][0] <= 0)) continue;
+ // if (ya.options.scaling === 'logarithmic' && (data[i][1] <= 0 || data[i+1][1] <= 0)) continue;
+
+ x1 = xScale(data[i][0]);
+ x2 = xScale(data[i + 1][0]);
+
+ if (start === null) start = data[i];
+
+ if (stack) {
+
+ stack1 = stack.values[data[i][0]] || 0;
+ stack2 = stack.values[data[i + 1][0]] || stack.values[data[i][0]] || 0;
+
+ y1 = yScale(data[i][1] + stack1);
+ y2 = yScale(data[i + 1][1] + stack2);
+
+ if (incStack) {
+ stack.values[data[i][0]] = data[i][1] + stack1;
+
+ if (i == length - 1)
+ stack.values[data[i + 1][0]] = data[i + 1][1] + stack2;
+ }
+ }
+ else {
+ y1 = yScale(data[i][1]);
+ y2 = yScale(data[i + 1][1]);
+ }
+
+ if (
+ (y1 > height && y2 > height) ||
+ (y1 < 0 && y2 < 0) ||
+ (x1 < 0 && x2 < 0) ||
+ (x1 > width && x2 > width)
+ ) continue;
+
+ if ((prevx != x1) || (prevy != y1 + shadowOffset))
+ context.moveTo(x1, y1 + shadowOffset);
+
+ prevx = x2;
+ prevy = y2 + shadowOffset;
+ if (options.steps) {
+ context.lineTo(prevx + shadowOffset / 2, y1 + shadowOffset);
+ context.lineTo(prevx + shadowOffset / 2, prevy);
+ } else {
+ context.lineTo(prevx, prevy);
+ }
+ }
+
+ if (!options.fill || options.fill && !options.fillBorder) context.stroke();
+
+ fill();
+
+ function fill() {
+ // TODO stacked lines
+ if (!shadowOffset && options.fill && start) {
+ x1 = xScale(start[0]);
+ context.fillStyle = options.fillStyle;
+ context.lineTo(x2, zero);
+ context.lineTo(x1, zero);
+ context.lineTo(x1, yScale(start[1]));
+ context.fill();
+ if (options.fillBorder) {
+ context.stroke();
+ }
+ }
+ }
+
+ context.closePath();
+ },
+
+ // Perform any pre-render precalculations (this should be run on data first)
+ // - Pie chart total for calculating measures
+ // - Stacks for lines and bars
+ // precalculate : function () {
+ // }
+ //
+ //
+ // Get any bounds after pre calculation (axis can fetch this if does not have explicit min/max)
+ // getBounds : function () {
+ // }
+ // getMin : function () {
+ // }
+ // getMax : function () {
+ // }
+ //
+ //
+ // Padding around rendered elements
+ // getPadding : function () {
+ // }
+
+ extendYRange: function (axis, data, options, lines) {
+
+ var o = axis.options;
+
+ // If stacked and auto-min
+ if (options.stacked && ((!o.max && o.max !== 0) || (!o.min && o.min !== 0))) {
+
+ var
+ newmax = axis.max,
+ newmin = axis.min,
+ positiveSums = lines.positiveSums || {},
+ negativeSums = lines.negativeSums || {},
+ x, j;
+
+ for (j = 0; j < data.length; j++) {
+
+ x = data[j][0] + '';
+
+ // Positive
+ if (data[j][1] > 0) {
+ positiveSums[x] = (positiveSums[x] || 0) + data[j][1];
+ newmax = Math.max(newmax, positiveSums[x]);
+ }
+
+ // Negative
+ else {
+ negativeSums[x] = (negativeSums[x] || 0) + data[j][1];
+ newmin = Math.min(newmin, negativeSums[x]);
+ }
+ }
+
+ lines.negativeSums = negativeSums;
+ lines.positiveSums = positiveSums;
+
+ axis.max = newmax;
+ axis.min = newmin;
+ }
+
+ if (options.steps) {
+
+ this.hit = function (options) {
+ var
+ data = options.data,
+ args = options.args,
+ yScale = options.yScale,
+ mouse = args[0],
+ length = data.length,
+ n = args[1],
+ x = mouse.x,
+ relY = mouse.relY,
+ i;
+
+ for (i = 0; i < length - 1; i++) {
+ if (x >= data[i][0] && x <= data[i + 1][0]) {
+ if (Math.abs(yScale(data[i][1]) - relY) < 8) {
+ n.x = data[i][0];
+ n.y = data[i][1];
+ n.index = i;
+ n.seriesIndex = options.index;
+ }
+ break;
+ }
+ }
+ };
+
+ this.drawHit = function (options) {
+ var
+ context = options.context,
+ args = options.args,
+ data = options.data,
+ xScale = options.xScale,
+ index = args.index,
+ x = xScale(args.x),
+ y = options.yScale(args.y),
+ x2;
+
+ if (data.length - 1 > index) {
+ x2 = options.xScale(data[index + 1][0]);
+ context.save();
+ context.strokeStyle = options.color;
+ context.lineWidth = options.lineWidth;
+ context.beginPath();
+ context.moveTo(x, y);
+ context.lineTo(x2, y);
+ context.stroke();
+ context.closePath();
+ context.restore();
+ }
+ };
+
+ this.clearHit = function (options) {
+ var
+ context = options.context,
+ args = options.args,
+ data = options.data,
+ xScale = options.xScale,
+ width = options.lineWidth,
+ index = args.index,
+ x = xScale(args.x),
+ y = options.yScale(args.y),
+ x2;
+
+ if (data.length - 1 > index) {
+ x2 = options.xScale(data[index + 1][0]);
+ context.clearRect(x - width, y - width, x2 - x + 2 * width, 2 * width);
+ }
+ };
+ }
}
-
- context.lineWidth = lineWidth;
- context.strokeStyle = options.color;
-
- this.plot(options, 0, true);
-
- context.restore();
- },
-
- plot : function (options, shadowOffset, incStack) {
-
- var
- context = options.context,
- width = options.width,
- height = options.height,
- xScale = options.xScale,
- yScale = options.yScale,
- data = options.data,
- stack = options.stacked ? this.stack : false,
- length = data.length - 1,
- prevx = null,
- prevy = null,
- zero = yScale(0),
- start = null,
- x1, x2, y1, y2, stack1, stack2, i;
-
- if (length < 1) return;
-
- context.beginPath();
-
- for (i = 0; i < length; ++i) {
-
- // To allow empty values
- if (data[i][1] === null || data[i+1][1] === null) {
- if (options.fill) {
- if (i > 0 && data[i][1]) {
- context.stroke();
- fill();
- start = null;
- context.closePath();
- context.beginPath();
- }
- }
- continue;
- }
-
- // Zero is infinity for log scales
- // TODO handle zero for logarithmic
- // if (xa.options.scaling === 'logarithmic' && (data[i][0] <= 0 || data[i+1][0] <= 0)) continue;
- // if (ya.options.scaling === 'logarithmic' && (data[i][1] <= 0 || data[i+1][1] <= 0)) continue;
-
- x1 = xScale(data[i][0]);
- x2 = xScale(data[i+1][0]);
-
- if (start === null) start = data[i];
-
- if (stack) {
-
- stack1 = stack.values[data[i][0]] || 0;
- stack2 = stack.values[data[i+1][0]] || stack.values[data[i][0]] || 0;
-
- y1 = yScale(data[i][1] + stack1);
- y2 = yScale(data[i+1][1] + stack2);
-
- if(incStack){
- stack.values[data[i][0]] = data[i][1]+stack1;
-
- if(i == length-1)
- stack.values[data[i+1][0]] = data[i+1][1]+stack2;
- }
- }
- else{
- y1 = yScale(data[i][1]);
- y2 = yScale(data[i+1][1]);
- }
-
- if (
- (y1 > height && y2 > height) ||
- (y1 < 0 && y2 < 0) ||
- (x1 < 0 && x2 < 0) ||
- (x1 > width && x2 > width)
- ) continue;
-
- if((prevx != x1) || (prevy != y1 + shadowOffset))
- context.moveTo(x1, y1 + shadowOffset);
-
- prevx = x2;
- prevy = y2 + shadowOffset;
- if (options.steps) {
- context.lineTo(prevx + shadowOffset / 2, y1 + shadowOffset);
- context.lineTo(prevx + shadowOffset / 2, prevy);
- } else {
- context.lineTo(prevx, prevy);
- }
- }
-
- if (!options.fill || options.fill && !options.fillBorder) context.stroke();
-
- fill();
-
- function fill () {
- // TODO stacked lines
- if(!shadowOffset && options.fill && start){
- x1 = xScale(start[0]);
- context.fillStyle = options.fillStyle;
- context.lineTo(x2, zero);
- context.lineTo(x1, zero);
- context.lineTo(x1, yScale(start[1]));
- context.fill();
- if (options.fillBorder) {
- context.stroke();
- }
- }
- }
-
- context.closePath();
- },
-
- // Perform any pre-render precalculations (this should be run on data first)
- // - Pie chart total for calculating measures
- // - Stacks for lines and bars
- // precalculate : function () {
- // }
- //
- //
- // Get any bounds after pre calculation (axis can fetch this if does not have explicit min/max)
- // getBounds : function () {
- // }
- // getMin : function () {
- // }
- // getMax : function () {
- // }
- //
- //
- // Padding around rendered elements
- // getPadding : function () {
- // }
-
- extendYRange : function (axis, data, options, lines) {
-
- var o = axis.options;
-
- // If stacked and auto-min
- if (options.stacked && ((!o.max && o.max !== 0) || (!o.min && o.min !== 0))) {
-
- var
- newmax = axis.max,
- newmin = axis.min,
- positiveSums = lines.positiveSums || {},
- negativeSums = lines.negativeSums || {},
- x, j;
-
- for (j = 0; j < data.length; j++) {
-
- x = data[j][0] + '';
-
- // Positive
- if (data[j][1] > 0) {
- positiveSums[x] = (positiveSums[x] || 0) + data[j][1];
- newmax = Math.max(newmax, positiveSums[x]);
- }
-
- // Negative
- else {
- negativeSums[x] = (negativeSums[x] || 0) + data[j][1];
- newmin = Math.min(newmin, negativeSums[x]);
- }
- }
-
- lines.negativeSums = negativeSums;
- lines.positiveSums = positiveSums;
-
- axis.max = newmax;
- axis.min = newmin;
- }
-
- if (options.steps) {
-
- this.hit = function (options) {
- var
- data = options.data,
- args = options.args,
- yScale = options.yScale,
- mouse = args[0],
- length = data.length,
- n = args[1],
- x = mouse.x,
- relY = mouse.relY,
- i;
-
- for (i = 0; i < length - 1; i++) {
- if (x >= data[i][0] && x <= data[i+1][0]) {
- if (Math.abs(yScale(data[i][1]) - relY) < 8) {
- n.x = data[i][0];
- n.y = data[i][1];
- n.index = i;
- n.seriesIndex = options.index;
- }
- break;
- }
- }
- };
-
- this.drawHit = function (options) {
- var
- context = options.context,
- args = options.args,
- data = options.data,
- xScale = options.xScale,
- index = args.index,
- x = xScale(args.x),
- y = options.yScale(args.y),
- x2;
-
- if (data.length - 1 > index) {
- x2 = options.xScale(data[index + 1][0]);
- context.save();
- context.strokeStyle = options.color;
- context.lineWidth = options.lineWidth;
- context.beginPath();
- context.moveTo(x, y);
- context.lineTo(x2, y);
- context.stroke();
- context.closePath();
- context.restore();
- }
- };
-
- this.clearHit = function (options) {
- var
- context = options.context,
- args = options.args,
- data = options.data,
- xScale = options.xScale,
- width = options.lineWidth,
- index = args.index,
- x = xScale(args.x),
- y = options.yScale(args.y),
- x2;
-
- if (data.length - 1 > index) {
- x2 = options.xScale(data[index + 1][0]);
- context.clearRect(x - width, y - width, x2 - x + 2 * width, 2 * width);
- }
- };
- }
- }
});
/** Bars **/
Flotr.addType('bars', {
- options: {
- show: false, // => setting to true will show bars, false will hide
- lineWidth: 2, // => in pixels
- barWidth: 1, // => in units of the x axis
- fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- fillColor: null, // => fill color
- fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- horizontal: false, // => horizontal bars (x and y inverted)
- stacked: false, // => stacked bar charts
- centered: true, // => center the bars to their x axis value
- topPadding: 0.1, // => top padding in percent
- grouped: false // => groups bars together which share x value, hit not supported.
- },
-
- stack : {
- positive : [],
- negative : [],
- _positive : [], // Shadow
- _negative : [] // Shadow
- },
-
- draw : function (options) {
- var
- context = options.context;
-
- this.current += 1;
-
- context.save();
- context.lineJoin = 'miter';
- // @TODO linewidth not interpreted the right way.
- context.lineWidth = options.lineWidth;
- context.strokeStyle = options.color;
- if (options.fill) context.fillStyle = options.fillStyle;
-
- this.plot(options);
-
- context.restore();
- },
-
- plot : function (options) {
-
- var
- data = options.data,
- context = options.context,
- shadowSize = options.shadowSize,
- i, geometry, left, top, width, height;
-
- if (data.length < 1) return;
-
- this.translate(context, options.horizontal);
-
- for (i = 0; i < data.length; i++) {
-
- geometry = this.getBarGeometry(data[i][0], data[i][1], options);
- if (geometry === null) continue;
-
- left = geometry.left;
- top = geometry.top;
- width = geometry.width;
- height = geometry.height;
-
- if (options.fill) context.fillRect(left, top, width, height);
- if (shadowSize) {
+ options: {
+ show: false, // => setting to true will show bars, false will hide
+ lineWidth: 2, // => in pixels
+ barWidth: 1, // => in units of the x axis
+ fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ fillColor: null, // => fill color
+ fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ horizontal: false, // => horizontal bars (x and y inverted)
+ stacked: false, // => stacked bar charts
+ centered: true, // => center the bars to their x axis value
+ topPadding: 0.1, // => top padding in percent
+ grouped: false // => groups bars together which share x value, hit not supported.
+ },
+
+ stack: {
+ positive: [],
+ negative: [],
+ _positive: [], // Shadow
+ _negative: [] // Shadow
+ },
+
+ draw: function (options) {
+ var
+ context = options.context;
+
+ this.current += 1;
+
context.save();
- context.fillStyle = 'rgba(0,0,0,0.05)';
- context.fillRect(left + shadowSize, top + shadowSize, width, height);
+ context.lineJoin = 'miter';
+ // @TODO linewidth not interpreted the right way.
+ context.lineWidth = options.lineWidth;
+ context.strokeStyle = options.color;
+ if (options.fill) context.fillStyle = options.fillStyle;
+
+ this.plot(options);
+
context.restore();
- }
- if (options.lineWidth) {
- context.strokeRect(left, top, width, height);
- }
+ },
+
+ plot: function (options) {
+
+ var
+ data = options.data,
+ context = options.context,
+ shadowSize = options.shadowSize,
+ i, geometry, left, top, width, height;
+
+ if (data.length < 1) return;
+
+ this.translate(context, options.horizontal);
+
+ for (i = 0; i < data.length; i++) {
+
+ geometry = this.getBarGeometry(data[i][0], data[i][1], options);
+ if (geometry === null) continue;
+
+ left = geometry.left;
+ top = geometry.top;
+ width = geometry.width;
+ height = geometry.height;
+
+ if (options.fill) context.fillRect(left, top, width, height);
+ if (shadowSize) {
+ context.save();
+ context.fillStyle = 'rgba(0,0,0,0.05)';
+ context.fillRect(left + shadowSize, top + shadowSize, width, height);
+ context.restore();
+ }
+ if (options.lineWidth) {
+ context.strokeRect(left, top, width, height);
+ }
+ }
+ },
+
+ translate: function (context, horizontal) {
+ if (horizontal) {
+ context.rotate(-Math.PI / 2);
+ context.scale(-1, 1);
+ }
+ },
+
+ getBarGeometry: function (x, y, options) {
+
+ var
+ horizontal = options.horizontal,
+ barWidth = options.barWidth,
+ centered = options.centered,
+ stack = options.stacked ? this.stack : false,
+ lineWidth = options.lineWidth,
+ bisection = centered ? barWidth / 2 : 0,
+ xScale = horizontal ? options.yScale : options.xScale,
+ yScale = horizontal ? options.xScale : options.yScale,
+ xValue = horizontal ? y : x,
+ yValue = horizontal ? x : y,
+ stackOffset = 0,
+ stackValue, left, right, top, bottom;
+
+ if (options.grouped) {
+ this.current / this.groups
+ xValue = xValue - bisection;
+ barWidth = barWidth / this.groups;
+ bisection = barWidth / 2;
+ xValue = xValue + barWidth * this.current - bisection;
+ }
+
+ // Stacked bars
+ if (stack) {
+ stackValue = yValue > 0 ? stack.positive : stack.negative;
+ stackOffset = stackValue[xValue] || stackOffset;
+ stackValue[xValue] = stackOffset + yValue;
+ }
+
+ left = xScale(xValue - bisection);
+ right = xScale(xValue + barWidth - bisection);
+ top = yScale(yValue + stackOffset);
+ bottom = yScale(stackOffset);
+
+ // TODO for test passing... probably looks better without this
+ if (bottom < 0) bottom = 0;
+
+ // TODO Skipping...
+ // if (right < xa.min || left > xa.max || top < ya.min || bottom > ya.max) continue;
+
+ return (x === null || y === null) ? null : {
+ x: xValue,
+ y: yValue,
+ xScale: xScale,
+ yScale: yScale,
+ top: top,
+ left: Math.min(left, right) - lineWidth / 2,
+ width: Math.abs(right - left) - lineWidth,
+ height: bottom - top
+ };
+ },
+
+ hit: function (options) {
+ var
+ data = options.data,
+ args = options.args,
+ mouse = args[0],
+ n = args[1],
+ x = mouse.x,
+ y = mouse.y,
+ hitGeometry = this.getBarGeometry(x, y, options),
+ width = hitGeometry.width / 2,
+ left = hitGeometry.left,
+ geometry, i;
+
+ for (i = data.length; i--;) {
+ geometry = this.getBarGeometry(data[i][0], data[i][1], options);
+ if (geometry.y > hitGeometry.y && Math.abs(left - geometry.left) < width) {
+ n.x = data[i][0];
+ n.y = data[i][1];
+ n.index = i;
+ n.seriesIndex = options.index;
+ }
+ }
+ },
+
+ drawHit: function (options) {
+ // TODO hits for stacked bars; implement using calculateStack option?
+ var
+ context = options.context,
+ args = options.args,
+ geometry = this.getBarGeometry(args.x, args.y, options),
+ left = geometry.left,
+ top = geometry.top,
+ width = geometry.width,
+ height = geometry.height;
+
+ context.save();
+ context.strokeStyle = options.color;
+ context.lineWidth = options.lineWidth;
+ this.translate(context, options.horizontal);
+
+ // Draw highlight
+ context.beginPath();
+ context.moveTo(left, top + height);
+ context.lineTo(left, top);
+ context.lineTo(left + width, top);
+ context.lineTo(left + width, top + height);
+ if (options.fill) {
+ context.fillStyle = options.fillStyle;
+ context.fill();
+ }
+ context.stroke();
+ context.closePath();
+
+ context.restore();
+ },
+
+ clearHit: function (options) {
+ var
+ context = options.context,
+ args = options.args,
+ geometry = this.getBarGeometry(args.x, args.y, options),
+ left = geometry.left,
+ width = geometry.width,
+ top = geometry.top,
+ height = geometry.height,
+ lineWidth = 2 * options.lineWidth;
+
+ context.save();
+ this.translate(context, options.horizontal);
+ context.clearRect(
+ left - lineWidth,
+ Math.min(top, top + height) - lineWidth,
+ width + 2 * lineWidth,
+ Math.abs(height) + 2 * lineWidth
+ );
+ context.restore();
+ },
+
+ extendXRange: function (axis, data, options, bars) {
+ this._extendRange(axis, data, options, bars);
+ this.groups = (this.groups + 1) || 1;
+ this.current = 0;
+ },
+
+ extendYRange: function (axis, data, options, bars) {
+ this._extendRange(axis, data, options, bars);
+ },
+ _extendRange: function (axis, data, options, bars) {
+
+ var
+ max = axis.options.max;
+
+ if (_.isNumber(max) || _.isString(max)) return;
+
+ var
+ newmin = axis.min,
+ newmax = axis.max,
+ horizontal = options.horizontal,
+ orientation = axis.orientation,
+ positiveSums = this.positiveSums || {},
+ negativeSums = this.negativeSums || {},
+ value, datum, index, j;
+
+ // Sides of bars
+ if ((orientation == 1 && !horizontal) || (orientation == -1 && horizontal)) {
+ if (options.centered) {
+ newmax = Math.max(axis.datamax + options.barWidth, newmax);
+ newmin = Math.min(axis.datamin - options.barWidth, newmin);
+ }
+ }
+
+ if (options.stacked &&
+ ((orientation == 1 && horizontal) || (orientation == -1 && !horizontal))) {
+
+ for (j = data.length; j--;) {
+ value = data[j][(orientation == 1 ? 1 : 0)] + '';
+ datum = data[j][(orientation == 1 ? 0 : 1)];
+
+ // Positive
+ if (datum > 0) {
+ positiveSums[value] = (positiveSums[value] || 0) + datum;
+ newmax = Math.max(newmax, positiveSums[value]);
+ }
+
+ // Negative
+ else {
+ negativeSums[value] = (negativeSums[value] || 0) + datum;
+ newmin = Math.min(newmin, negativeSums[value]);
+ }
+ }
+ }
+
+ // End of bars
+ if ((orientation == 1 && horizontal) || (orientation == -1 && !horizontal)) {
+ if (options.topPadding && (axis.max === axis.datamax || (options.stacked && this.stackMax !== newmax))) {
+ newmax += options.topPadding * (newmax - newmin);
+ }
+ }
+
+ this.stackMin = newmin;
+ this.stackMax = newmax;
+ this.negativeSums = negativeSums;
+ this.positiveSums = positiveSums;
+
+ axis.max = newmax;
+ axis.min = newmin;
}
- },
-
- translate : function (context, horizontal) {
- if (horizontal) {
- context.rotate(-Math.PI / 2);
- context.scale(-1, 1);
- }
- },
-
- getBarGeometry : function (x, y, options) {
-
- var
- horizontal = options.horizontal,
- barWidth = options.barWidth,
- centered = options.centered,
- stack = options.stacked ? this.stack : false,
- lineWidth = options.lineWidth,
- bisection = centered ? barWidth / 2 : 0,
- xScale = horizontal ? options.yScale : options.xScale,
- yScale = horizontal ? options.xScale : options.yScale,
- xValue = horizontal ? y : x,
- yValue = horizontal ? x : y,
- stackOffset = 0,
- stackValue, left, right, top, bottom;
-
- if (options.grouped) {
- this.current / this.groups
- xValue = xValue - bisection;
- barWidth = barWidth / this.groups;
- bisection = barWidth / 2;
- xValue = xValue + barWidth * this.current - bisection;
- }
-
- // Stacked bars
- if (stack) {
- stackValue = yValue > 0 ? stack.positive : stack.negative;
- stackOffset = stackValue[xValue] || stackOffset;
- stackValue[xValue] = stackOffset + yValue;
- }
-
- left = xScale(xValue - bisection);
- right = xScale(xValue + barWidth - bisection);
- top = yScale(yValue + stackOffset);
- bottom = yScale(stackOffset);
-
- // TODO for test passing... probably looks better without this
- if (bottom < 0) bottom = 0;
-
- // TODO Skipping...
- // if (right < xa.min || left > xa.max || top < ya.min || bottom > ya.max) continue;
-
- return (x === null || y === null) ? null : {
- x : xValue,
- y : yValue,
- xScale : xScale,
- yScale : yScale,
- top : top,
- left : Math.min(left, right) - lineWidth / 2,
- width : Math.abs(right - left) - lineWidth,
- height : bottom - top
- };
- },
-
- hit : function (options) {
- var
- data = options.data,
- args = options.args,
- mouse = args[0],
- n = args[1],
- x = mouse.x,
- y = mouse.y,
- hitGeometry = this.getBarGeometry(x, y, options),
- width = hitGeometry.width / 2,
- left = hitGeometry.left,
- geometry, i;
-
- for (i = data.length; i--;) {
- geometry = this.getBarGeometry(data[i][0], data[i][1], options);
- if (geometry.y > hitGeometry.y && Math.abs(left - geometry.left) < width) {
- n.x = data[i][0];
- n.y = data[i][1];
- n.index = i;
- n.seriesIndex = options.index;
- }
- }
- },
-
- drawHit : function (options) {
- // TODO hits for stacked bars; implement using calculateStack option?
- var
- context = options.context,
- args = options.args,
- geometry = this.getBarGeometry(args.x, args.y, options),
- left = geometry.left,
- top = geometry.top,
- width = geometry.width,
- height = geometry.height;
-
- context.save();
- context.strokeStyle = options.color;
- context.lineWidth = options.lineWidth;
- this.translate(context, options.horizontal);
-
- // Draw highlight
- context.beginPath();
- context.moveTo(left, top + height);
- context.lineTo(left, top);
- context.lineTo(left + width, top);
- context.lineTo(left + width, top + height);
- if (options.fill) {
- context.fillStyle = options.fillStyle;
- context.fill();
- }
- context.stroke();
- context.closePath();
-
- context.restore();
- },
-
- clearHit: function (options) {
- var
- context = options.context,
- args = options.args,
- geometry = this.getBarGeometry(args.x, args.y, options),
- left = geometry.left,
- width = geometry.width,
- top = geometry.top,
- height = geometry.height,
- lineWidth = 2 * options.lineWidth;
-
- context.save();
- this.translate(context, options.horizontal);
- context.clearRect(
- left - lineWidth,
- Math.min(top, top + height) - lineWidth,
- width + 2 * lineWidth,
- Math.abs(height) + 2 * lineWidth
- );
- context.restore();
- },
-
- extendXRange : function (axis, data, options, bars) {
- this._extendRange(axis, data, options, bars);
- this.groups = (this.groups + 1) || 1;
- this.current = 0;
- },
-
- extendYRange : function (axis, data, options, bars) {
- this._extendRange(axis, data, options, bars);
- },
- _extendRange: function (axis, data, options, bars) {
-
- var
- max = axis.options.max;
-
- if (_.isNumber(max) || _.isString(max)) return;
-
- var
- newmin = axis.min,
- newmax = axis.max,
- horizontal = options.horizontal,
- orientation = axis.orientation,
- positiveSums = this.positiveSums || {},
- negativeSums = this.negativeSums || {},
- value, datum, index, j;
-
- // Sides of bars
- if ((orientation == 1 && !horizontal) || (orientation == -1 && horizontal)) {
- if (options.centered) {
- newmax = Math.max(axis.datamax + options.barWidth, newmax);
- newmin = Math.min(axis.datamin - options.barWidth, newmin);
- }
- }
-
- if (options.stacked &&
- ((orientation == 1 && horizontal) || (orientation == -1 && !horizontal))){
-
- for (j = data.length; j--;) {
- value = data[j][(orientation == 1 ? 1 : 0)]+'';
- datum = data[j][(orientation == 1 ? 0 : 1)];
-
- // Positive
- if (datum > 0) {
- positiveSums[value] = (positiveSums[value] || 0) + datum;
- newmax = Math.max(newmax, positiveSums[value]);
- }
-
- // Negative
- else {
- negativeSums[value] = (negativeSums[value] || 0) + datum;
- newmin = Math.min(newmin, negativeSums[value]);
- }
- }
- }
-
- // End of bars
- if ((orientation == 1 && horizontal) || (orientation == -1 && !horizontal)) {
- if (options.topPadding && (axis.max === axis.datamax || (options.stacked && this.stackMax !== newmax))) {
- newmax += options.topPadding * (newmax - newmin);
- }
- }
-
- this.stackMin = newmin;
- this.stackMax = newmax;
- this.negativeSums = negativeSums;
- this.positiveSums = positiveSums;
-
- axis.max = newmax;
- axis.min = newmin;
- }
});
/** Bubbles **/
Flotr.addType('bubbles', {
- options: {
- show: false, // => setting to true will show radar chart, false will hide
- lineWidth: 2, // => line width in pixels
- fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- baseRadius: 2 // => ratio of the radar, against the plot size
- },
- draw : function (options) {
- var
- context = options.context,
- shadowSize = options.shadowSize;
-
- context.save();
- context.lineWidth = options.lineWidth;
-
- // Shadows
- context.fillStyle = 'rgba(0,0,0,0.05)';
- context.strokeStyle = 'rgba(0,0,0,0.05)';
- this.plot(options, shadowSize / 2);
- context.strokeStyle = 'rgba(0,0,0,0.1)';
- this.plot(options, shadowSize / 4);
-
- // Chart
- context.strokeStyle = options.color;
- context.fillStyle = options.fillStyle;
- this.plot(options);
-
- context.restore();
- },
- plot : function (options, offset) {
-
- var
- data = options.data,
- context = options.context,
- geometry,
- i, x, y, z;
-
- offset = offset || 0;
-
- for (i = 0; i < data.length; ++i){
-
- geometry = this.getGeometry(data[i], options);
-
- context.beginPath();
- context.arc(geometry.x + offset, geometry.y + offset, geometry.z, 0, 2 * Math.PI, true);
- context.stroke();
- if (options.fill) context.fill();
- context.closePath();
+ options: {
+ show: false, // => setting to true will show radar chart, false will hide
+ lineWidth: 2, // => line width in pixels
+ fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ baseRadius: 2 // => ratio of the radar, against the plot size
+ },
+ draw: function (options) {
+ var
+ context = options.context,
+ shadowSize = options.shadowSize;
+
+ context.save();
+ context.lineWidth = options.lineWidth;
+
+ // Shadows
+ context.fillStyle = 'rgba(0,0,0,0.05)';
+ context.strokeStyle = 'rgba(0,0,0,0.05)';
+ this.plot(options, shadowSize / 2);
+ context.strokeStyle = 'rgba(0,0,0,0.1)';
+ this.plot(options, shadowSize / 4);
+
+ // Chart
+ context.strokeStyle = options.color;
+ context.fillStyle = options.fillStyle;
+ this.plot(options);
+
+ context.restore();
+ },
+ plot: function (options, offset) {
+
+ var
+ data = options.data,
+ context = options.context,
+ geometry,
+ i, x, y, z;
+
+ offset = offset || 0;
+
+ for (i = 0; i < data.length; ++i) {
+
+ geometry = this.getGeometry(data[i], options);
+
+ context.beginPath();
+ context.arc(geometry.x + offset, geometry.y + offset, geometry.z, 0, 2 * Math.PI, true);
+ context.stroke();
+ if (options.fill) context.fill();
+ context.closePath();
+ }
+ },
+ getGeometry: function (point, options) {
+ return {
+ x: options.xScale(point[0]),
+ y: options.yScale(point[1]),
+ z: point[2] * options.baseRadius
+ };
+ },
+ hit: function (options) {
+ var
+ data = options.data,
+ args = options.args,
+ mouse = args[0],
+ n = args[1],
+ x = mouse.x,
+ y = mouse.y,
+ distance,
+ geometry,
+ dx, dy;
+
+ n.best = n.best || Number.MAX_VALUE;
+
+ for (i = data.length; i--;) {
+ geometry = this.getGeometry(data[i], options);
+
+ dx = geometry.x - options.xScale(x);
+ dy = geometry.y - options.yScale(y);
+ distance = Math.sqrt(dx * dx + dy * dy);
+
+ if (distance < geometry.z && geometry.z < n.best) {
+ n.x = data[i][0];
+ n.y = data[i][1];
+ n.index = i;
+ n.seriesIndex = options.index;
+ n.best = geometry.z;
+ }
+ }
+ },
+ drawHit: function (options) {
+
+ var
+ context = options.context,
+ geometry = this.getGeometry(options.data[options.args.index], options);
+
+ context.save();
+ context.lineWidth = options.lineWidth;
+ context.fillStyle = options.fillStyle;
+ context.strokeStyle = options.color;
+ context.beginPath();
+ context.arc(geometry.x, geometry.y, geometry.z, 0, 2 * Math.PI, true);
+ context.fill();
+ context.stroke();
+ context.closePath();
+ context.restore();
+ },
+ clearHit: function (options) {
+
+ var
+ context = options.context,
+ geometry = this.getGeometry(options.data[options.args.index], options),
+ offset = geometry.z + options.lineWidth;
+
+ context.save();
+ context.clearRect(
+ geometry.x - offset,
+ geometry.y - offset,
+ 2 * offset,
+ 2 * offset
+ );
+ context.restore();
}
- },
- getGeometry : function (point, options) {
- return {
- x : options.xScale(point[0]),
- y : options.yScale(point[1]),
- z : point[2] * options.baseRadius
- };
- },
- hit : function (options) {
- var
- data = options.data,
- args = options.args,
- mouse = args[0],
- n = args[1],
- x = mouse.x,
- y = mouse.y,
- distance,
- geometry,
- dx, dy;
-
- n.best = n.best || Number.MAX_VALUE;
-
- for (i = data.length; i--;) {
- geometry = this.getGeometry(data[i], options);
-
- dx = geometry.x - options.xScale(x);
- dy = geometry.y - options.yScale(y);
- distance = Math.sqrt(dx * dx + dy * dy);
-
- if (distance < geometry.z && geometry.z < n.best) {
- n.x = data[i][0];
- n.y = data[i][1];
- n.index = i;
- n.seriesIndex = options.index;
- n.best = geometry.z;
- }
- }
- },
- drawHit : function (options) {
-
- var
- context = options.context,
- geometry = this.getGeometry(options.data[options.args.index], options);
-
- context.save();
- context.lineWidth = options.lineWidth;
- context.fillStyle = options.fillStyle;
- context.strokeStyle = options.color;
- context.beginPath();
- context.arc(geometry.x, geometry.y, geometry.z, 0, 2 * Math.PI, true);
- context.fill();
- context.stroke();
- context.closePath();
- context.restore();
- },
- clearHit : function (options) {
-
- var
- context = options.context,
- geometry = this.getGeometry(options.data[options.args.index], options),
- offset = geometry.z + options.lineWidth;
-
- context.save();
- context.clearRect(
- geometry.x - offset,
- geometry.y - offset,
- 2 * offset,
- 2 * offset
- );
- context.restore();
- }
- // TODO Add a hit calculation method (like pie)
+ // TODO Add a hit calculation method (like pie)
});
/** Candles **/
Flotr.addType('candles', {
- options: {
- show: false, // => setting to true will show candle sticks, false will hide
- lineWidth: 1, // => in pixels
- wickLineWidth: 1, // => in pixels
- candleWidth: 0.6, // => in units of the x axis
- fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- upFillColor: '#00A8F0',// => up sticks fill color
- downFillColor: '#CB4B4B',// => down sticks fill color
- fillOpacity: 0.5, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- // TODO Test this barcharts option.
- barcharts: false // => draw as barcharts (not standard bars but financial barcharts)
- },
-
- draw : function (options) {
-
- var
- context = options.context;
-
- context.save();
- context.lineJoin = 'miter';
- context.lineCap = 'butt';
- // @TODO linewidth not interpreted the right way.
- context.lineWidth = options.wickLineWidth || options.lineWidth;
-
- this.plot(options);
-
- context.restore();
- },
-
- plot : function (options) {
-
- var
- data = options.data,
- context = options.context,
- xScale = options.xScale,
- yScale = options.yScale,
- width = options.candleWidth / 2,
- shadowSize = options.shadowSize,
- lineWidth = options.lineWidth,
- wickLineWidth = options.wickLineWidth,
- pixelOffset = (wickLineWidth % 2) / 2,
- color,
- datum, x, y,
- open, high, low, close,
- left, right, bottom, top, bottom2, top2,
- i;
-
- if (data.length < 1) return;
-
- for (i = 0; i < data.length; i++) {
- datum = data[i];
- x = datum[0];
- open = datum[1];
- high = datum[2];
- low = datum[3];
- close = datum[4];
- left = xScale(x - width);
- right = xScale(x + width);
- bottom = yScale(low);
- top = yScale(high);
- bottom2 = yScale(Math.min(open, close));
- top2 = yScale(Math.max(open, close));
-
- /*
- // TODO skipping
- if(right < xa.min || left > xa.max || top < ya.min || bottom > ya.max)
- continue;
- */
-
- color = options[open > close ? 'downFillColor' : 'upFillColor'];
-
- // Fill the candle.
- // TODO Test the barcharts option
- if (options.fill && !options.barcharts) {
- context.fillStyle = 'rgba(0,0,0,0.05)';
- context.fillRect(left + shadowSize, top2 + shadowSize, right - left, bottom2 - top2);
+ options: {
+ show: false, // => setting to true will show candle sticks, false will hide
+ lineWidth: 1, // => in pixels
+ wickLineWidth: 1, // => in pixels
+ candleWidth: 0.6, // => in units of the x axis
+ fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ upFillColor: '#00A8F0',// => up sticks fill color
+ downFillColor: '#CB4B4B',// => down sticks fill color
+ fillOpacity: 0.5, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ // TODO Test this barcharts option.
+ barcharts: false // => draw as barcharts (not standard bars but financial barcharts)
+ },
+
+ draw: function (options) {
+
+ var
+ context = options.context;
+
context.save();
- context.globalAlpha = options.fillOpacity;
- context.fillStyle = color;
- context.fillRect(left, top2 + lineWidth, right - left, bottom2 - top2);
+ context.lineJoin = 'miter';
+ context.lineCap = 'butt';
+ // @TODO linewidth not interpreted the right way.
+ context.lineWidth = options.wickLineWidth || options.lineWidth;
+
+ this.plot(options);
+
context.restore();
- }
-
- // Draw candle outline/border, high, low.
- if (lineWidth || wickLineWidth) {
-
- x = Math.floor((left + right) / 2) + pixelOffset;
-
- context.strokeStyle = color;
- context.beginPath();
-
- // TODO Again with the bartcharts
- if (options.barcharts) {
-
- context.moveTo(x, Math.floor(top + width));
- context.lineTo(x, Math.floor(bottom + width));
-
- y = Math.floor(open + width) + 0.5;
- context.moveTo(Math.floor(left) + pixelOffset, y);
- context.lineTo(x, y);
-
- y = Math.floor(close + width) + 0.5;
- context.moveTo(Math.floor(right) + pixelOffset, y);
- context.lineTo(x, y);
- } else {
- context.strokeRect(left, top2 + lineWidth, right - left, bottom2 - top2);
-
- context.moveTo(x, Math.floor(top2 + lineWidth));
- context.lineTo(x, Math.floor(top + lineWidth));
- context.moveTo(x, Math.floor(bottom2 + lineWidth));
- context.lineTo(x, Math.floor(bottom + lineWidth));
- }
-
- context.closePath();
- context.stroke();
- }
+ },
+
+ plot: function (options) {
+
+ var
+ data = options.data,
+ context = options.context,
+ xScale = options.xScale,
+ yScale = options.yScale,
+ width = options.candleWidth / 2,
+ shadowSize = options.shadowSize,
+ lineWidth = options.lineWidth,
+ wickLineWidth = options.wickLineWidth,
+ pixelOffset = (wickLineWidth % 2) / 2,
+ color,
+ datum, x, y,
+ open, high, low, close,
+ left, right, bottom, top, bottom2, top2,
+ i;
+
+ if (data.length < 1) return;
+
+ for (i = 0; i < data.length; i++) {
+ datum = data[i];
+ x = datum[0];
+ open = datum[1];
+ high = datum[2];
+ low = datum[3];
+ close = datum[4];
+ left = xScale(x - width);
+ right = xScale(x + width);
+ bottom = yScale(low);
+ top = yScale(high);
+ bottom2 = yScale(Math.min(open, close));
+ top2 = yScale(Math.max(open, close));
+
+ /*
+ // TODO skipping
+ if(right < xa.min || left > xa.max || top < ya.min || bottom > ya.max)
+ continue;
+ */
+
+ color = options[open > close ? 'downFillColor' : 'upFillColor'];
+
+ // Fill the candle.
+ // TODO Test the barcharts option
+ if (options.fill && !options.barcharts) {
+ context.fillStyle = 'rgba(0,0,0,0.05)';
+ context.fillRect(left + shadowSize, top2 + shadowSize, right - left, bottom2 - top2);
+ context.save();
+ context.globalAlpha = options.fillOpacity;
+ context.fillStyle = color;
+ context.fillRect(left, top2 + lineWidth, right - left, bottom2 - top2);
+ context.restore();
+ }
+
+ // Draw candle outline/border, high, low.
+ if (lineWidth || wickLineWidth) {
+
+ x = Math.floor((left + right) / 2) + pixelOffset;
+
+ context.strokeStyle = color;
+ context.beginPath();
+
+ // TODO Again with the bartcharts
+ if (options.barcharts) {
+
+ context.moveTo(x, Math.floor(top + width));
+ context.lineTo(x, Math.floor(bottom + width));
+
+ y = Math.floor(open + width) + 0.5;
+ context.moveTo(Math.floor(left) + pixelOffset, y);
+ context.lineTo(x, y);
+
+ y = Math.floor(close + width) + 0.5;
+ context.moveTo(Math.floor(right) + pixelOffset, y);
+ context.lineTo(x, y);
+ } else {
+ context.strokeRect(left, top2 + lineWidth, right - left, bottom2 - top2);
+
+ context.moveTo(x, Math.floor(top2 + lineWidth));
+ context.lineTo(x, Math.floor(top + lineWidth));
+ context.moveTo(x, Math.floor(bottom2 + lineWidth));
+ context.lineTo(x, Math.floor(bottom + lineWidth));
+ }
+
+ context.closePath();
+ context.stroke();
+ }
+ }
+ },
+ extendXRange: function (axis, data, options) {
+ if (axis.options.max === null) {
+ axis.max = Math.max(axis.datamax + 0.5, axis.max);
+ axis.min = Math.min(axis.datamin - 0.5, axis.min);
+ }
}
- },
- extendXRange: function (axis, data, options) {
- if (axis.options.max === null) {
- axis.max = Math.max(axis.datamax + 0.5, axis.max);
- axis.min = Math.min(axis.datamin - 0.5, axis.min);
- }
- }
});
/** Gantt
@@ -4265,227 +4329,227 @@
* d - task duration
* **/
Flotr.addType('gantt', {
- options: {
- show: false, // => setting to true will show gantt, false will hide
- lineWidth: 2, // => in pixels
- barWidth: 1, // => in units of the x axis
- fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- fillColor: null, // => fill color
- fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- centered: true // => center the bars to their x axis value
- },
- /**
- * Draws gantt series in the canvas element.
- * @param {Object} series - Series with options.gantt.show = true.
- */
- draw: function(series) {
- var ctx = this.ctx,
- bw = series.gantt.barWidth,
- lw = Math.min(series.gantt.lineWidth, bw);
-
- ctx.save();
- ctx.translate(this.plotOffset.left, this.plotOffset.top);
- ctx.lineJoin = 'miter';
-
+ options: {
+ show: false, // => setting to true will show gantt, false will hide
+ lineWidth: 2, // => in pixels
+ barWidth: 1, // => in units of the x axis
+ fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ fillColor: null, // => fill color
+ fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ centered: true // => center the bars to their x axis value
+ },
/**
- * @todo linewidth not interpreted the right way.
+ * Draws gantt series in the canvas element.
+ * @param {Object} series - Series with options.gantt.show = true.
*/
- ctx.lineWidth = lw;
- ctx.strokeStyle = series.color;
-
- ctx.save();
- this.gantt.plotShadows(series, bw, 0, series.gantt.fill);
- ctx.restore();
-
- if(series.gantt.fill){
- var color = series.gantt.fillColor || series.color;
- ctx.fillStyle = this.processColor(color, {opacity: series.gantt.fillOpacity});
+ draw: function (series) {
+ var ctx = this.ctx,
+ bw = series.gantt.barWidth,
+ lw = Math.min(series.gantt.lineWidth, bw);
+
+ ctx.save();
+ ctx.translate(this.plotOffset.left, this.plotOffset.top);
+ ctx.lineJoin = 'miter';
+
+ /**
+ * @todo linewidth not interpreted the right way.
+ */
+ ctx.lineWidth = lw;
+ ctx.strokeStyle = series.color;
+
+ ctx.save();
+ this.gantt.plotShadows(series, bw, 0, series.gantt.fill);
+ ctx.restore();
+
+ if (series.gantt.fill) {
+ var color = series.gantt.fillColor || series.color;
+ ctx.fillStyle = this.processColor(color, {opacity: series.gantt.fillOpacity});
+ }
+
+ this.gantt.plot(series, bw, 0, series.gantt.fill);
+ ctx.restore();
+ },
+ plot: function (series, barWidth, offset, fill) {
+ var data = series.data;
+ if (data.length < 1) return;
+
+ var xa = series.xaxis,
+ ya = series.yaxis,
+ ctx = this.ctx, i;
+
+ for (i = 0; i < data.length; i++) {
+ var y = data[i][0],
+ s = data[i][1],
+ d = data[i][2],
+ drawLeft = true, drawTop = true, drawRight = true;
+
+ if (s === null || d === null) continue;
+
+ var left = s,
+ right = s + d,
+ bottom = y - (series.gantt.centered ? barWidth / 2 : 0),
+ top = y + barWidth - (series.gantt.centered ? barWidth / 2 : 0);
+
+ if (right < xa.min || left > xa.max || top < ya.min || bottom > ya.max)
+ continue;
+
+ if (left < xa.min) {
+ left = xa.min;
+ drawLeft = false;
+ }
+
+ if (right > xa.max) {
+ right = xa.max;
+ if (xa.lastSerie != series)
+ drawTop = false;
+ }
+
+ if (bottom < ya.min)
+ bottom = ya.min;
+
+ if (top > ya.max) {
+ top = ya.max;
+ if (ya.lastSerie != series)
+ drawTop = false;
+ }
+
+ /**
+ * Fill the bar.
+ */
+ if (fill) {
+ ctx.beginPath();
+ ctx.moveTo(xa.d2p(left), ya.d2p(bottom) + offset);
+ ctx.lineTo(xa.d2p(left), ya.d2p(top) + offset);
+ ctx.lineTo(xa.d2p(right), ya.d2p(top) + offset);
+ ctx.lineTo(xa.d2p(right), ya.d2p(bottom) + offset);
+ ctx.fill();
+ ctx.closePath();
+ }
+
+ /**
+ * Draw bar outline/border.
+ */
+ if (series.gantt.lineWidth && (drawLeft || drawRight || drawTop)) {
+ ctx.beginPath();
+ ctx.moveTo(xa.d2p(left), ya.d2p(bottom) + offset);
+
+ ctx[drawLeft ? 'lineTo' : 'moveTo'](xa.d2p(left), ya.d2p(top) + offset);
+ ctx[drawTop ? 'lineTo' : 'moveTo'](xa.d2p(right), ya.d2p(top) + offset);
+ ctx[drawRight ? 'lineTo' : 'moveTo'](xa.d2p(right), ya.d2p(bottom) + offset);
+
+ ctx.stroke();
+ ctx.closePath();
+ }
+ }
+ },
+ plotShadows: function (series, barWidth, offset) {
+ var data = series.data;
+ if (data.length < 1) return;
+
+ var i, y, s, d,
+ xa = series.xaxis,
+ ya = series.yaxis,
+ ctx = this.ctx,
+ sw = this.options.shadowSize;
+
+ for (i = 0; i < data.length; i++) {
+ y = data[i][0];
+ s = data[i][1];
+ d = data[i][2];
+
+ if (s === null || d === null) continue;
+
+ var left = s,
+ right = s + d,
+ bottom = y - (series.gantt.centered ? barWidth / 2 : 0),
+ top = y + barWidth - (series.gantt.centered ? barWidth / 2 : 0);
+
+ if (right < xa.min || left > xa.max || top < ya.min || bottom > ya.max)
+ continue;
+
+ if (left < xa.min) left = xa.min;
+ if (right > xa.max) right = xa.max;
+ if (bottom < ya.min) bottom = ya.min;
+ if (top > ya.max) top = ya.max;
+
+ var width = xa.d2p(right) - xa.d2p(left) - ((xa.d2p(right) + sw <= this.plotWidth) ? 0 : sw);
+ var height = ya.d2p(bottom) - ya.d2p(top) - ((ya.d2p(bottom) + sw <= this.plotHeight) ? 0 : sw );
+
+ ctx.fillStyle = 'rgba(0,0,0,0.05)';
+ ctx.fillRect(Math.min(xa.d2p(left) + sw, this.plotWidth), Math.min(ya.d2p(top) + sw, this.plotHeight), width, height);
+ }
+ },
+ extendXRange: function (axis) {
+ if (axis.options.max === null) {
+ var newmin = axis.min,
+ newmax = axis.max,
+ i, j, x, s, g,
+ stackedSumsPos = {},
+ stackedSumsNeg = {},
+ lastSerie = null;
+
+ for (i = 0; i < this.series.length; ++i) {
+ s = this.series[i];
+ g = s.gantt;
+
+ if (g.show && s.xaxis == axis) {
+ for (j = 0; j < s.data.length; j++) {
+ if (g.show) {
+ y = s.data[j][0] + '';
+ stackedSumsPos[y] = Math.max((stackedSumsPos[y] || 0), s.data[j][1] + s.data[j][2]);
+ lastSerie = s;
+ }
+ }
+ for (j in stackedSumsPos) {
+ newmax = Math.max(stackedSumsPos[j], newmax);
+ }
+ }
+ }
+ axis.lastSerie = lastSerie;
+ axis.max = newmax;
+ axis.min = newmin;
+ }
+ },
+ extendYRange: function (axis) {
+ if (axis.options.max === null) {
+ var newmax = Number.MIN_VALUE,
+ newmin = Number.MAX_VALUE,
+ i, j, s, g,
+ stackedSumsPos = {},
+ stackedSumsNeg = {},
+ lastSerie = null;
+
+ for (i = 0; i < this.series.length; ++i) {
+ s = this.series[i];
+ g = s.gantt;
+
+ if (g.show && !s.hide && s.yaxis == axis) {
+ var datamax = Number.MIN_VALUE, datamin = Number.MAX_VALUE;
+ for (j = 0; j < s.data.length; j++) {
+ datamax = Math.max(datamax, s.data[j][0]);
+ datamin = Math.min(datamin, s.data[j][0]);
+ }
+
+ if (g.centered) {
+ newmax = Math.max(datamax + 0.5, newmax);
+ newmin = Math.min(datamin - 0.5, newmin);
+ }
+ else {
+ newmax = Math.max(datamax + 1, newmax);
+ newmin = Math.min(datamin, newmin);
+ }
+ // For normal horizontal bars
+ if (g.barWidth + datamax > newmax) {
+ newmax = axis.max + g.barWidth;
+ }
+ }
+ }
+ axis.lastSerie = lastSerie;
+ axis.max = newmax;
+ axis.min = newmin;
+ axis.tickSize = Flotr.getTickSize(axis.options.noTicks, newmin, newmax, axis.options.tickDecimals);
+ }
}
-
- this.gantt.plot(series, bw, 0, series.gantt.fill);
- ctx.restore();
- },
- plot: function(series, barWidth, offset, fill){
- var data = series.data;
- if(data.length < 1) return;
-
- var xa = series.xaxis,
- ya = series.yaxis,
- ctx = this.ctx, i;
-
- for(i = 0; i < data.length; i++){
- var y = data[i][0],
- s = data[i][1],
- d = data[i][2],
- drawLeft = true, drawTop = true, drawRight = true;
-
- if (s === null || d === null) continue;
-
- var left = s,
- right = s + d,
- bottom = y - (series.gantt.centered ? barWidth/2 : 0),
- top = y + barWidth - (series.gantt.centered ? barWidth/2 : 0);
-
- if(right < xa.min || left > xa.max || top < ya.min || bottom > ya.max)
- continue;
-
- if(left < xa.min){
- left = xa.min;
- drawLeft = false;
- }
-
- if(right > xa.max){
- right = xa.max;
- if (xa.lastSerie != series)
- drawTop = false;
- }
-
- if(bottom < ya.min)
- bottom = ya.min;
-
- if(top > ya.max){
- top = ya.max;
- if (ya.lastSerie != series)
- drawTop = false;
- }
-
- /**
- * Fill the bar.
- */
- if(fill){
- ctx.beginPath();
- ctx.moveTo(xa.d2p(left), ya.d2p(bottom) + offset);
- ctx.lineTo(xa.d2p(left), ya.d2p(top) + offset);
- ctx.lineTo(xa.d2p(right), ya.d2p(top) + offset);
- ctx.lineTo(xa.d2p(right), ya.d2p(bottom) + offset);
- ctx.fill();
- ctx.closePath();
- }
-
- /**
- * Draw bar outline/border.
- */
- if(series.gantt.lineWidth && (drawLeft || drawRight || drawTop)){
- ctx.beginPath();
- ctx.moveTo(xa.d2p(left), ya.d2p(bottom) + offset);
-
- ctx[drawLeft ?'lineTo':'moveTo'](xa.d2p(left), ya.d2p(top) + offset);
- ctx[drawTop ?'lineTo':'moveTo'](xa.d2p(right), ya.d2p(top) + offset);
- ctx[drawRight?'lineTo':'moveTo'](xa.d2p(right), ya.d2p(bottom) + offset);
-
- ctx.stroke();
- ctx.closePath();
- }
- }
- },
- plotShadows: function(series, barWidth, offset){
- var data = series.data;
- if(data.length < 1) return;
-
- var i, y, s, d,
- xa = series.xaxis,
- ya = series.yaxis,
- ctx = this.ctx,
- sw = this.options.shadowSize;
-
- for(i = 0; i < data.length; i++){
- y = data[i][0];
- s = data[i][1];
- d = data[i][2];
-
- if (s === null || d === null) continue;
-
- var left = s,
- right = s + d,
- bottom = y - (series.gantt.centered ? barWidth/2 : 0),
- top = y + barWidth - (series.gantt.centered ? barWidth/2 : 0);
-
- if(right < xa.min || left > xa.max || top < ya.min || bottom > ya.max)
- continue;
-
- if(left < xa.min) left = xa.min;
- if(right > xa.max) right = xa.max;
- if(bottom < ya.min) bottom = ya.min;
- if(top > ya.max) top = ya.max;
-
- var width = xa.d2p(right)-xa.d2p(left)-((xa.d2p(right)+sw <= this.plotWidth) ? 0 : sw);
- var height = ya.d2p(bottom)-ya.d2p(top)-((ya.d2p(bottom)+sw <= this.plotHeight) ? 0 : sw );
-
- ctx.fillStyle = 'rgba(0,0,0,0.05)';
- ctx.fillRect(Math.min(xa.d2p(left)+sw, this.plotWidth), Math.min(ya.d2p(top)+sw, this.plotHeight), width, height);
- }
- },
- extendXRange: function(axis) {
- if(axis.options.max === null){
- var newmin = axis.min,
- newmax = axis.max,
- i, j, x, s, g,
- stackedSumsPos = {},
- stackedSumsNeg = {},
- lastSerie = null;
-
- for(i = 0; i < this.series.length; ++i){
- s = this.series[i];
- g = s.gantt;
-
- if(g.show && s.xaxis == axis) {
- for (j = 0; j < s.data.length; j++) {
- if (g.show) {
- y = s.data[j][0]+'';
- stackedSumsPos[y] = Math.max((stackedSumsPos[y] || 0), s.data[j][1]+s.data[j][2]);
- lastSerie = s;
- }
- }
- for (j in stackedSumsPos) {
- newmax = Math.max(stackedSumsPos[j], newmax);
- }
- }
- }
- axis.lastSerie = lastSerie;
- axis.max = newmax;
- axis.min = newmin;
- }
- },
- extendYRange: function(axis){
- if(axis.options.max === null){
- var newmax = Number.MIN_VALUE,
- newmin = Number.MAX_VALUE,
- i, j, s, g,
- stackedSumsPos = {},
- stackedSumsNeg = {},
- lastSerie = null;
-
- for(i = 0; i < this.series.length; ++i){
- s = this.series[i];
- g = s.gantt;
-
- if (g.show && !s.hide && s.yaxis == axis) {
- var datamax = Number.MIN_VALUE, datamin = Number.MAX_VALUE;
- for(j=0; j < s.data.length; j++){
- datamax = Math.max(datamax,s.data[j][0]);
- datamin = Math.min(datamin,s.data[j][0]);
- }
-
- if (g.centered) {
- newmax = Math.max(datamax + 0.5, newmax);
- newmin = Math.min(datamin - 0.5, newmin);
- }
- else {
- newmax = Math.max(datamax + 1, newmax);
- newmin = Math.min(datamin, newmin);
- }
- // For normal horizontal bars
- if (g.barWidth + datamax > newmax){
- newmax = axis.max + g.barWidth;
- }
- }
- }
- axis.lastSerie = lastSerie;
- axis.max = newmax;
- axis.min = newmin;
- axis.tickSize = Flotr.getTickSize(axis.options.noTicks, newmin, newmax, axis.options.tickDecimals);
- }
- }
});
/** Markers **/
@@ -4496,136 +4560,136 @@
*/
(function () {
-Flotr.defaultMarkerFormatter = function(obj){
- return (Math.round(obj.y*100)/100)+'';
-};
-
-Flotr.addType('markers', {
- options: {
- show: false, // => setting to true will show markers, false will hide
- lineWidth: 1, // => line width of the rectangle around the marker
- color: '#000000', // => text color
- fill: false, // => fill or not the marekers' rectangles
- fillColor: "#FFFFFF", // => fill color
- fillOpacity: 0.4, // => fill opacity
- stroke: false, // => draw the rectangle around the markers
- position: 'ct', // => the markers position (vertical align: b, m, t, horizontal align: l, c, r)
- verticalMargin: 0, // => the margin between the point and the text.
- labelFormatter: Flotr.defaultMarkerFormatter,
- fontSize: Flotr.defaultOptions.fontSize,
- stacked: false, // => true if markers should be stacked
- stackingType: 'b', // => define staching behavior, (b- bars like, a - area like) (see Issue 125 for details)
- horizontal: false // => true if markers should be horizontal (For now only in a case on horizontal stacked bars, stacks should be calculated horizontaly)
- },
-
- // TODO test stacked markers.
- stack : {
- positive : [],
- negative : [],
- values : []
- },
-
- draw : function (options) {
-
- var
- data = options.data,
- context = options.context,
- stack = options.stacked ? options.stack : false,
- stackType = options.stackingType,
- stackOffsetNeg,
- stackOffsetPos,
- stackOffset,
- i, x, y, label;
-
- context.save();
- context.lineJoin = 'round';
- context.lineWidth = options.lineWidth;
- context.strokeStyle = 'rgba(0,0,0,0.5)';
- context.fillStyle = options.fillStyle;
-
- function stackPos (a, b) {
- stackOffsetPos = stack.negative[a] || 0;
- stackOffsetNeg = stack.positive[a] || 0;
- if (b > 0) {
- stack.positive[a] = stackOffsetPos + b;
- return stackOffsetPos + b;
- } else {
- stack.negative[a] = stackOffsetNeg + b;
- return stackOffsetNeg + b;
- }
+ Flotr.defaultMarkerFormatter = function (obj) {
+ return (Math.round(obj.y * 100) / 100) + '';
+ };
+
+ Flotr.addType('markers', {
+ options: {
+ show: false, // => setting to true will show markers, false will hide
+ lineWidth: 1, // => line width of the rectangle around the marker
+ color: '#000000', // => text color
+ fill: false, // => fill or not the marekers' rectangles
+ fillColor: "#FFFFFF", // => fill color
+ fillOpacity: 0.4, // => fill opacity
+ stroke: false, // => draw the rectangle around the markers
+ position: 'ct', // => the markers position (vertical align: b, m, t, horizontal align: l, c, r)
+ verticalMargin: 0, // => the margin between the point and the text.
+ labelFormatter: Flotr.defaultMarkerFormatter,
+ fontSize: Flotr.defaultOptions.fontSize,
+ stacked: false, // => true if markers should be stacked
+ stackingType: 'b', // => define staching behavior, (b- bars like, a - area like) (see Issue 125 for details)
+ horizontal: false // => true if markers should be horizontal (For now only in a case on horizontal stacked bars, stacks should be calculated horizontaly)
+ },
+
+ // TODO test stacked markers.
+ stack: {
+ positive: [],
+ negative: [],
+ values: []
+ },
+
+ draw: function (options) {
+
+ var
+ data = options.data,
+ context = options.context,
+ stack = options.stacked ? options.stack : false,
+ stackType = options.stackingType,
+ stackOffsetNeg,
+ stackOffsetPos,
+ stackOffset,
+ i, x, y, label;
+
+ context.save();
+ context.lineJoin = 'round';
+ context.lineWidth = options.lineWidth;
+ context.strokeStyle = 'rgba(0,0,0,0.5)';
+ context.fillStyle = options.fillStyle;
+
+ function stackPos(a, b) {
+ stackOffsetPos = stack.negative[a] || 0;
+ stackOffsetNeg = stack.positive[a] || 0;
+ if (b > 0) {
+ stack.positive[a] = stackOffsetPos + b;
+ return stackOffsetPos + b;
+ } else {
+ stack.negative[a] = stackOffsetNeg + b;
+ return stackOffsetNeg + b;
+ }
+ }
+
+ for (i = 0; i < data.length; ++i) {
+
+ x = data[i][0];
+ y = data[i][1];
+
+ if (stack) {
+ if (stackType == 'b') {
+ if (options.horizontal) y = stackPos(y, x);
+ else x = stackPos(x, y);
+ } else if (stackType == 'a') {
+ stackOffset = stack.values[x] || 0;
+ stack.values[x] = stackOffset + y;
+ y = stackOffset + y;
+ }
+ }
+
+ label = options.labelFormatter({x: x, y: y, index: i, data: data});
+ this.plot(options.xScale(x), options.yScale(y), label, options);
+ }
+ context.restore();
+ },
+ plot: function (x, y, label, options) {
+ var context = options.context;
+ if (isImage(label) && !label.complete) {
+ throw 'Marker image not loaded.';
+ } else {
+ this._plot(x, y, label, options);
+ }
+ },
+
+ _plot: function (x, y, label, options) {
+ var context = options.context,
+ margin = 2,
+ left = x,
+ top = y,
+ dim;
+
+ if (isImage(label))
+ dim = {height: label.height, width: label.width};
+ else
+ dim = options.text.canvas(label);
+
+ dim.width = Math.floor(dim.width + margin * 2);
+ dim.height = Math.floor(dim.height + margin * 2);
+
+ if (options.position.indexOf('c') != -1) left -= dim.width / 2 + margin;
+ else if (options.position.indexOf('l') != -1) left -= dim.width;
+
+ if (options.position.indexOf('m') != -1) top -= dim.height / 2 + margin;
+ else if (options.position.indexOf('t') != -1) top -= dim.height + options.verticalMargin;
+ else top += options.verticalMargin;
+
+ left = Math.floor(left) + 0.5;
+ top = Math.floor(top) + 0.5;
+
+ if (options.fill)
+ context.fillRect(left, top, dim.width, dim.height);
+
+ if (options.stroke)
+ context.strokeRect(left, top, dim.width, dim.height);
+
+ if (isImage(label))
+ context.drawImage(label, left + margin, top + margin);
+ else
+ Flotr.drawText(context, label, left + margin, top + margin, {textBaseline: 'top', textAlign: 'left', size: options.fontSize, color: options.color});
+ }
+ });
+
+ function isImage(i) {
+ return typeof i === 'object' && i.constructor && (Image ? true : i.constructor === Image);
}
-
- for (i = 0; i < data.length; ++i) {
-
- x = data[i][0];
- y = data[i][1];
-
- if (stack) {
- if (stackType == 'b') {
- if (options.horizontal) y = stackPos(y, x);
- else x = stackPos(x, y);
- } else if (stackType == 'a') {
- stackOffset = stack.values[x] || 0;
- stack.values[x] = stackOffset + y;
- y = stackOffset + y;
- }
- }
-
- label = options.labelFormatter({x: x, y: y, index: i, data : data});
- this.plot(options.xScale(x), options.yScale(y), label, options);
- }
- context.restore();
- },
- plot: function(x, y, label, options) {
- var context = options.context;
- if (isImage(label) && !label.complete) {
- throw 'Marker image not loaded.';
- } else {
- this._plot(x, y, label, options);
- }
- },
-
- _plot: function(x, y, label, options) {
- var context = options.context,
- margin = 2,
- left = x,
- top = y,
- dim;
-
- if (isImage(label))
- dim = {height : label.height, width: label.width};
- else
- dim = options.text.canvas(label);
-
- dim.width = Math.floor(dim.width+margin*2);
- dim.height = Math.floor(dim.height+margin*2);
-
- if (options.position.indexOf('c') != -1) left -= dim.width/2 + margin;
- else if (options.position.indexOf('l') != -1) left -= dim.width;
-
- if (options.position.indexOf('m') != -1) top -= dim.height/2 + margin;
- else if (options.position.indexOf('t') != -1) top -= dim.height + options.verticalMargin;
- else top += options.verticalMargin;
-
- left = Math.floor(left)+0.5;
- top = Math.floor(top)+0.5;
-
- if(options.fill)
- context.fillRect(left, top, dim.width, dim.height);
-
- if(options.stroke)
- context.strokeRect(left, top, dim.width, dim.height);
-
- if (isImage(label))
- context.drawImage(label, left+margin, top+margin);
- else
- Flotr.drawText(context, label, left+margin, top+margin, {textBaseline: 'top', textAlign: 'left', size: options.fontSize, color: options.color});
- }
-});
-
-function isImage (i) {
- return typeof i === 'object' && i.constructor && (Image ? true : i.constructor === Image);
-}
})();
@@ -4637,1117 +4701,1120 @@
*/
(function () {
-var
- _ = Flotr._;
-
-Flotr.defaultPieLabelFormatter = function (total, value) {
- return (100 * value / total).toFixed(2)+'%';
-};
-
-Flotr.addType('pie', {
- options: {
- show: false, // => setting to true will show bars, false will hide
- lineWidth: 1, // => in pixels
- fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- fillColor: null, // => fill color
- fillOpacity: 0.6, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- explode: 6, // => the number of pixels the splices will be far from the center
- sizeRatio: 0.6, // => the size ratio of the pie relative to the plot
- startAngle: Math.PI/4, // => the first slice start angle
- labelFormatter: Flotr.defaultPieLabelFormatter,
- pie3D: false, // => whether to draw the pie in 3 dimenstions or not (ineffective)
- pie3DviewAngle: (Math.PI/2 * 0.8),
- pie3DspliceThickness: 20
- },
-
- draw : function (options) {
-
- // TODO 3D charts what?
-
var
- data = options.data,
- context = options.context,
- canvas = context.canvas,
- lineWidth = options.lineWidth,
- shadowSize = options.shadowSize,
- sizeRatio = options.sizeRatio,
- height = options.height,
- width = options.width,
- explode = options.explode,
- color = options.color,
- fill = options.fill,
- fillStyle = options.fillStyle,
- radius = Math.min(canvas.width, canvas.height) * sizeRatio / 2,
- value = data[0][1],
- html = [],
- vScale = 1,//Math.cos(series.pie.viewAngle);
- measure = Math.PI * 2 * value / this.total,
- startAngle = this.startAngle || (2 * Math.PI * options.startAngle), // TODO: this initial startAngle is already in radians (fixing will be test-unstable)
- endAngle = startAngle + measure,
- bisection = startAngle + measure / 2,
- label = options.labelFormatter(this.total, value),
- //plotTickness = Math.sin(series.pie.viewAngle)*series.pie.spliceThickness / vScale;
- explodeCoeff = explode + radius + 4,
- distX = Math.cos(bisection) * explodeCoeff,
- distY = Math.sin(bisection) * explodeCoeff,
- textAlign = distX < 0 ? 'right' : 'left',
- textBaseline = distY > 0 ? 'top' : 'bottom',
- style,
- x, y,
- distX, distY;
-
- context.save();
- context.translate(width / 2, height / 2);
- context.scale(1, vScale);
-
- x = Math.cos(bisection) * explode;
- y = Math.sin(bisection) * explode;
-
- // Shadows
- if (shadowSize > 0) {
- this.plotSlice(x + shadowSize, y + shadowSize, radius, startAngle, endAngle, context);
- if (fill) {
- context.fillStyle = 'rgba(0,0,0,0.1)';
- context.fill();
- }
- }
-
- this.plotSlice(x, y, radius, startAngle, endAngle, context);
- if (fill) {
- context.fillStyle = fillStyle;
- context.fill();
- }
- context.lineWidth = lineWidth;
- context.strokeStyle = color;
- context.stroke();
-
- style = {
- size : options.fontSize * 1.2,
- color : options.fontColor,
- weight : 1.5
- };
-
- if (label) {
- if (options.htmlText || !options.textEnabled) {
- divStyle = 'position:absolute;' + textBaseline + ':' + (height / 2 + (textBaseline === 'top' ? distY : -distY)) + 'px;';
- divStyle += textAlign + ':' + (width / 2 + (textAlign === 'right' ? -distX : distX)) + 'px;';
- html.push('<div style="', divStyle, '" class="flotr-grid-label">', label, '</div>');
- }
- else {
- style.textAlign = textAlign;
- style.textBaseline = textBaseline;
- Flotr.drawText(context, label, distX, distY, style);
- }
- }
-
- if (options.htmlText || !options.textEnabled) {
- var div = Flotr.DOM.node('<div style="color:' + options.fontColor + '" class="flotr-labels"></div>');
- Flotr.DOM.insert(div, html.join(''));
- Flotr.DOM.insert(options.element, div);
- }
-
- context.restore();
-
- // New start angle
- this.startAngle = endAngle;
- this.slices = this.slices || [];
- this.slices.push({
- radius : Math.min(canvas.width, canvas.height) * sizeRatio / 2,
- x : x,
- y : y,
- explode : explode,
- start : startAngle,
- end : endAngle
+ _ = Flotr._;
+
+ Flotr.defaultPieLabelFormatter = function (total, value) {
+ return (100 * value / total).toFixed(2) + '%';
+ };
+
+ Flotr.addType('pie', {
+ options: {
+ show: false, // => setting to true will show bars, false will hide
+ lineWidth: 1, // => in pixels
+ fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ fillColor: null, // => fill color
+ fillOpacity: 0.6, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ explode: 6, // => the number of pixels the splices will be far from the center
+ sizeRatio: 0.6, // => the size ratio of the pie relative to the plot
+ startAngle: Math.PI / 4, // => the first slice start angle
+ labelFormatter: Flotr.defaultPieLabelFormatter,
+ pie3D: false, // => whether to draw the pie in 3 dimenstions or not (ineffective)
+ pie3DviewAngle: (Math.PI / 2 * 0.8),
+ pie3DspliceThickness: 20
+ },
+
+ draw: function (options) {
+
+ // TODO 3D charts what?
+
+ var
+ data = options.data,
+ context = options.context,
+ canvas = context.canvas,
+ lineWidth = options.lineWidth,
+ shadowSize = options.shadowSize,
+ sizeRatio = options.sizeRatio,
+ height = options.height,
+ width = options.width,
+ explode = options.explode,
+ color = options.color,
+ fill = options.fill,
+ fillStyle = options.fillStyle,
+ radius = Math.min(canvas.width, canvas.height) * sizeRatio / 2,
+ value = data[0][1],
+ html = [],
+ vScale = 1,//Math.cos(series.pie.viewAngle);
+ measure = Math.PI * 2 * value / this.total,
+ startAngle = this.startAngle || (2 * Math.PI * options.startAngle), // TODO: this initial startAngle is already in radians (fixing will be test-unstable)
+ endAngle = startAngle + measure,
+ bisection = startAngle + measure / 2,
+ label = options.labelFormatter(this.total, value),
+ //plotTickness = Math.sin(series.pie.viewAngle)*series.pie.spliceThickness / vScale;
+ explodeCoeff = explode + radius + 4,
+ distX = Math.cos(bisection) * explodeCoeff,
+ distY = Math.sin(bisection) * explodeCoeff,
+ textAlign = distX < 0 ? 'right' : 'left',
+ textBaseline = distY > 0 ? 'top' : 'bottom',
+ style,
+ x, y,
+ distX, distY;
+
+ context.save();
+ context.translate(width / 2, height / 2);
+ context.scale(1, vScale);
+
+ x = Math.cos(bisection) * explode;
+ y = Math.sin(bisection) * explode;
+
+ // Shadows
+ if (shadowSize > 0) {
+ this.plotSlice(x + shadowSize, y + shadowSize, radius, startAngle, endAngle, context);
+ if (fill) {
+ context.fillStyle = 'rgba(0,0,0,0.1)';
+ context.fill();
+ }
+ }
+
+ this.plotSlice(x, y, radius, startAngle, endAngle, context);
+ if (fill) {
+ context.fillStyle = fillStyle;
+ context.fill();
+ }
+ context.lineWidth = lineWidth;
+ context.strokeStyle = color;
+ context.stroke();
+
+ style = {
+ size: options.fontSize * 1.2,
+ color: options.fontColor,
+ weight: 1.5
+ };
+
+ if (label) {
+ if (options.htmlText || !options.textEnabled) {
+ divStyle = 'position:absolute;' + textBaseline + ':' + (height / 2 + (textBaseline === 'top' ? distY : -distY)) + 'px;';
+ divStyle += textAlign + ':' + (width / 2 + (textAlign === 'right' ? -distX : distX)) + 'px;';
+ html.push('<div style="', divStyle, '" class="flotr-grid-label">', label, '</div>');
+ }
+ else {
+ style.textAlign = textAlign;
+ style.textBaseline = textBaseline;
+ Flotr.drawText(context, label, distX, distY, style);
+ }
+ }
+
+ if (options.htmlText || !options.textEnabled) {
+ var div = Flotr.DOM.node('<div style="color:' + options.fontColor + '" class="flotr-labels"></div>');
+ Flotr.DOM.insert(div, html.join(''));
+ Flotr.DOM.insert(options.element, div);
+ }
+
+ context.restore();
+
+ // New start angle
+ this.startAngle = endAngle;
+ this.slices = this.slices || [];
+ this.slices.push({
+ radius: Math.min(canvas.width, canvas.height) * sizeRatio / 2,
+ x: x,
+ y: y,
+ explode: explode,
+ start: startAngle,
+ end: endAngle
+ });
+ },
+ plotSlice: function (x, y, radius, startAngle, endAngle, context) {
+ context.beginPath();
+ context.moveTo(x, y);
+ context.arc(x, y, radius, startAngle, endAngle, false);
+ context.lineTo(x, y);
+ context.closePath();
+ },
+ hit: function (options) {
+
+ var
+ data = options.data[0],
+ args = options.args,
+ index = options.index,
+ mouse = args[0],
+ n = args[1],
+ slice = this.slices[index],
+ x = mouse.relX - options.width / 2,
+ y = mouse.relY - options.height / 2,
+ r = Math.sqrt(x * x + y * y),
+ theta = Math.atan(y / x),
+ circle = Math.PI * 2,
+ explode = slice.explode || options.explode,
+ start = slice.start % circle,
+ end = slice.end % circle;
+
+ if (x < 0) {
+ theta += Math.PI;
+ } else if (x > 0 && y < 0) {
+ theta += circle;
+ }
+
+ if (r < slice.radius + explode && r > explode) {
+ if ((start >= end && (theta < end || theta > start)) ||
+ (theta > start && theta < end)) {
+
+ // TODO Decouple this from hit plugin (chart shouldn't know what n means)
+ n.x = data[0];
+ n.y = data[1];
+ n.sAngle = start;
+ n.eAngle = end;
+ n.index = 0;
+ n.seriesIndex = index;
+ n.fraction = data[1] / this.total;
+ }
+ }
+ },
+ drawHit: function (options) {
+ var
+ context = options.context,
+ slice = this.slices[options.args.seriesIndex];
+
+ context.save();
+ context.translate(options.width / 2, options.height / 2);
+ this.plotSlice(slice.x, slice.y, slice.radius, slice.start, slice.end, context);
+ context.stroke();
+ context.restore();
+ },
+ clearHit: function (options) {
+ var
+ context = options.context,
+ slice = this.slices[options.args.seriesIndex],
+ padding = 2 * options.lineWidth,
+ radius = slice.radius + padding;
+
+ context.save();
+ context.translate(options.width / 2, options.height / 2);
+ context.clearRect(
+ slice.x - radius,
+ slice.y - radius,
+ 2 * radius + padding,
+ 2 * radius + padding
+ );
+ context.restore();
+ },
+ extendYRange: function (axis, data) {
+ this.total = (this.total || 0) + data[0][1];
+ }
});
- },
- plotSlice : function (x, y, radius, startAngle, endAngle, context) {
- context.beginPath();
- context.moveTo(x, y);
- context.arc(x, y, radius, startAngle, endAngle, false);
- context.lineTo(x, y);
- context.closePath();
- },
- hit : function (options) {
-
- var
- data = options.data[0],
- args = options.args,
- index = options.index,
- mouse = args[0],
- n = args[1],
- slice = this.slices[index],
- x = mouse.relX - options.width / 2,
- y = mouse.relY - options.height / 2,
- r = Math.sqrt(x * x + y * y),
- theta = Math.atan(y / x),
- circle = Math.PI * 2,
- explode = slice.explode || options.explode,
- start = slice.start % circle,
- end = slice.end % circle;
-
- if (x < 0) {
- theta += Math.PI;
- } else if (x > 0 && y < 0) {
- theta += circle;
- }
-
- if (r < slice.radius + explode && r > explode) {
- if ((start >= end && (theta < end || theta > start)) ||
- (theta > start && theta < end)) {
-
- // TODO Decouple this from hit plugin (chart shouldn't know what n means)
- n.x = data[0];
- n.y = data[1];
- n.sAngle = start;
- n.eAngle = end;
- n.index = 0;
- n.seriesIndex = index;
- n.fraction = data[1] / this.total;
- }
- }
- },
- drawHit: function (options) {
- var
- context = options.context,
- slice = this.slices[options.args.seriesIndex];
-
- context.save();
- context.translate(options.width / 2, options.height / 2);
- this.plotSlice(slice.x, slice.y, slice.radius, slice.start, slice.end, context);
- context.stroke();
- context.restore();
- },
- clearHit : function (options) {
- var
- context = options.context,
- slice = this.slices[options.args.seriesIndex],
- padding = 2 * options.lineWidth,
- radius = slice.radius + padding;
-
- context.save();
- context.translate(options.width / 2, options.height / 2);
- context.clearRect(
- slice.x - radius,
- slice.y - radius,
- 2 * radius + padding,
- 2 * radius + padding
- );
- context.restore();
- },
- extendYRange : function (axis, data) {
- this.total = (this.total || 0) + data[0][1];
- }
-});
})();
/** Points **/
Flotr.addType('points', {
- options: {
- show: false, // => setting to true will show points, false will hide
- radius: 3, // => point radius (pixels)
- lineWidth: 2, // => line width in pixels
- fill: true, // => true to fill the points with a color, false for (transparent) no fill
- fillColor: '#FFFFFF', // => fill color
- fillOpacity: 0.4 // => opacity of color inside the points
- },
-
- draw : function (options) {
- var
- context = options.context,
- lineWidth = options.lineWidth,
- shadowSize = options.shadowSize;
-
- context.save();
-
- if (shadowSize > 0) {
- context.lineWidth = shadowSize / 2;
-
- context.strokeStyle = 'rgba(0,0,0,0.1)';
- this.plot(options, shadowSize / 2 + context.lineWidth / 2);
-
- context.strokeStyle = 'rgba(0,0,0,0.2)';
- this.plot(options, context.lineWidth / 2);
+ options: {
+ show: false, // => setting to true will show points, false will hide
+ radius: 3, // => point radius (pixels)
+ lineWidth: 2, // => line width in pixels
+ fill: true, // => true to fill the points with a color, false for (transparent) no fill
+ fillColor: '#FFFFFF', // => fill color
+ fillOpacity: 0.4 // => opacity of color inside the points
+ },
+
+ draw: function (options) {
+ var
+ context = options.context,
+ lineWidth = options.lineWidth,
+ shadowSize = options.shadowSize;
+
+ context.save();
+
+ if (shadowSize > 0) {
+ context.lineWidth = shadowSize / 2;
+
+ context.strokeStyle = 'rgba(0,0,0,0.1)';
+ this.plot(options, shadowSize / 2 + context.lineWidth / 2);
+
+ context.strokeStyle = 'rgba(0,0,0,0.2)';
+ this.plot(options, context.lineWidth / 2);
+ }
+
+ context.lineWidth = options.lineWidth;
+ context.strokeStyle = options.color;
+ context.fillStyle = options.fillColor || options.color;
+
+ this.plot(options);
+ context.restore();
+ },
+
+ plot: function (options, offset) {
+ var
+ data = options.data,
+ context = options.context,
+ xScale = options.xScale,
+ yScale = options.yScale,
+ i, x, y;
+
+ for (i = data.length - 1; i > -1; --i) {
+ y = data[i][1];
+ if (y === null) continue;
+
+ x = xScale(data[i][0]);
+ y = yScale(y);
+
+ if (x < 0 || x > options.width || y < 0 || y > options.height) continue;
+
+ context.beginPath();
+ if (offset) {
+ context.arc(x, y + offset, options.radius, 0, Math.PI, false);
+ } else {
+ context.arc(x, y, options.radius, 0, 2 * Math.PI, true);
+ if (options.fill) context.fill();
+ }
+ context.stroke();
+ context.closePath();
+ }
}
-
- context.lineWidth = options.lineWidth;
- context.strokeStyle = options.color;
- context.fillStyle = options.fillColor || options.color;
-
- this.plot(options);
- context.restore();
- },
-
- plot : function (options, offset) {
- var
- data = options.data,
- context = options.context,
- xScale = options.xScale,
- yScale = options.yScale,
- i, x, y;
-
- for (i = data.length - 1; i > -1; --i) {
- y = data[i][1];
- if (y === null) continue;
-
- x = xScale(data[i][0]);
- y = yScale(y);
-
- if (x < 0 || x > options.width || y < 0 || y > options.height) continue;
-
- context.beginPath();
- if (offset) {
- context.arc(x, y + offset, options.radius, 0, Math.PI, false);
- } else {
- context.arc(x, y, options.radius, 0, 2 * Math.PI, true);
- if (options.fill) context.fill();
- }
- context.stroke();
- context.closePath();
- }
- }
});
/** Radar **/
Flotr.addType('radar', {
- options: {
- show: false, // => setting to true will show radar chart, false will hide
- lineWidth: 2, // => line width in pixels
- fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
- fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
- radiusRatio: 0.90 // => ratio of the radar, against the plot size
- },
- draw : function (options) {
+ options: {
+ show: false, // => setting to true will show radar chart, false will hide
+ lineWidth: 2, // => line width in pixels
+ fill: true, // => true to fill the area from the line to the x axis, false for (transparent) no fill
+ fillOpacity: 0.4, // => opacity of the fill color, set to 1 for a solid fill, 0 hides the fill
+ radiusRatio: 0.90 // => ratio of the radar, against the plot size
+ },
+ draw: function (options) {
+ var
+ context = options.context,
+ shadowSize = options.shadowSize;
+
+ context.save();
+ context.translate(options.width / 2, options.height / 2);
+ context.lineWidth = options.lineWidth;
+
+ // Shadow
+ context.fillStyle = 'rgba(0,0,0,0.05)';
+ context.strokeStyle = 'rgba(0,0,0,0.05)';
+ this.plot(options, shadowSize / 2);
+ context.strokeStyle = 'rgba(0,0,0,0.1)';
+ this.plot(options, shadowSize / 4);
+
+ // Chart
+ context.strokeStyle = options.color;
+ context.fillStyle = options.fillStyle;
+ this.plot(options);
+
+ context.restore();
+ },
+ plot: function (options, offset) {
+ var
+ data = options.data,
+ context = options.context,
+ radius = Math.min(options.height, options.width) * options.radiusRatio / 2,
+ step = 2 * Math.PI / data.length,
+ angle = -Math.PI / 2,
+ i, ratio;
+
+ offset = offset || 0;
+
+ context.beginPath();
+ for (i = 0; i < data.length; ++i) {
+ ratio = data[i][1] / this.max;
+
+ context[i === 0 ? 'moveTo' : 'lineTo'](
+ Math.cos(i * step + angle) * radius * ratio + offset,
+ Math.sin(i * step + angle) * radius * ratio + offset
+ );
+ }
+ context.closePath();
+ if (options.fill) context.fill();
+ context.stroke();
+ },
+ extendYRange: function (axis, data) {
+ this.max = Math.max(axis.max, this.max || -Number.MAX_VALUE);
+ }
+});
+
+Flotr.addType('timeline', {
+ options: {
+ show: false,
+ lineWidth: 1,
+ barWidth: 0.2,
+ fill: true,
+ fillColor: null,
+ fillOpacity: 0.4,
+ centered: true
+ },
+
+ draw: function (options) {
+
+ var
+ context = options.context;
+
+ context.save();
+ context.lineJoin = 'miter';
+ context.lineWidth = options.lineWidth;
+ context.strokeStyle = options.color;
+ context.fillStyle = options.fillStyle;
+
+ this.plot(options);
+
+ context.restore();
+ },
+
+ plot: function (options) {
+
+ var
+ data = options.data,
+ context = options.context,
+ xScale = options.xScale,
+ yScale = options.yScale,
+ barWidth = options.barWidth,
+ lineWidth = options.lineWidth,
+ i;
+
+ Flotr._.each(data, function (timeline) {
+
+ var
+ x = timeline[0],
+ y = timeline[1],
+ w = timeline[2],
+ h = barWidth,
+
+ xt = Math.ceil(xScale(x)),
+ wt = Math.ceil(xScale(x + w)) - xt,
+ yt = Math.round(yScale(y)),
+ ht = Math.round(yScale(y - h)) - yt,
+
+ x0 = xt - lineWidth / 2,
+ y0 = Math.round(yt - ht / 2) - lineWidth / 2;
+
+ context.strokeRect(x0, y0, wt, ht);
+ context.fillRect(x0, y0, wt, ht);
+
+ });
+ },
+
+ extendRange: function (series) {
+
+ var
+ data = series.data,
+ xa = series.xaxis,
+ ya = series.yaxis,
+ w = series.timeline.barWidth;
+
+ if (xa.options.min === null)
+ xa.min = xa.datamin - w / 2;
+
+ if (xa.options.max === null) {
+
+ var
+ max = xa.max;
+
+ Flotr._.each(data, function (timeline) {
+ max = Math.max(max, timeline[0] + timeline[2]);
+ }, this);
+
+ xa.max = max + w / 2;
+ }
+
+ if (ya.options.min === null)
+ ya.min = ya.datamin - w;
+ if (ya.options.min === null)
+ ya.max = ya.datamax + w;
+ }
+
+});
+
+(function () {
+
+ var D = Flotr.DOM;
+
+ Flotr.addPlugin('crosshair', {
+ options: {
+ mode: null, // => one of null, 'x', 'y' or 'xy'
+ color: '#FF0000', // => crosshair color
+ hideCursor: true // => hide the cursor when the crosshair is shown
+ },
+ callbacks: {
+ 'flotr:mousemove': function (e, pos) {
+ if (this.options.crosshair.mode) {
+ this.crosshair.clearCrosshair();
+ this.crosshair.drawCrosshair(pos);
+ }
+ }
+ },
+ /**
+ * Draws the selection box.
+ */
+ drawCrosshair: function (pos) {
+ var octx = this.octx,
+ options = this.options.crosshair,
+ plotOffset = this.plotOffset,
+ x = plotOffset.left + pos.relX + 0.5,
+ y = plotOffset.top + pos.relY + 0.5;
+
+ if (pos.relX < 0 || pos.relY < 0 || pos.relX > this.plotWidth || pos.relY > this.plotHeight) {
+ this.el.style.cursor = null;
+ D.removeClass(this.el, 'flotr-crosshair');
+ return;
+ }
+
+ if (options.hideCursor) {
+ this.el.style.cursor = 'none';
+ D.addClass(this.el, 'flotr-crosshair');
+ }
+
+ octx.save();
+ octx.strokeStyle = options.color;
+ octx.lineWidth = 1;
+ octx.beginPath();
+
+ if (options.mode.indexOf('x') != -1) {
+ octx.moveTo(x, plotOffset.top);
+ octx.lineTo(x, plotOffset.top + this.plotHeight);
+ }
+
+ if (options.mode.indexOf('y') != -1) {
+ octx.moveTo(plotOffset.left, y);
+ octx.lineTo(plotOffset.left + this.plotWidth, y);
+ }
+
+ octx.stroke();
+ octx.restore();
+ },
+ /**
+ * Removes the selection box from the overlay canvas.
+ */
+ clearCrosshair: function () {
+
+ var
+ plotOffset = this.plotOffset,
+ position = this.lastMousePos,
+ context = this.octx;
+
+ if (position) {
+ context.clearRect(
+ position.relX + plotOffset.left,
+ plotOffset.top,
+ 1,
+ this.plotHeight + 1
+ );
+ context.clearRect(
+ plotOffset.left,
+ position.relY + plotOffset.top,
+ this.plotWidth + 1,
+ 1
+ );
+ }
+ }
+ });
+})();
+
+(function () {
+
var
- context = options.context,
- shadowSize = options.shadowSize;
-
- context.save();
- context.translate(options.width / 2, options.height / 2);
- context.lineWidth = options.lineWidth;
-
- // Shadow
- context.fillStyle = 'rgba(0,0,0,0.05)';
- context.strokeStyle = 'rgba(0,0,0,0.05)';
- this.plot(options, shadowSize / 2);
- context.strokeStyle = 'rgba(0,0,0,0.1)';
- this.plot(options, shadowSize / 4);
-
- // Chart
- context.strokeStyle = options.color;
- context.fillStyle = options.fillStyle;
- this.plot(options);
-
- context.restore();
- },
- plot : function (options, offset) {
+ D = Flotr.DOM,
+ _ = Flotr._;
+
+ function getImage(type, canvas, width, height) {
+
+ // TODO add scaling for w / h
+ var
+ mime = 'image/' + type,
+ data = canvas.toDataURL(mime),
+ image = new Image();
+ image.src = data;
+ return image;
+ }
+
+ Flotr.addPlugin('download', {
+
+ saveImage: function (type, width, height, replaceCanvas) {
+ var image = null;
+ if (Flotr.isIE && Flotr.isIE < 9) {
+ image = '<html><body>' + this.canvas.firstChild.innerHTML + '</body></html>';
+ return window.open().document.write(image);
+ }
+
+ if (type !== 'jpeg' && type !== 'png') return;
+
+ image = getImage(type, this.canvas, width, height);
+
+ if (_.isElement(image) && replaceCanvas) {
+ this.download.restoreCanvas();
+ D.hide(this.canvas);
+ D.hide(this.overlay);
+ D.setStyles({position: 'absolute'});
+ D.insert(this.el, image);
+ this.saveImageElement = image;
+ } else {
+ return window.open(image.src);
+ }
+ },
+
+ restoreCanvas: function () {
+ D.show(this.canvas);
+ D.show(this.overlay);
+ if (this.saveImageElement) this.el.removeChild(this.saveImageElement);
+ this.saveImageElement = null;
+ }
+ });
+
+})();
+
+(function () {
+
+ var E = Flotr.EventAdapter,
+ _ = Flotr._;
+
+ Flotr.addPlugin('graphGrid', {
+
+ callbacks: {
+ 'flotr:beforedraw': function () {
+ this.graphGrid.drawGrid();
+ },
+ 'flotr:afterdraw': function () {
+ this.graphGrid.drawOutline();
+ }
+ },
+
+ drawGrid: function () {
+
+ var
+ ctx = this.ctx,
+ options = this.options,
+ grid = options.grid,
+ verticalLines = grid.verticalLines,
+ horizontalLines = grid.horizontalLines,
+ minorVerticalLines = grid.minorVerticalLines,
+ minorHorizontalLines = grid.minorHorizontalLines,
+ plotHeight = this.plotHeight,
+ plotWidth = this.plotWidth,
+ a, v, i, j;
+
+ if (verticalLines || minorVerticalLines ||
+ horizontalLines || minorHorizontalLines) {
+ E.fire(this.el, 'flotr:beforegrid', [this.axes.x, this.axes.y, options, this]);
+ }
+ ctx.save();
+ ctx.lineWidth = 1;
+ ctx.strokeStyle = grid.tickColor;
+
+ function circularHorizontalTicks(ticks) {
+ for (i = 0; i < ticks.length; ++i) {
+ var ratio = ticks[i].v / a.max;
+ for (j = 0; j <= sides; ++j) {
+ ctx[j === 0 ? 'moveTo' : 'lineTo'](
+ Math.cos(j * coeff + angle) * radius * ratio,
+ Math.sin(j * coeff + angle) * radius * ratio
+ );
+ }
+ }
+ }
+
+ function drawGridLines(ticks, callback) {
+ _.each(_.pluck(ticks, 'v'), function (v) {
+ // Don't show lines on upper and lower bounds.
+ if ((v <= a.min || v >= a.max) ||
+ (v == a.min || v == a.max) && grid.outlineWidth)
+ return;
+ callback(Math.floor(a.d2p(v)) + ctx.lineWidth / 2);
+ });
+ }
+
+ function drawVerticalLines(x) {
+ ctx.moveTo(x, 0);
+ ctx.lineTo(x, plotHeight);
+ }
+
+ function drawHorizontalLines(y) {
+ ctx.moveTo(0, y);
+ ctx.lineTo(plotWidth, y);
+ }
+
+ if (grid.circular) {
+ ctx.translate(this.plotOffset.left + plotWidth / 2, this.plotOffset.top + plotHeight / 2);
+ var radius = Math.min(plotHeight, plotWidth) * options.radar.radiusRatio / 2,
+ sides = this.axes.x.ticks.length,
+ coeff = 2 * (Math.PI / sides),
+ angle = -Math.PI / 2;
+
+ // Draw grid lines in vertical direction.
+ ctx.beginPath();
+
+ a = this.axes.y;
+
+ if (horizontalLines) {
+ circularHorizontalTicks(a.ticks);
+ }
+ if (minorHorizontalLines) {
+ circularHorizontalTicks(a.minorTicks);
+ }
+
+ if (verticalLines) {
+ _.times(sides, function (i) {
+ ctx.moveTo(0, 0);
+ ctx.lineTo(Math.cos(i * coeff + angle) * radius, Math.sin(i * coeff + angle) * radius);
+ });
+ }
+ ctx.stroke();
+ }
+ else {
+ ctx.translate(this.plotOffset.left, this.plotOffset.top);
+
+ // Draw grid background, if present in options.
+ if (grid.backgroundColor) {
+ ctx.fillStyle = this.processColor(grid.backgroundColor, {x1: 0, y1: 0, x2: plotWidth, y2: plotHeight});
+ ctx.fillRect(0, 0, plotWidth, plotHeight);
+ }
+
+ ctx.beginPath();
+
+ a = this.axes.x;
+ if (verticalLines) drawGridLines(a.ticks, drawVerticalLines);
+ if (minorVerticalLines) drawGridLines(a.minorTicks, drawVerticalLines);
+
+ a = this.axes.y;
+ if (horizontalLines) drawGridLines(a.ticks, drawHorizontalLines);
+ if (minorHorizontalLines) drawGridLines(a.minorTicks, drawHorizontalLines);
+
+ ctx.stroke();
+ }
+
+ ctx.restore();
+ if (verticalLines || minorVerticalLines ||
+ horizontalLines || minorHorizontalLines) {
+ E.fire(this.el, 'flotr:aftergrid', [this.axes.x, this.axes.y, options, this]);
+ }
+ },
+
+ drawOutline: function () {
+ var
+ that = this,
+ options = that.options,
+ grid = options.grid,
+ outline = grid.outline,
+ ctx = that.ctx,
+ backgroundImage = grid.backgroundImage,
+ plotOffset = that.plotOffset,
+ leftOffset = plotOffset.left,
+ topOffset = plotOffset.top,
+ plotWidth = that.plotWidth,
+ plotHeight = that.plotHeight,
+ v, img, src, left, top, globalAlpha;
+
+ if (!grid.outlineWidth) return;
+
+ ctx.save();
+
+ if (grid.circular) {
+ ctx.translate(leftOffset + plotWidth / 2, topOffset + plotHeight / 2);
+ var radius = Math.min(plotHeight, plotWidth) * options.radar.radiusRatio / 2,
+ sides = this.axes.x.ticks.length,
+ coeff = 2 * (Math.PI / sides),
+ angle = -Math.PI / 2;
+
+ // Draw axis/grid border.
+ ctx.beginPath();
+ ctx.lineWidth = grid.outlineWidth;
+ ctx.strokeStyle = grid.color;
+ ctx.lineJoin = 'round';
+
+ for (i = 0; i <= sides; ++i) {
+ ctx[i === 0 ? 'moveTo' : 'lineTo'](Math.cos(i * coeff + angle) * radius, Math.sin(i * coeff + angle) * radius);
+ }
+ //ctx.arc(0, 0, radius, 0, Math.PI*2, true);
+
+ ctx.stroke();
+ }
+ else {
+ ctx.translate(leftOffset, topOffset);
+
+ // Draw axis/grid border.
+ var lw = grid.outlineWidth,
+ orig = 0.5 - lw + ((lw + 1) % 2 / 2),
+ lineTo = 'lineTo',
+ moveTo = 'moveTo';
+ ctx.lineWidth = lw;
+ ctx.strokeStyle = grid.color;
+ ctx.lineJoin = 'miter';
+ ctx.beginPath();
+ ctx.moveTo(orig, orig);
+ plotWidth = plotWidth - (lw / 2) % 1;
+ plotHeight = plotHeight + lw / 2;
+ ctx[outline.indexOf('n') !== -1 ? lineTo : moveTo](plotWidth, orig);
+ ctx[outline.indexOf('e') !== -1 ? lineTo : moveTo](plotWidth, plotHeight);
+ ctx[outline.indexOf('s') !== -1 ? lineTo : moveTo](orig, plotHeight);
+ ctx[outline.indexOf('w') !== -1 ? lineTo : moveTo](orig, orig);
+ ctx.stroke();
+ ctx.closePath();
+ }
+
+ ctx.restore();
+
+ if (backgroundImage) {
+
+ src = backgroundImage.src || backgroundImage;
+ left = (parseInt(backgroundImage.left, 10) || 0) + plotOffset.left;
+ top = (parseInt(backgroundImage.top, 10) || 0) + plotOffset.top;
+ img = new Image();
+
+ img.onload = function () {
+ ctx.save();
+ if (backgroundImage.alpha) ctx.globalAlpha = backgroundImage.alpha;
+ ctx.globalCompositeOperation = 'destination-over';
+ ctx.drawImage(img, 0, 0, img.width, img.height, left, top, plotWidth, plotHeight);
+ ctx.restore();
+ };
+
+ img.src = src;
+ }
+ }
+ });
+
+})();
+
+(function () {
+
var
- data = options.data,
- context = options.context,
- radius = Math.min(options.height, options.width) * options.radiusRatio / 2,
- step = 2 * Math.PI / data.length,
- angle = -Math.PI / 2,
- i, ratio;
-
- offset = offset || 0;
-
- context.beginPath();
- for (i = 0; i < data.length; ++i) {
- ratio = data[i][1] / this.max;
-
- context[i === 0 ? 'moveTo' : 'lineTo'](
- Math.cos(i * step + angle) * radius * ratio + offset,
- Math.sin(i * step + angle) * radius * ratio + offset
- );
- }
- context.closePath();
- if (options.fill) context.fill();
- context.stroke();
- },
- extendYRange : function (axis, data) {
- this.max = Math.max(axis.max, this.max || -Number.MAX_VALUE);
- }
-});
-
-Flotr.addType('timeline', {
- options: {
- show: false,
- lineWidth: 1,
- barWidth: 0.2,
- fill: true,
- fillColor: null,
- fillOpacity: 0.4,
- centered: true
- },
-
- draw : function (options) {
-
- var
- context = options.context;
-
- context.save();
- context.lineJoin = 'miter';
- context.lineWidth = options.lineWidth;
- context.strokeStyle = options.color;
- context.fillStyle = options.fillStyle;
-
- this.plot(options);
-
- context.restore();
- },
-
- plot : function (options) {
-
- var
- data = options.data,
- context = options.context,
- xScale = options.xScale,
- yScale = options.yScale,
- barWidth = options.barWidth,
- lineWidth = options.lineWidth,
- i;
-
- Flotr._.each(data, function (timeline) {
-
- var
- x = timeline[0],
- y = timeline[1],
- w = timeline[2],
- h = barWidth,
-
- xt = Math.ceil(xScale(x)),
- wt = Math.ceil(xScale(x + w)) - xt,
- yt = Math.round(yScale(y)),
- ht = Math.round(yScale(y - h)) - yt,
-
- x0 = xt - lineWidth / 2,
- y0 = Math.round(yt - ht / 2) - lineWidth / 2;
-
- context.strokeRect(x0, y0, wt, ht);
- context.fillRect(x0, y0, wt, ht);
+ D = Flotr.DOM,
+ _ = Flotr._,
+ flotr = Flotr,
+ S_MOUSETRACK = 'opacity:0.7;background-color:#000;color:#fff;display:none;position:absolute;padding:2px 8px;-moz-border-radius:4px;border-radius:4px;white-space:nowrap;';
+
+ Flotr.addPlugin('hit', {
+ callbacks: {
+ 'flotr:mousemove': function (e, pos) {
+ this.hit.track(pos);
+ },
+ 'flotr:click': function (pos) {
+ this.hit.track(pos);
+ },
+ 'flotr:mouseout': function () {
+ this.hit.clearHit();
+ }
+ },
+ track: function (pos) {
+ if (this.options.mouse.track || _.any(this.series, function (s) {
+ return s.mouse && s.mouse.track;
+ })) {
+ this.hit.hit(pos);
+ }
+ },
+ /**
+ * Try a method on a graph type. If the method exists, execute it.
+ * @param {Object} series
+ * @param {String} method Method name.
+ * @param {Array} args Arguments applied to method.
+ * @return executed successfully or failed.
+ */
+ executeOnType: function (s, method, args) {
+ var
+ success = false,
+ options;
+
+ if (!_.isArray(s)) s = [s];
+
+ function e(s, index) {
+ _.each(_.keys(flotr.graphTypes), function (type) {
+ if (s[type] && s[type].show && this[type][method]) {
+ options = this.getOptions(s, type);
+
+ options.fill = !!s.mouse.fillColor;
+ options.fillStyle = this.processColor(s.mouse.fillColor || '#ffffff', {opacity: s.mouse.fillOpacity});
+ options.color = s.mouse.lineColor;
+ options.context = this.octx;
+ options.index = index;
+
+ if (args) options.args = args;
+ this[type][method].call(this[type], options);
+ success = true;
+ }
+ }, this);
+ }
+
+ _.each(s, e, this);
+
+ return success;
+ },
+ /**
+ * Updates the mouse tracking point on the overlay.
+ */
+ drawHit: function (n) {
+ var octx = this.octx,
+ s = n.series;
+
+ if (s.mouse.lineColor) {
+ octx.save();
+ octx.lineWidth = (s.points ? s.points.lineWidth : 1);
+ octx.strokeStyle = s.mouse.lineColor;
+ octx.fillStyle = this.processColor(s.mouse.fillColor || '#ffffff', {opacity: s.mouse.fillOpacity});
+ octx.translate(this.plotOffset.left, this.plotOffset.top);
+
+ if (!this.hit.executeOnType(s, 'drawHit', n)) {
+ var xa = n.xaxis,
+ ya = n.yaxis;
+
+ octx.beginPath();
+ // TODO fix this (points) should move to general testable graph mixin
+ octx.arc(xa.d2p(n.x), ya.d2p(n.y), s.points.radius || s.mouse.radius, 0, 2 * Math.PI, true);
+ octx.fill();
+ octx.stroke();
+ octx.closePath();
+ }
+ octx.restore();
+ this.clip(octx);
+ }
+ this.prevHit = n;
+ },
+ /**
+ * Removes the mouse tracking point from the overlay.
+ */
+ clearHit: function () {
+ var prev = this.prevHit,
+ octx = this.octx,
+ plotOffset = this.plotOffset;
+ octx.save();
+ octx.translate(plotOffset.left, plotOffset.top);
+ if (prev) {
+ if (!this.hit.executeOnType(prev.series, 'clearHit', this.prevHit)) {
+ // TODO fix this (points) should move to general testable graph mixin
+ var
+ s = prev.series,
+ lw = (s.points ? s.points.lineWidth : 1);
+ offset = (s.points.radius || s.mouse.radius) + lw;
+ octx.clearRect(
+ prev.xaxis.d2p(prev.x) - offset,
+ prev.yaxis.d2p(prev.y) - offset,
+ offset * 2,
+ offset * 2
+ );
+ }
+ D.hide(this.mouseTrack);
+ this.prevHit = null;
+ }
+ octx.restore();
+ },
+ /**
+ * Retrieves the nearest data point from the mouse cursor. If it's within
+ * a certain range, draw a point on the overlay canvas and display the x and y
+ * value of the data.
+ * @param {Object} mouse - Object that holds the relative x and y coordinates of the cursor.
+ */
+ hit: function (mouse) {
+
+ var
+ options = this.options,
+ prevHit = this.prevHit,
+ closest, sensibility, dataIndex, seriesIndex, series, value, xaxis, yaxis;
+
+ if (this.series.length === 0) return;
+
+ // Nearest data element.
+ // dist, x, y, relX, relY, absX, absY, sAngle, eAngle, fraction, mouse,
+ // xaxis, yaxis, series, index, seriesIndex
+ n = {
+ relX: mouse.relX,
+ relY: mouse.relY,
+ absX: mouse.absX,
+ absY: mouse.absY
+ };
+
+ if (options.mouse.trackY && !options.mouse.trackAll &&
+ this.hit.executeOnType(this.series, 'hit', [mouse, n])) {
+
+ if (!_.isUndefined(n.seriesIndex)) {
+ series = this.series[n.seriesIndex];
+ n.series = series;
+ n.mouse = series.mouse;
+ n.xaxis = series.xaxis;
+ n.yaxis = series.yaxis;
+ }
+ } else {
+
+ closest = this.hit.closest(mouse);
+
+ if (closest) {
+
+ closest = options.mouse.trackY ? closest.point : closest.x;
+ seriesIndex = closest.seriesIndex;
+ series = this.series[seriesIndex];
+ xaxis = series.xaxis;
+ yaxis = series.yaxis;
+ sensibility = 2 * series.mouse.sensibility;
+
+ if
+ (options.mouse.trackAll ||
+ (closest.distanceX < sensibility / xaxis.scale &&
+ (!options.mouse.trackY || closest.distanceY < sensibility / yaxis.scale))) {
+ n.series = series;
+ n.xaxis = series.xaxis;
+ n.yaxis = series.yaxis;
+ n.mouse = series.mouse;
+ n.x = closest.x;
+ n.y = closest.y;
+ n.dist = closest.distance;
+ n.index = closest.dataIndex;
+ n.seriesIndex = seriesIndex;
+ }
+ }
+ }
+
+ if (!prevHit || (prevHit.index !== n.index || prevHit.seriesIndex !== n.seriesIndex)) {
+ this.hit.clearHit();
+ if (n.series && n.mouse && n.mouse.track) {
+ this.hit.drawMouseTrack(n);
+ this.hit.drawHit(n);
+ Flotr.EventAdapter.fire(this.el, 'flotr:hit', [n, this]);
+ }
+ }
+ },
+
+ closest: function (mouse) {
+
+ var
+ series = this.series,
+ options = this.options,
+ relX = mouse.relX,
+ relY = mouse.relY,
+ compare = Number.MAX_VALUE,
+ compareX = Number.MAX_VALUE,
+ closest = {},
+ closestX = {},
+ check = false,
+ serie, data,
+ distance, distanceX, distanceY,
+ mouseX, mouseY,
+ x, y, i, j;
+
+ function setClosest(o) {
+ o.distance = distance;
+ o.distanceX = distanceX;
+ o.distanceY = distanceY;
+ o.seriesIndex = i;
+ o.dataIndex = j;
+ o.x = x;
+ o.y = y;
+ }
+
+ for (i = 0; i < series.length; i++) {
+
+ serie = series[i];
+ data = serie.data;
+ mouseX = serie.xaxis.p2d(relX);
+ mouseY = serie.yaxis.p2d(relY);
+
+ if (data.length) check = true;
+
+ for (j = data.length; j--;) {
+
+ x = data[j][0];
+ y = data[j][1];
+
+ if (x === null || y === null) continue;
+
+ // don't check if the point isn't visible in the current range
+ if (x < serie.xaxis.min || x > serie.xaxis.max) continue;
+
+ distanceX = Math.abs(x - mouseX);
+ distanceY = Math.abs(y - mouseY);
+
+ // Skip square root for speed
+ distance = distanceX * distanceX + distanceY * distanceY;
+
+ if (distance < compare) {
+ compare = distance;
+ setClosest(closest);
+ }
+
+ if (distanceX < compareX) {
+ compareX = distanceX;
+ setClosest(closestX);
+ }
+ }
+ }
+
+ return check ? {
+ point: closest,
+ x: closestX
+ } : false;
+ },
+
+ drawMouseTrack: function (n) {
+
+ var
+ pos = '',
+ s = n.series,
+ p = n.mouse.position,
+ m = n.mouse.margin,
+ elStyle = S_MOUSETRACK,
+ mouseTrack = this.mouseTrack,
+ plotOffset = this.plotOffset,
+ left = plotOffset.left,
+ right = plotOffset.right,
+ bottom = plotOffset.bottom,
+ top = plotOffset.top,
+ decimals = n.mouse.trackDecimals,
+ options = this.options;
+
+ // Create
+ if (!mouseTrack) {
+ mouseTrack = D.node('<div class="flotr-mouse-value"></div>');
+ this.mouseTrack = mouseTrack;
+ D.insert(this.el, mouseTrack);
+ }
+
+ if (!n.mouse.relative) { // absolute to the canvas
+
+ if (p.charAt(0) == 'n') pos += 'top:' + (m + top) + 'px;bottom:auto;';
+ else if (p.charAt(0) == 's') pos += 'bottom:' + (m + bottom) + 'px;top:auto;';
+ if (p.charAt(1) == 'e') pos += 'right:' + (m + right) + 'px;left:auto;';
+ else if (p.charAt(1) == 'w') pos += 'left:' + (m + left) + 'px;right:auto;';
+
+ // Bars
+ } else if (s.bars.show) {
+ pos += 'bottom:' + (m - top - n.yaxis.d2p(n.y / 2) + this.canvasHeight) + 'px;top:auto;';
+ pos += 'left:' + (m + left + n.xaxis.d2p(n.x - options.bars.barWidth / 2)) + 'px;right:auto;';
+
+ // Pie
+ } else if (s.pie.show) {
+ var center = {
+ x: (this.plotWidth) / 2,
+ y: (this.plotHeight) / 2
+ },
+ radius = (Math.min(this.canvasWidth, this.canvasHeight) * s.pie.sizeRatio) / 2,
+ bisection = n.sAngle < n.eAngle ? (n.sAngle + n.eAngle) / 2 : (n.sAngle + n.eAngle + 2 * Math.PI) / 2;
+
+ pos += 'bottom:' + (m - top - center.y - Math.sin(bisection) * radius / 2 + this.canvasHeight) + 'px;top:auto;';
+ pos += 'left:' + (m + left + center.x + Math.cos(bisection) * radius / 2) + 'px;right:auto;';
+
+ // Default
+ } else {
+ if (p.charAt(0) == 'n') pos += 'bottom:' + (m - top - n.yaxis.d2p(n.y) + this.canvasHeight) + 'px;top:auto;';
+ else if (p.charAt(0) == 's') pos += 'top:' + (m + top + n.yaxis.d2p(n.y)) + 'px;bottom:auto;';
+ if (p.charAt(1) == 'e') pos += 'left:' + (m + left + n.xaxis.d2p(n.x)) + 'px;right:auto;';
+ else if (p.charAt(1) == 'w') pos += 'right:' + (m - left - n.xaxis.d2p(n.x) + this.canvasWidth) + 'px;left:auto;';
+ }
+
+ elStyle += pos;
+ mouseTrack.style.cssText = elStyle;
+
+ if (!decimals || decimals < 0) decimals = 0;
+
+ mouseTrack.innerHTML = n.mouse.trackFormatter({
+ x: n.x.toFixed(decimals),
+ y: n.y.toFixed(decimals),
+ series: n.series,
+ index: n.index,
+ nearest: n,
+ fraction: n.fraction
+ });
+
+ D.show(mouseTrack);
+ }
});
- },
-
- extendRange : function (series) {
-
- var
- data = series.data,
- xa = series.xaxis,
- ya = series.yaxis,
- w = series.timeline.barWidth;
-
- if (xa.options.min === null)
- xa.min = xa.datamin - w / 2;
-
- if (xa.options.max === null) {
-
- var
- max = xa.max;
-
- Flotr._.each(data, function (timeline) {
- max = Math.max(max, timeline[0] + timeline[2]);
- }, this);
-
- xa.max = max + w / 2;
- }
-
- if (ya.options.min === null)
- ya.min = ya.datamin - w;
- if (ya.options.min === null)
- ya.max = ya.datamax + w;
- }
-
-});
-
-(function () {
-
-var D = Flotr.DOM;
-
-Flotr.addPlugin('crosshair', {
- options: {
- mode: null, // => one of null, 'x', 'y' or 'xy'
- color: '#FF0000', // => crosshair color
- hideCursor: true // => hide the cursor when the crosshair is shown
- },
- callbacks: {
- 'flotr:mousemove': function(e, pos) {
- if (this.options.crosshair.mode) {
- this.crosshair.clearCrosshair();
- this.crosshair.drawCrosshair(pos);
- }
- }
- },
- /**
- * Draws the selection box.
- */
- drawCrosshair: function(pos) {
- var octx = this.octx,
- options = this.options.crosshair,
- plotOffset = this.plotOffset,
- x = plotOffset.left + pos.relX + 0.5,
- y = plotOffset.top + pos.relY + 0.5;
-
- if (pos.relX < 0 || pos.relY < 0 || pos.relX > this.plotWidth || pos.relY > this.plotHeight) {
- this.el.style.cursor = null;
- D.removeClass(this.el, 'flotr-crosshair');
- return;
- }
-
- if (options.hideCursor) {
- this.el.style.cursor = 'none';
- D.addClass(this.el, 'flotr-crosshair');
- }
-
- octx.save();
- octx.strokeStyle = options.color;
- octx.lineWidth = 1;
- octx.beginPath();
-
- if (options.mode.indexOf('x') != -1) {
- octx.moveTo(x, plotOffset.top);
- octx.lineTo(x, plotOffset.top + this.plotHeight);
- }
-
- if (options.mode.indexOf('y') != -1) {
- octx.moveTo(plotOffset.left, y);
- octx.lineTo(plotOffset.left + this.plotWidth, y);
- }
-
- octx.stroke();
- octx.restore();
- },
- /**
- * Removes the selection box from the overlay canvas.
- */
- clearCrosshair: function() {
-
- var
- plotOffset = this.plotOffset,
- position = this.lastMousePos,
- context = this.octx;
-
- if (position) {
- context.clearRect(
- position.relX + plotOffset.left,
- plotOffset.top,
- 1,
- this.plotHeight + 1
- );
- context.clearRect(
- plotOffset.left,
- position.relY + plotOffset.top,
- this.plotWidth + 1,
- 1
- );
- }
- }
-});
})();
-(function() {
-
-var
- D = Flotr.DOM,
- _ = Flotr._;
-
-function getImage (type, canvas, width, height) {
-
- // TODO add scaling for w / h
- var
- mime = 'image/'+type,
- data = canvas.toDataURL(mime),
- image = new Image();
- image.src = data;
- return image;
-}
-
-Flotr.addPlugin('download', {
-
- saveImage: function (type, width, height, replaceCanvas) {
- var image = null;
- if (Flotr.isIE && Flotr.isIE < 9) {
- image = '<html><body>'+this.canvas.firstChild.innerHTML+'</body></html>';
- return window.open().document.write(image);
- }
-
- if (type !== 'jpeg' && type !== 'png') return;
-
- image = getImage(type, this.canvas, width, height);
-
- if (_.isElement(image) && replaceCanvas) {
- this.download.restoreCanvas();
- D.hide(this.canvas);
- D.hide(this.overlay);
- D.setStyles({position: 'absolute'});
- D.insert(this.el, image);
- this.saveImageElement = image;
- } else {
- return window.open(image.src);
- }
- },
-
- restoreCanvas: function() {
- D.show(this.canvas);
- D.show(this.overlay);
- if (this.saveImageElement) this.el.removeChild(this.saveImageElement);
- this.saveImageElement = null;
- }
-});
-
-})();
-
-(function () {
-
-var E = Flotr.EventAdapter,
- _ = Flotr._;
-
-Flotr.addPlugin('graphGrid', {
-
- callbacks: {
- 'flotr:beforedraw' : function () {
- this.graphGrid.drawGrid();
- },
- 'flotr:afterdraw' : function () {
- this.graphGrid.drawOutline();
- }
- },
-
- drawGrid: function(){
-
- var
- ctx = this.ctx,
- options = this.options,
- grid = options.grid,
- verticalLines = grid.verticalLines,
- horizontalLines = grid.horizontalLines,
- minorVerticalLines = grid.minorVerticalLines,
- minorHorizontalLines = grid.minorHorizontalLines,
- plotHeight = this.plotHeight,
- plotWidth = this.plotWidth,
- a, v, i, j;
-
- if(verticalLines || minorVerticalLines ||
- horizontalLines || minorHorizontalLines){
- E.fire(this.el, 'flotr:beforegrid', [this.axes.x, this.axes.y, options, this]);
- }
- ctx.save();
- ctx.lineWidth = 1;
- ctx.strokeStyle = grid.tickColor;
-
- function circularHorizontalTicks (ticks) {
- for(i = 0; i < ticks.length; ++i){
- var ratio = ticks[i].v / a.max;
- for(j = 0; j <= sides; ++j){
- ctx[j === 0 ? 'moveTo' : 'lineTo'](
- Math.cos(j*coeff+angle)*radius*ratio,
- Math.sin(j*coeff+angle)*radius*ratio
- );
- }
- }
- }
- function drawGridLines (ticks, callback) {
- _.each(_.pluck(ticks, 'v'), function(v){
- // Don't show lines on upper and lower bounds.
- if ((v <= a.min || v >= a.max) ||
- (v == a.min || v == a.max) && grid.outlineWidth)
- return;
- callback(Math.floor(a.d2p(v)) + ctx.lineWidth/2);
- });
- }
- function drawVerticalLines (x) {
- ctx.moveTo(x, 0);
- ctx.lineTo(x, plotHeight);
- }
- function drawHorizontalLines (y) {
- ctx.moveTo(0, y);
- ctx.lineTo(plotWidth, y);
- }
-
- if (grid.circular) {
- ctx.translate(this.plotOffset.left+plotWidth/2, this.plotOffset.top+plotHeight/2);
- var radius = Math.min(plotHeight, plotWidth)*options.radar.radiusRatio/2,
- sides = this.axes.x.ticks.length,
- coeff = 2*(Math.PI/sides),
- angle = -Math.PI/2;
-
- // Draw grid lines in vertical direction.
- ctx.beginPath();
-
- a = this.axes.y;
-
- if(horizontalLines){
- circularHorizontalTicks(a.ticks);
- }
- if(minorHorizontalLines){
- circularHorizontalTicks(a.minorTicks);
- }
-
- if(verticalLines){
- _.times(sides, function(i){
- ctx.moveTo(0, 0);
- ctx.lineTo(Math.cos(i*coeff+angle)*radius, Math.sin(i*coeff+angle)*radius);
- });
- }
- ctx.stroke();
- }
- else {
- ctx.translate(this.plotOffset.left, this.plotOffset.top);
-
- // Draw grid background, if present in options.
- if(grid.backgroundColor){
- ctx.fillStyle = this.processColor(grid.backgroundColor, {x1: 0, y1: 0, x2: plotWidth, y2: plotHeight});
- ctx.fillRect(0, 0, plotWidth, plotHeight);
- }
-
- ctx.beginPath();
-
- a = this.axes.x;
- if (verticalLines) drawGridLines(a.ticks, drawVerticalLines);
- if (minorVerticalLines) drawGridLines(a.minorTicks, drawVerticalLines);
-
- a = this.axes.y;
- if (horizontalLines) drawGridLines(a.ticks, drawHorizontalLines);
- if (minorHorizontalLines) drawGridLines(a.minorTicks, drawHorizontalLines);
-
- ctx.stroke();
- }
-
- ctx.restore();
- if(verticalLines || minorVerticalLines ||
- horizontalLines || minorHorizontalLines){
- E.fire(this.el, 'flotr:aftergrid', [this.axes.x, this.axes.y, options, this]);
- }
- },
-
- drawOutline: function(){
- var
- that = this,
- options = that.options,
- grid = options.grid,
- outline = grid.outline,
- ctx = that.ctx,
- backgroundImage = grid.backgroundImage,
- plotOffset = that.plotOffset,
- leftOffset = plotOffset.left,
- topOffset = plotOffset.top,
- plotWidth = that.plotWidth,
- plotHeight = that.plotHeight,
- v, img, src, left, top, globalAlpha;
-
- if (!grid.outlineWidth) return;
-
- ctx.save();
-
- if (grid.circular) {
- ctx.translate(leftOffset + plotWidth / 2, topOffset + plotHeight / 2);
- var radius = Math.min(plotHeight, plotWidth) * options.radar.radiusRatio / 2,
- sides = this.axes.x.ticks.length,
- coeff = 2*(Math.PI/sides),
- angle = -Math.PI/2;
-
- // Draw axis/grid border.
- ctx.beginPath();
- ctx.lineWidth = grid.outlineWidth;
- ctx.strokeStyle = grid.color;
- ctx.lineJoin = 'round';
-
- for(i = 0; i <= sides; ++i){
- ctx[i === 0 ? 'moveTo' : 'lineTo'](Math.cos(i*coeff+angle)*radius, Math.sin(i*coeff+angle)*radius);
- }
- //ctx.arc(0, 0, radius, 0, Math.PI*2, true);
-
- ctx.stroke();
- }
- else {
- ctx.translate(leftOffset, topOffset);
-
- // Draw axis/grid border.
- var lw = grid.outlineWidth,
- orig = 0.5-lw+((lw+1)%2/2),
- lineTo = 'lineTo',
- moveTo = 'moveTo';
- ctx.lineWidth = lw;
- ctx.strokeStyle = grid.color;
- ctx.lineJoin = 'miter';
- ctx.beginPath();
- ctx.moveTo(orig, orig);
- plotWidth = plotWidth - (lw / 2) % 1;
- plotHeight = plotHeight + lw / 2;
- ctx[outline.indexOf('n') !== -1 ? lineTo : moveTo](plotWidth, orig);
- ctx[outline.indexOf('e') !== -1 ? lineTo : moveTo](plotWidth, plotHeight);
- ctx[outline.indexOf('s') !== -1 ? lineTo : moveTo](orig, plotHeight);
- ctx[outline.indexOf('w') !== -1 ? lineTo : moveTo](orig, orig);
- ctx.stroke();
- ctx.closePath();
- }
-
- ctx.restore();
-
- if (backgroundImage) {
-
- src = backgroundImage.src || backgroundImage;
- left = (parseInt(backgroundImage.left, 10) || 0) + plotOffset.left;
- top = (parseInt(backgroundImage.top, 10) || 0) + plotOffset.top;
- img = new Image();
-
- img.onload = function() {
- ctx.save();
- if (backgroundImage.alpha) ctx.globalAlpha = backgroundImage.alpha;
- ctx.globalCompositeOperation = 'destination-over';
- ctx.drawImage(img, 0, 0, img.width, img.height, left, top, plotWidth, plotHeight);
- ctx.restore();
- };
-
- img.src = src;
- }
- }
-});
-
-})();
-
-(function () {
-
-var
- D = Flotr.DOM,
- _ = Flotr._,
- flotr = Flotr,
- S_MOUSETRACK = 'opacity:0.7;background-color:#000;color:#fff;display:none;position:absolute;padding:2px 8px;-moz-border-radius:4px;border-radius:4px;white-space:nowrap;';
-
-Flotr.addPlugin('hit', {
- callbacks: {
- 'flotr:mousemove': function(e, pos) {
- this.hit.track(pos);
- },
- 'flotr:click': function(pos) {
- this.hit.track(pos);
- },
- 'flotr:mouseout': function() {
- this.hit.clearHit();
- }
- },
- track : function (pos) {
- if (this.options.mouse.track || _.any(this.series, function(s){return s.mouse && s.mouse.track;})) {
- this.hit.hit(pos);
- }
- },
- /**
- * Try a method on a graph type. If the method exists, execute it.
- * @param {Object} series
- * @param {String} method Method name.
- * @param {Array} args Arguments applied to method.
- * @return executed successfully or failed.
- */
- executeOnType: function(s, method, args){
- var
- success = false,
- options;
-
- if (!_.isArray(s)) s = [s];
-
- function e(s, index) {
- _.each(_.keys(flotr.graphTypes), function (type) {
- if (s[type] && s[type].show && this[type][method]) {
- options = this.getOptions(s, type);
-
- options.fill = !!s.mouse.fillColor;
- options.fillStyle = this.processColor(s.mouse.fillColor || '#ffffff', {opacity: s.mouse.fillOpacity});
- options.color = s.mouse.lineColor;
- options.context = this.octx;
- options.index = index;
-
- if (args) options.args = args;
- this[type][method].call(this[type], options);
- success = true;
- }
- }, this);
- }
- _.each(s, e, this);
-
- return success;
- },
- /**
- * Updates the mouse tracking point on the overlay.
- */
- drawHit: function(n){
- var octx = this.octx,
- s = n.series;
-
- if (s.mouse.lineColor) {
- octx.save();
- octx.lineWidth = (s.points ? s.points.lineWidth : 1);
- octx.strokeStyle = s.mouse.lineColor;
- octx.fillStyle = this.processColor(s.mouse.fillColor || '#ffffff', {opacity: s.mouse.fillOpacity});
- octx.translate(this.plotOffset.left, this.plotOffset.top);
-
- if (!this.hit.executeOnType(s, 'drawHit', n)) {
- var xa = n.xaxis,
- ya = n.yaxis;
-
- octx.beginPath();
- // TODO fix this (points) should move to general testable graph mixin
- octx.arc(xa.d2p(n.x), ya.d2p(n.y), s.points.radius || s.mouse.radius, 0, 2 * Math.PI, true);
- octx.fill();
- octx.stroke();
- octx.closePath();
- }
- octx.restore();
- this.clip(octx);
- }
- this.prevHit = n;
- },
- /**
- * Removes the mouse tracking point from the overlay.
- */
- clearHit: function(){
- var prev = this.prevHit,
- octx = this.octx,
- plotOffset = this.plotOffset;
- octx.save();
- octx.translate(plotOffset.left, plotOffset.top);
- if (prev) {
- if (!this.hit.executeOnType(prev.series, 'clearHit', this.prevHit)) {
- // TODO fix this (points) should move to general testable graph mixin
- var
- s = prev.series,
- lw = (s.points ? s.points.lineWidth : 1);
- offset = (s.points.radius || s.mouse.radius) + lw;
- octx.clearRect(
- prev.xaxis.d2p(prev.x) - offset,
- prev.yaxis.d2p(prev.y) - offset,
- offset*2,
- offset*2
- );
- }
- D.hide(this.mouseTrack);
- this.prevHit = null;
- }
- octx.restore();
- },
- /**
- * Retrieves the nearest data point from the mouse cursor. If it's within
- * a certain range, draw a point on the overlay canvas and display the x and y
- * value of the data.
- * @param {Object} mouse - Object that holds the relative x and y coordinates of the cursor.
- */
- hit: function(mouse){
-
- var
- options = this.options,
- prevHit = this.prevHit,
- closest, sensibility, dataIndex, seriesIndex, series, value, xaxis, yaxis;
-
- if (this.series.length === 0) return;
-
- // Nearest data element.
- // dist, x, y, relX, relY, absX, absY, sAngle, eAngle, fraction, mouse,
- // xaxis, yaxis, series, index, seriesIndex
- n = {
- relX : mouse.relX,
- relY : mouse.relY,
- absX : mouse.absX,
- absY : mouse.absY
- };
-
- if (options.mouse.trackY &&
- !options.mouse.trackAll &&
- this.hit.executeOnType(this.series, 'hit', [mouse, n]))
- {
-
- if (!_.isUndefined(n.seriesIndex)) {
- series = this.series[n.seriesIndex];
- n.series = series;
- n.mouse = series.mouse;
- n.xaxis = series.xaxis;
- n.yaxis = series.yaxis;
- }
- } else {
-
- closest = this.hit.closest(mouse);
-
- if (closest) {
-
- closest = options.mouse.trackY ? closest.point : closest.x;
- seriesIndex = closest.seriesIndex;
- series = this.series[seriesIndex];
- xaxis = series.xaxis;
- yaxis = series.yaxis;
- sensibility = 2 * series.mouse.sensibility;
-
- if
- (options.mouse.trackAll ||
- (closest.distanceX < sensibility / xaxis.scale &&
- (!options.mouse.trackY || closest.distanceY < sensibility / yaxis.scale)))
- {
- n.series = series;
- n.xaxis = series.xaxis;
- n.yaxis = series.yaxis;
- n.mouse = series.mouse;
- n.x = closest.x;
- n.y = closest.y;
- n.dist = closest.distance;
- n.index = closest.dataIndex;
- n.seriesIndex = seriesIndex;
- }
- }
- }
-
- if (!prevHit || (prevHit.index !== n.index || prevHit.seriesIndex !== n.seriesIndex)) {
- this.hit.clearHit();
- if (n.series && n.mouse && n.mouse.track) {
- this.hit.drawMouseTrack(n);
- this.hit.drawHit(n);
- Flotr.EventAdapter.fire(this.el, 'flotr:hit', [n, this]);
- }
- }
- },
-
- closest : function (mouse) {
-
- var
- series = this.series,
- options = this.options,
- relX = mouse.relX,
- relY = mouse.relY,
- compare = Number.MAX_VALUE,
- compareX = Number.MAX_VALUE,
- closest = {},
- closestX = {},
- check = false,
- serie, data,
- distance, distanceX, distanceY,
- mouseX, mouseY,
- x, y, i, j;
-
- function setClosest (o) {
- o.distance = distance;
- o.distanceX = distanceX;
- o.distanceY = distanceY;
- o.seriesIndex = i;
- o.dataIndex = j;
- o.x = x;
- o.y = y;
- }
-
- for (i = 0; i < series.length; i++) {
-
- serie = series[i];
- data = serie.data;
- mouseX = serie.xaxis.p2d(relX);
- mouseY = serie.yaxis.p2d(relY);
-
- if (data.length) check = true;
-
- for (j = data.length; j--;) {
-
- x = data[j][0];
- y = data[j][1];
-
- if (x === null || y === null) continue;
-
- // don't check if the point isn't visible in the current range
- if (x < serie.xaxis.min || x > serie.xaxis.max) continue;
-
- distanceX = Math.abs(x - mouseX);
- distanceY = Math.abs(y - mouseY);
-
- // Skip square root for speed
- distance = distanceX * distanceX + distanceY * distanceY;
-
- if (distance < compare) {
- compare = distance;
- setClosest(closest);
- }
-
- if (distanceX < compareX) {
- compareX = distanceX;
- setClosest(closestX);
- }
- }
- }
-
- return check ? {
- point : closest,
- x : closestX
- } : false;
- },
-
- drawMouseTrack : function (n) {
-
- var
- pos = '',
- s = n.series,
- p = n.mouse.position,
- m = n.mouse.margin,
- elStyle = S_MOUSETRACK,
- mouseTrack = this.mouseTrack,
- plotOffset = this.plotOffset,
- left = plotOffset.left,
- right = plotOffset.right,
- bottom = plotOffset.bottom,
- top = plotOffset.top,
- decimals = n.mouse.trackDecimals,
- options = this.options;
-
- // Create
- if (!mouseTrack) {
- mouseTrack = D.node('<div class="flotr-mouse-value"></div>');
- this.mouseTrack = mouseTrack;
- D.insert(this.el, mouseTrack);
- }
-
- if (!n.mouse.relative) { // absolute to the canvas
-
- if (p.charAt(0) == 'n') pos += 'top:' + (m + top) + 'px;bottom:auto;';
- else if (p.charAt(0) == 's') pos += 'bottom:' + (m + bottom) + 'px;top:auto;';
- if (p.charAt(1) == 'e') pos += 'right:' + (m + right) + 'px;left:auto;';
- else if (p.charAt(1) == 'w') pos += 'left:' + (m + left) + 'px;right:auto;';
-
- // Bars
- } else if (s.bars.show) {
- pos += 'bottom:' + (m - top - n.yaxis.d2p(n.y/2) + this.canvasHeight) + 'px;top:auto;';
- pos += 'left:' + (m + left + n.xaxis.d2p(n.x - options.bars.barWidth/2)) + 'px;right:auto;';
-
- // Pie
- } else if (s.pie.show) {
- var center = {
- x: (this.plotWidth)/2,
- y: (this.plotHeight)/2
- },
- radius = (Math.min(this.canvasWidth, this.canvasHeight) * s.pie.sizeRatio) / 2,
- bisection = n.sAngle<n.eAngle ? (n.sAngle + n.eAngle) / 2: (n.sAngle + n.eAngle + 2* Math.PI) / 2;
-
- pos += 'bottom:' + (m - top - center.y - Math.sin(bisection) * radius/2 + this.canvasHeight) + 'px;top:auto;';
- pos += 'left:' + (m + left + center.x + Math.cos(bisection) * radius/2) + 'px;right:auto;';
-
- // Default
- } else {
- if (p.charAt(0) == 'n') pos += 'bottom:' + (m - top - n.yaxis.d2p(n.y) + this.canvasHeight) + 'px;top:auto;';
- else if (p.charAt(0) == 's') pos += 'top:' + (m + top + n.yaxis.d2p(n.y)) + 'px;bottom:auto;';
- if (p.charAt(1) == 'e') pos += 'left:' + (m + left + n.xaxis.d2p(n.x)) + 'px;right:auto;';
- else if (p.charAt(1) == 'w') pos += 'right:' + (m - left - n.xaxis.d2p(n.x) + this.canvasWidth) + 'px;left:auto;';
- }
-
- elStyle += pos;
- mouseTrack.style.cssText = elStyle;
-
- if (!decimals || decimals < 0) decimals = 0;
-
- mouseTrack.innerHTML = n.mouse.trackFormatter({
- x: n.x.toFixed(decimals),
- y: n.y.toFixed(decimals),
- series: n.series,
- index: n.index,
- nearest: n,
- fraction: n.fraction
- });
-
- D.show(mouseTrack);
- }
-
-});
-})();
-
-/**
+/**
* Selection Handles Plugin
*
*
@@ -5758,834 +5825,866 @@
*/
(function () {
-function isLeftClick (e, type) {
- return (e.which ? (e.which === 1) : (e.button === 0 || e.button === 1));
-}
-
-function boundX(x, graph) {
- return Math.min(Math.max(0, x), graph.plotWidth - 1);
-}
-
-function boundY(y, graph) {
- return Math.min(Math.max(0, y), graph.plotHeight);
-}
-
-var
- D = Flotr.DOM,
- E = Flotr.EventAdapter,
- _ = Flotr._;
-
-
-Flotr.addPlugin('selection', {
-
- options: {
- pinchOnly: null, // Only select on pinch
- mode: null, // => one of null, 'x', 'y' or 'xy'
- color: '#B6D9FF', // => selection box color
- fps: 20 // => frames-per-second
- },
-
- callbacks: {
- 'flotr:mouseup' : function (event) {
-
- var
- options = this.options.selection,
- selection = this.selection,
- pointer = this.getEventPosition(event);
-
- if (!options || !options.mode) return;
- if (selection.interval) clearInterval(selection.interval);
-
- if (this.multitouches) {
- selection.updateSelection();
- } else
- if (!options.pinchOnly) {
- selection.setSelectionPos(selection.selection.second, pointer);
- }
- selection.clearSelection();
-
- if(selection.selecting && selection.selectionIsSane()){
- selection.drawSelection();
- selection.fireSelectEvent();
- this.ignoreClick = true;
- }
- },
- 'flotr:mousedown' : function (event) {
-
- var
- options = this.options.selection,
- selection = this.selection,
- pointer = this.getEventPosition(event);
-
- if (!options || !options.mode) return;
- if (!options.mode || (!isLeftClick(event) && _.isUndefined(event.touches))) return;
- if (!options.pinchOnly) selection.setSelectionPos(selection.selection.first, pointer);
- if (selection.interval) clearInterval(selection.interval);
-
- this.lastMousePos.pageX = null;
- selection.selecting = false;
- selection.interval = setInterval(
- _.bind(selection.updateSelection, this),
- 1000 / options.fps
- );
- },
- 'flotr:destroy' : function (event) {
- clearInterval(this.selection.interval);
+ function isLeftClick(e, type) {
+ return (e.which ? (e.which === 1) : (e.button === 0 || e.button === 1));
}
- },
-
- // TODO This isn't used. Maybe it belongs in the draw area and fire select event methods?
- getArea: function() {
-
- var s = this.selection.selection,
- first = s.first,
- second = s.second;
-
- return {
- x1: Math.min(first.x, second.x),
- x2: Math.max(first.x, second.x),
- y1: Math.min(first.y, second.y),
- y2: Math.max(first.y, second.y)
- };
- },
-
- selection: {first: {x: -1, y: -1}, second: {x: -1, y: -1}},
- prevSelection: null,
- interval: null,
-
- /**
- * Fires the 'flotr:select' event when the user made a selection.
- */
- fireSelectEvent: function(name){
- var a = this.axes,
- s = this.selection.selection,
- x1, x2, y1, y2;
-
- name = name || 'select';
-
- x1 = a.x.p2d(s.first.x);
- x2 = a.x.p2d(s.second.x);
- y1 = a.y.p2d(s.first.y);
- y2 = a.y.p2d(s.second.y);
-
- E.fire(this.el, 'flotr:'+name, [{
- x1:Math.min(x1, x2),
- y1:Math.min(y1, y2),
- x2:Math.max(x1, x2),
- y2:Math.max(y1, y2),
- xfirst:x1, xsecond:x2, yfirst:y1, ysecond:y2
- }, this]);
- },
-
- /**
- * Allows the user the manually select an area.
- * @param {Object} area - Object with coordinates to select.
- */
- setSelection: function(area, preventEvent){
- var options = this.options,
- xa = this.axes.x,
- ya = this.axes.y,
- vertScale = ya.scale,
- hozScale = xa.scale,
- selX = options.selection.mode.indexOf('x') != -1,
- selY = options.selection.mode.indexOf('y') != -1,
- s = this.selection.selection;
-
- this.selection.clearSelection();
-
- s.first.y = boundY((selX && !selY) ? 0 : (ya.max - area.y1) * vertScale, this);
- s.second.y = boundY((selX && !selY) ? this.plotHeight - 1: (ya.max - area.y2) * vertScale, this);
- s.first.x = boundX((selY && !selX) ? 0 : area.x1, this);
- s.second.x = boundX((selY && !selX) ? this.plotWidth : area.x2, this);
-
- this.selection.drawSelection();
- if (!preventEvent)
- this.selection.fireSelectEvent();
- },
-
- /**
- * Calculates the position of the selection.
- * @param {Object} pos - Position object.
- * @param {Event} event - Event object.
- */
- setSelectionPos: function(pos, pointer) {
- var mode = this.options.selection.mode,
- selection = this.selection.selection;
-
- if(mode.indexOf('x') == -1) {
- pos.x = (pos == selection.first) ? 0 : this.plotWidth;
- }else{
- pos.x = boundX(pointer.relX, this);
+
+ function boundX(x, graph) {
+ return Math.min(Math.max(0, x), graph.plotWidth - 1);
}
- if (mode.indexOf('y') == -1) {
- pos.y = (pos == selection.first) ? 0 : this.plotHeight - 1;
- }else{
- pos.y = boundY(pointer.relY, this);
+ function boundY(y, graph) {
+ return Math.min(Math.max(0, y), graph.plotHeight);
}
- },
- /**
- * Draws the selection box.
- */
- drawSelection: function() {
-
- this.selection.fireSelectEvent('selecting');
-
- var s = this.selection.selection,
- octx = this.octx,
- options = this.options,
- plotOffset = this.plotOffset,
- prevSelection = this.selection.prevSelection;
-
- if (prevSelection &&
- s.first.x == prevSelection.first.x &&
- s.first.y == prevSelection.first.y &&
- s.second.x == prevSelection.second.x &&
- s.second.y == prevSelection.second.y) {
- return;
+
+ var
+ D = Flotr.DOM,
+ E = Flotr.EventAdapter,
+ _ = Flotr._;
+
+
+ Flotr.addPlugin('selection', {
+
+ options: {
+ pinchOnly: null, // Only select on pinch
+ mode: null, // => one of null, 'x', 'y' or 'xy'
+ color: '#B6D9FF', // => selection box color
+ fps: 20 // => frames-per-second
+ },
+
+ callbacks: {
+ 'flotr:mouseup': function (event) {
+
+ var
+ options = this.options.selection,
+ selection = this.selection,
+ pointer = this.getEventPosition(event);
+
+ if (!options || !options.mode) return;
+ if (selection.interval) clearInterval(selection.interval);
+
+ if (this.multitouches) {
+ selection.updateSelection();
+ } else if (!options.pinchOnly) {
+ selection.setSelectionPos(selection.selection.second, pointer);
+ }
+ selection.clearSelection();
+
+ if (selection.selecting && selection.selectionIsSane()) {
+ selection.drawSelection();
+ selection.fireSelectEvent();
+ this.ignoreClick = true;
+ }
+ },
+ 'flotr:mousedown': function (event) {
+
+ var
+ options = this.options.selection,
+ selection = this.selection,
+ pointer = this.getEventPosition(event);
+
+ if (!options || !options.mode) return;
+ if (!options.mode || (!isLeftClick(event) && _.isUndefined(event.touches))) return;
+ if (!options.pinchOnly) selection.setSelectionPos(selection.selection.first, pointer);
+ if (selection.interval) clearInterval(selection.interval);
+
+ this.lastMousePos.pageX = null;
+ selection.selecting = false;
+ selection.interval = setInterval(
+ _.bind(selection.updateSelection, this),
+ 1000 / options.fps
+ );
+ },
+ 'flotr:destroy': function (event) {
+ clearInterval(this.selection.interval);
+ }
+ },
+
+ // TODO This isn't used. Maybe it belongs in the draw area and fire select event methods?
+ getArea: function () {
+
+ var s = this.selection.selection,
+ first = s.first,
+ second = s.second;
+
+ return {
+ x1: Math.min(first.x, second.x),
+ x2: Math.max(first.x, second.x),
+ y1: Math.min(first.y, second.y),
+ y2: Math.max(first.y, second.y)
+ };
+ },
+
+ selection: {first: {x: -1, y: -1}, second: {x: -1, y: -1}},
+ prevSelection: null,
+ interval: null,
+
+ /**
+ * Fires the 'flotr:select' event when the user made a selection.
+ */
+ fireSelectEvent: function (name) {
+ var a = this.axes,
+ s = this.selection.selection,
+ x1, x2, y1, y2;
+
+ name = name || 'select';
+
+ x1 = a.x.p2d(s.first.x);
+ x2 = a.x.p2d(s.second.x);
+ y1 = a.y.p2d(s.first.y);
+ y2 = a.y.p2d(s.second.y);
+
+ E.fire(this.el, 'flotr:' + name, [
+ {
+ x1: Math.min(x1, x2),
+ y1: Math.min(y1, y2),
+ x2: Math.max(x1, x2),
+ y2: Math.max(y1, y2),
+ xfirst: x1, xsecond: x2, yfirst: y1, ysecond: y2
+ },
+ this
+ ]);
+ },
+
+ /**
+ * Allows the user the manually select an area.
+ * @param {Object} area - Object with coordinates to select.
+ */
+ setSelection: function (area, preventEvent) {
+ var options = this.options,
+ xa = this.axes.x,
+ ya = this.axes.y,
+ vertScale = ya.scale,
+ hozScale = xa.scale,
+ selX = options.selection.mode.indexOf('x') != -1,
+ selY = options.selection.mode.indexOf('y') != -1,
+ s = this.selection.selection;
+
+ this.selection.clearSelection();
+
+ s.first.y = boundY((selX && !selY) ? 0 : (ya.max - area.y1) * vertScale, this);
+ s.second.y = boundY((selX && !selY) ? this.plotHeight - 1 : (ya.max - area.y2) * vertScale, this);
+ s.first.x = boundX((selY && !selX) ? 0 : area.x1, this);
+ s.second.x = boundX((selY && !selX) ? this.plotWidth : area.x2, this);
+
+ this.selection.drawSelection();
+ if (!preventEvent)
+ this.selection.fireSelectEvent();
+ },
+
+ /**
+ * Calculates the position of the selection.
+ * @param {Object} pos - Position object.
+ * @param {Event} event - Event object.
+ */
+ setSelectionPos: function (pos, pointer) {
+ var mode = this.options.selection.mode,
+ selection = this.selection.selection;
+
+ if (mode.indexOf('x') == -1) {
+ pos.x = (pos == selection.first) ? 0 : this.plotWidth;
+ } else {
+ pos.x = boundX(pointer.relX, this);
+ }
+
+ if (mode.indexOf('y') == -1) {
+ pos.y = (pos == selection.first) ? 0 : this.plotHeight - 1;
+ } else {
+ pos.y = boundY(pointer.relY, this);
+ }
+ },
+ /**
+ * Draws the selection box.
+ */
+ drawSelection: function () {
+
+ this.selection.fireSelectEvent('selecting');
+
+ var s = this.selection.selection,
+ octx = this.octx,
+ options = this.options,
+ plotOffset = this.plotOffset,
+ prevSelection = this.selection.prevSelection;
+
+ if (prevSelection &&
+ s.first.x == prevSelection.first.x &&
+ s.first.y == prevSelection.first.y &&
+ s.second.x == prevSelection.second.x &&
+ s.second.y == prevSelection.second.y) {
+ return;
+ }
+
+ octx.save();
+ octx.strokeStyle = this.processColor(options.selection.color, {opacity: 0.8});
+ octx.lineWidth = 1;
+ octx.lineJoin = 'miter';
+ octx.fillStyle = this.processColor(options.selection.color, {opacity: 0.4});
+
+ this.selection.prevSelection = {
+ first: { x: s.first.x, y: s.first.y },
+ second: { x: s.second.x, y: s.second.y }
+ };
+
+ var x = Math.min(s.first.x, s.second.x),
+ y = Math.min(s.first.y, s.second.y),
+ w = Math.abs(s.second.x - s.first.x),
+ h = Math.abs(s.second.y - s.first.y);
+
+ octx.fillRect(x + plotOffset.left + 0.5, y + plotOffset.top + 0.5, w, h);
+ octx.strokeRect(x + plotOffset.left + 0.5, y + plotOffset.top + 0.5, w, h);
+ octx.restore();
+ },
+
+ /**
+ * Updates (draws) the selection box.
+ */
+ updateSelection: function () {
+ if (!this.lastMousePos.pageX) return;
+
+ this.selection.selecting = true;
+
+ if (this.multitouches) {
+ this.selection.setSelectionPos(this.selection.selection.first, this.getEventPosition(this.multitouches[0]));
+ this.selection.setSelectionPos(this.selection.selection.second, this.getEventPosition(this.multitouches[1]));
+ } else if (this.options.selection.pinchOnly) {
+ return;
+ } else {
+ this.selection.setSelectionPos(this.selection.selection.second, this.lastMousePos);
+ }
+
+ this.selection.clearSelection();
+
+ if (this.selection.selectionIsSane()) {
+ this.selection.drawSelection();
+ }
+ },
+
+ /**
+ * Removes the selection box from the overlay canvas.
+ */
+ clearSelection: function () {
+ if (!this.selection.prevSelection) return;
+
+ var prevSelection = this.selection.prevSelection,
+ lw = 1,
+ plotOffset = this.plotOffset,
+ x = Math.min(prevSelection.first.x, prevSelection.second.x),
+ y = Math.min(prevSelection.first.y, prevSelection.second.y),
+ w = Math.abs(prevSelection.second.x - prevSelection.first.x),
+ h = Math.abs(prevSelection.second.y - prevSelection.first.y);
+
+ this.octx.clearRect(x + plotOffset.left - lw + 0.5,
+ y + plotOffset.top - lw,
+ w + 2 * lw + 0.5,
+ h + 2 * lw + 0.5);
+
+ this.selection.prevSelection = null;
+ },
+ /**
+ * Determines whether or not the selection is sane and should be drawn.
+ * @return {Boolean} - True when sane, false otherwise.
+ */
+ selectionIsSane: function () {
+ var s = this.selection.selection;
+ return Math.abs(s.second.x - s.first.x) >= 5 ||
+ Math.abs(s.second.y - s.first.y) >= 5;
+ }
+
+ });
+
+})();
+
+(function () {
+
+ var D = Flotr.DOM;
+
+ Flotr.addPlugin('labels', {
+
+ callbacks: {
+ 'flotr:afterdraw': function () {
+ this.labels.draw();
+ }
+ },
+
+ draw: function () {
+ // Construct fixed width label boxes, which can be styled easily.
+ var
+ axis, tick, left, top, xBoxWidth,
+ radius, sides, coeff, angle,
+ div, i, html = '',
+ noLabels = 0,
+ options = this.options,
+ ctx = this.ctx,
+ a = this.axes,
+ style = { size: options.fontSize };
+
+ for (i = 0; i < a.x.ticks.length; ++i) {
+ if (a.x.ticks[i].label) {
+ ++noLabels;
+ }
+ }
+ xBoxWidth = this.plotWidth / noLabels;
+
+ if (options.grid.circular) {
+ ctx.save();
+ ctx.translate(this.plotOffset.left + this.plotWidth / 2,
+ this.plotOffset.top + this.plotHeight / 2);
+
+ radius = this.plotHeight * options.radar.radiusRatio / 2 + options.fontSize;
+ sides = this.axes.x.ticks.length;
+ coeff = 2 * (Math.PI / sides);
+ angle = -Math.PI / 2;
+
+ drawLabelCircular(this, a.x, false);
+ drawLabelCircular(this, a.x, true);
+ drawLabelCircular(this, a.y, false);
+ drawLabelCircular(this, a.y, true);
+ ctx.restore();
+ }
+
+ if (!options.HtmlText && this.textEnabled) {
+ drawLabelNoHtmlText(this, a.x, 'center', 'top');
+ drawLabelNoHtmlText(this, a.x2, 'center', 'bottom');
+ drawLabelNoHtmlText(this, a.y, 'right', 'middle');
+ drawLabelNoHtmlText(this, a.y2, 'left', 'middle');
+
+ } else if ((
+ a.x.options.showLabels ||
+ a.x2.options.showLabels ||
+ a.y.options.showLabels ||
+ a.y2.options.showLabels) && !options.grid.circular
+ ) {
+
+ html = '';
+
+ drawLabelHtml(this, a.x);
+ drawLabelHtml(this, a.x2);
+ drawLabelHtml(this, a.y);
+ drawLabelHtml(this, a.y2);
+
+ ctx.stroke();
+ ctx.restore();
+ div = D.create('div');
+ D.setStyles(div, {
+ fontSize: 'smaller',
+ color: options.grid.color
+ });
+ div.className = 'flotr-labels';
+ D.insert(this.el, div);
+ D.insert(div, html);
+ }
+
+ function drawLabelCircular(graph, axis, minorTicks) {
+ var
+ ticks = minorTicks ? axis.minorTicks : axis.ticks,
+ isX = axis.orientation === 1,
+ isFirst = axis.n === 1,
+ style, offset;
+
+ style = {
+ color: axis.options.color || options.grid.color,
+ angle: Flotr.toRad(axis.options.labelsAngle),
+ textBaseline: 'middle'
+ };
+
+ for (i = 0; i < ticks.length &&
+ (minorTicks ? axis.options.showMinorLabels : axis.options.showLabels); ++i) {
+ tick = ticks[i];
+ tick.label += '';
+ if (!tick.label || !tick.label.length) {
+ continue;
+ }
+
+ x = Math.cos(i * coeff + angle) * radius;
+ y = Math.sin(i * coeff + angle) * radius;
+
+ style.textAlign = isX ? (Math.abs(x) < 0.1 ? 'center' : (x < 0 ? 'right' : 'left')) : 'left';
+
+ Flotr.drawText(
+ ctx, tick.label,
+ isX ? x : 3,
+ isX ? y : -(axis.ticks[i].v / axis.max) * (radius - options.fontSize),
+ style
+ );
+ }
+ }
+
+ function drawLabelNoHtmlText(graph, axis, textAlign, textBaseline) {
+ var
+ isX = axis.orientation === 1,
+ isFirst = axis.n === 1,
+ style, offset;
+
+ style = {
+ color: axis.options.color || options.grid.color,
+ textAlign: textAlign,
+ textBaseline: textBaseline,
+ angle: Flotr.toRad(axis.options.labelsAngle)
+ };
+ style = Flotr.getBestTextAlign(style.angle, style);
+
+ for (i = 0; i < axis.ticks.length && continueShowingLabels(axis); ++i) {
+
+ tick = axis.ticks[i];
+ if (!tick.label || !tick.label.length) {
+ continue;
+ }
+
+ offset = axis.d2p(tick.v);
+ if (offset < 0 ||
+ offset > (isX ? graph.plotWidth : graph.plotHeight)) {
+ continue;
+ }
+
+ Flotr.drawText(
+ ctx, tick.label,
+ leftOffset(graph, isX, isFirst, offset),
+ topOffset(graph, isX, isFirst, offset),
+ style
+ );
+
+ // Only draw on axis y2
+ if (!isX && !isFirst) {
+ ctx.save();
+ ctx.strokeStyle = style.color;
+ ctx.beginPath();
+ ctx.moveTo(graph.plotOffset.left + graph.plotWidth - 8, graph.plotOffset.top + axis.d2p(tick.v));
+ ctx.lineTo(graph.plotOffset.left + graph.plotWidth, graph.plotOffset.top + axis.d2p(tick.v));
+ ctx.stroke();
+ ctx.restore();
+ }
+ }
+
+ function continueShowingLabels(axis) {
+ return axis.options.showLabels && axis.used;
+ }
+
+ function leftOffset(graph, isX, isFirst, offset) {
+ return graph.plotOffset.left +
+ (isX ? offset :
+ (isFirst ?
+ -options.grid.labelMargin :
+ options.grid.labelMargin + graph.plotWidth));
+ }
+
+ function topOffset(graph, isX, isFirst, offset) {
+ return graph.plotOffset.top +
+ (isX ? options.grid.labelMargin : offset) +
+ ((isX && isFirst) ? graph.plotHeight : 0);
+ }
+ }
+
+ function drawLabelHtml(graph, axis) {
+ var
+ isX = axis.orientation === 1,
+ isFirst = axis.n === 1,
+ name = '',
+ left, style, top,
+ offset = graph.plotOffset;
+
+ if (!isX && !isFirst) {
+ ctx.save();
+ ctx.strokeStyle = axis.options.color || options.grid.color;
+ ctx.beginPath();
+ }
+
+ if (axis.options.showLabels && (isFirst ? true : axis.used)) {
+ for (i = 0; i < axis.ticks.length; ++i) {
+ tick = axis.ticks[i];
+ if (!tick.label || !tick.label.length ||
+ ((isX ? offset.left : offset.top) + axis.d2p(tick.v) < 0) ||
+ ((isX ? offset.left : offset.top) + axis.d2p(tick.v) > (isX ? graph.canvasWidth : graph.canvasHeight))) {
+ continue;
+ }
+ top = offset.top +
+ (isX ?
+ ((isFirst ? 1 : -1 ) * (graph.plotHeight + options.grid.labelMargin)) :
+ axis.d2p(tick.v) - axis.maxLabel.height / 2);
+ left = isX ? (offset.left + axis.d2p(tick.v) - xBoxWidth / 2) : 0;
+
+ name = '';
+ if (i === 0) {
+ name = ' first';
+ } else if (i === axis.ticks.length - 1) {
+ name = ' last';
+ }
+ name += isX ? ' flotr-grid-label-x' : ' flotr-grid-label-y';
+
+ html += [
+ '<div style="position:absolute; text-align:' + (isX ? 'center' : 'right') + '; ',
+ 'top:' + top + 'px; ',
+ ((!isX && !isFirst) ? 'right:' : 'left:') + left + 'px; ',
+ 'width:' + (isX ? xBoxWidth : ((isFirst ? offset.left : offset.right) - options.grid.labelMargin)) + 'px; ',
+ axis.options.color ? ('color:' + axis.options.color + '; ') : ' ',
+ '" class="flotr-grid-label' + name + '">' + tick.label + '</div>'
+ ].join(' ');
+
+ if (!isX && !isFirst) {
+ ctx.moveTo(offset.left + graph.plotWidth - 8, offset.top + axis.d2p(tick.v));
+ ctx.lineTo(offset.left + graph.plotWidth, offset.top + axis.d2p(tick.v));
+ }
+ }
+ }
+ }
+ }
+
+ });
+})();
+
+(function () {
+
+ var
+ D = Flotr.DOM,
+ _ = Flotr._;
+
+ Flotr.addPlugin('legend', {
+ options: {
+ show: true, // => setting to true will show the legend, hide otherwise
+ noColumns: 1, // => number of colums in legend table // @todo: doesn't work for HtmlText = false
+ labelFormatter: function (v) {
+ return v;
+ }, // => fn: string -> string
+ labelBoxBorderColor: '#CCCCCC', // => border color for the little label boxes
+ labelBoxWidth: 14,
+ labelBoxHeight: 10,
+ labelBoxMargin: 5,
+ labelBoxOpacity: 0.4,
+ container: null, // => container (as jQuery object) to put legend in, null means default on top of graph
+ position: 'nw', // => position of default legend container within plot
+ margin: 5, // => distance from grid edge to default legend container within plot
+ backgroundColor: null, // => null means auto-detect
+ backgroundOpacity: 0.85// => set to 0 to avoid background, set to 1 for a solid background
+ },
+ callbacks: {
+ 'flotr:afterinit': function () {
+ this.legend.insertLegend();
+ }
+ },
+ /**
+ * Adds a legend div to the canvas container or draws it on the canvas.
+ */
+ insertLegend: function () {
+
+ if (!this.options.legend.show)
+ return;
+
+ var series = this.series,
+ plotOffset = this.plotOffset,
+ options = this.options,
+ legend = options.legend,
+ fragments = [],
+ rowStarted = false,
+ ctx = this.ctx,
+ itemCount = _.filter(series,function (s) {
+ return (s.label && !s.hide);
+ }).length,
+ p = legend.position,
+ m = legend.margin,
+ i, label, color;
+
+ if (itemCount) {
+ if (!options.HtmlText && this.textEnabled && !legend.container) {
+ var style = {
+ size: options.fontSize * 1.1,
+ color: options.grid.color
+ };
+
+ var lbw = legend.labelBoxWidth,
+ lbh = legend.labelBoxHeight,
+ lbm = legend.labelBoxMargin,
+ offsetX = plotOffset.left + m,
+ offsetY = plotOffset.top + m;
+
+ // We calculate the labels' max width
+ var labelMaxWidth = 0;
+ for (i = series.length - 1; i > -1; --i) {
+ if (!series[i].label || series[i].hide) continue;
+ label = legend.labelFormatter(series[i].label);
+ labelMaxWidth = Math.max(labelMaxWidth, this._text.measureText(label, style).width);
+ }
+
+ var legendWidth = Math.round(lbw + lbm * 3 + labelMaxWidth),
+ legendHeight = Math.round(itemCount * (lbm + lbh) + lbm);
+
+ if (p.charAt(0) == 's') offsetY = plotOffset.top + this.plotHeight - (m + legendHeight);
+ if (p.charAt(1) == 'e') offsetX = plotOffset.left + this.plotWidth - (m + legendWidth);
+
+ // Legend box
+ color = this.processColor(legend.backgroundColor || 'rgb(240,240,240)', {opacity: legend.backgroundOpacity || 0.1});
+
+ ctx.fillStyle = color;
+ ctx.fillRect(offsetX, offsetY, legendWidth, legendHeight);
+ ctx.strokeStyle = legend.labelBoxBorderColor;
+ ctx.strokeRect(Flotr.toPixel(offsetX), Flotr.toPixel(offsetY), legendWidth, legendHeight);
+
+ // Legend labels
+ var x = offsetX + lbm;
+ var y = offsetY + lbm;
+ for (i = 0; i < series.length; i++) {
+ if (!series[i].label || series[i].hide) continue;
+ label = legend.labelFormatter(series[i].label);
+
+ ctx.fillStyle = series[i].color;
+ ctx.fillRect(x, y, lbw - 1, lbh - 1);
+
+ ctx.strokeStyle = legend.labelBoxBorderColor;
+ ctx.lineWidth = 1;
+ ctx.strokeRect(Math.ceil(x) - 1.5, Math.ceil(y) - 1.5, lbw + 2, lbh + 2);
+
+ // Legend text
+ Flotr.drawText(ctx, label, x + lbw + lbm, y + lbh, style);
+
+ y += lbh + lbm;
+ }
+ }
+ else {
+ for (i = 0; i < series.length; ++i) {
+ if (!series[i].label || series[i].hide) continue;
+
+ if (i % legend.noColumns === 0) {
+ fragments.push(rowStarted ? '</tr><tr>' : '<tr>');
+ rowStarted = true;
+ }
+
+ // @TODO remove requirement on bars
+ var s = series[i],
+ boxWidth = legend.labelBoxWidth,
+ boxHeight = legend.labelBoxHeight,
+ opacityValue = (s.bars ? s.bars.fillOpacity : legend.labelBoxOpacity),
+ opacity = 'opacity:' + opacityValue + ';filter:alpha(opacity=' + opacityValue * 100 + ');';
+
+ label = legend.labelFormatter(s.label);
+ color = 'background-color:' + ((s.bars && s.bars.show && s.bars.fillColor && s.bars.fill) ? s.bars.fillColor : s.color) + ';';
+
+ fragments.push(
+ '<td class="flotr-legend-color-box">',
+ '<div style="border:1px solid ', legend.labelBoxBorderColor, ';padding:1px">',
+ '<div style="width:', (boxWidth - 1), 'px;height:', (boxHeight - 1), 'px;border:1px solid ', series[i].color, '">', // Border
+ '<div style="width:', boxWidth, 'px;height:', boxHeight, 'px;', 'opacity:.4;', color, '"></div>', // Background
+ '</div>',
+ '</div>',
+ '</td>',
+ '<td class="flotr-legend-label">', label, '</td>'
+ );
+ }
+ if (rowStarted) fragments.push('</tr>');
+
+ if (fragments.length > 0) {
+ var table = '<table style="font-size:smaller;color:' + options.grid.color + '">' + fragments.join('') + '</table>';
+ if (legend.container) {
+ D.insert(legend.container, table);
+ }
+ else {
+ var styles = {position: 'absolute', 'z-index': 2};
+
+ if (p.charAt(0) == 'n') {
+ styles.top = (m + plotOffset.top) + 'px';
+ styles.bottom = 'auto';
+ }
+ else if (p.charAt(0) == 's') {
+ styles.bottom = (m + plotOffset.bottom) + 'px';
+ styles.top = 'auto';
+ }
+ if (p.charAt(1) == 'e') {
+ styles.right = (m + plotOffset.right) + 'px';
+ styles.left = 'auto';
+ }
+ else if (p.charAt(1) == 'w') {
+ styles.left = (m + plotOffset.left) + 'px';
+ styles.right = 'auto';
+ }
+
+ var div = D.create('div'), size;
+ div.className = 'flotr-legend';
+ D.setStyles(div, styles);
+ D.insert(div, table);
+ D.insert(this.el, div);
+
+ if (!legend.backgroundOpacity)
+ return;
+
+ var c = legend.backgroundColor || options.grid.backgroundColor || '#ffffff';
+
+ _.extend(styles, D.size(div), {
+ 'backgroundColor': c,
+ 'z-index': 1
+ });
+ styles.width += 'px';
+ styles.height += 'px';
+
+ // Put in the transparent background separately to avoid blended labels and
+ div = D.create('div');
+ div.className = 'flotr-legend-bg';
+ D.setStyles(div, styles);
+ D.opacity(div, legend.backgroundOpacity);
+ D.insert(div, ' ');
+ D.insert(this.el, div);
+ }
+ }
+ }
+ }
+ }
+ });
+})();
+
+/** Spreadsheet **/
+(function () {
+
+ function getRowLabel(value) {
+ if (this.options.spreadsheet.tickFormatter) {
+ //TODO maybe pass the xaxis formatter to the custom tick formatter as an opt-out?
+ return this.options.spreadsheet.tickFormatter(value);
+ }
+ else {
+ var t = _.find(this.axes.x.ticks, function (t) {
+ return t.v == value;
+ });
+ if (t) {
+ return t.label;
+ }
+ return value;
+ }
}
- octx.save();
- octx.strokeStyle = this.processColor(options.selection.color, {opacity: 0.8});
- octx.lineWidth = 1;
- octx.lineJoin = 'miter';
- octx.fillStyle = this.processColor(options.selection.color, {opacity: 0.4});
-
- this.selection.prevSelection = {
- first: { x: s.first.x, y: s.first.y },
- second: { x: s.second.x, y: s.second.y }
- };
-
- var x = Math.min(s.first.x, s.second.x),
- y = Math.min(s.first.y, s.second.y),
- w = Math.abs(s.second.x - s.first.x),
- h = Math.abs(s.second.y - s.first.y);
-
- octx.fillRect(x + plotOffset.left+0.5, y + plotOffset.top+0.5, w, h);
- octx.strokeRect(x + plotOffset.left+0.5, y + plotOffset.top+0.5, w, h);
- octx.restore();
- },
-
- /**
- * Updates (draws) the selection box.
- */
- updateSelection: function(){
- if (!this.lastMousePos.pageX) return;
-
- this.selection.selecting = true;
-
- if (this.multitouches) {
- this.selection.setSelectionPos(this.selection.selection.first, this.getEventPosition(this.multitouches[0]));
- this.selection.setSelectionPos(this.selection.selection.second, this.getEventPosition(this.multitouches[1]));
- } else
- if (this.options.selection.pinchOnly) {
- return;
- } else {
- this.selection.setSelectionPos(this.selection.selection.second, this.lastMousePos);
- }
-
- this.selection.clearSelection();
-
- if(this.selection.selectionIsSane()) {
- this.selection.drawSelection();
- }
- },
-
- /**
- * Removes the selection box from the overlay canvas.
- */
- clearSelection: function() {
- if (!this.selection.prevSelection) return;
-
- var prevSelection = this.selection.prevSelection,
- lw = 1,
- plotOffset = this.plotOffset,
- x = Math.min(prevSelection.first.x, prevSelection.second.x),
- y = Math.min(prevSelection.first.y, prevSelection.second.y),
- w = Math.abs(prevSelection.second.x - prevSelection.first.x),
- h = Math.abs(prevSelection.second.y - prevSelection.first.y);
-
- this.octx.clearRect(x + plotOffset.left - lw + 0.5,
- y + plotOffset.top - lw,
- w + 2 * lw + 0.5,
- h + 2 * lw + 0.5);
-
- this.selection.prevSelection = null;
- },
- /**
- * Determines whether or not the selection is sane and should be drawn.
- * @return {Boolean} - True when sane, false otherwise.
- */
- selectionIsSane: function(){
- var s = this.selection.selection;
- return Math.abs(s.second.x - s.first.x) >= 5 ||
- Math.abs(s.second.y - s.first.y) >= 5;
- }
-
-});
-
-})();
-
-(function () {
-
-var D = Flotr.DOM;
-
-Flotr.addPlugin('labels', {
-
- callbacks : {
- 'flotr:afterdraw' : function () {
- this.labels.draw();
- }
- },
-
- draw: function(){
- // Construct fixed width label boxes, which can be styled easily.
var
- axis, tick, left, top, xBoxWidth,
- radius, sides, coeff, angle,
- div, i, html = '',
- noLabels = 0,
- options = this.options,
- ctx = this.ctx,
- a = this.axes,
- style = { size: options.fontSize };
-
- for (i = 0; i < a.x.ticks.length; ++i){
- if (a.x.ticks[i].label) { ++noLabels; }
- }
- xBoxWidth = this.plotWidth / noLabels;
-
- if (options.grid.circular) {
- ctx.save();
- ctx.translate(this.plotOffset.left + this.plotWidth / 2,
- this.plotOffset.top + this.plotHeight / 2);
-
- radius = this.plotHeight * options.radar.radiusRatio / 2 + options.fontSize;
- sides = this.axes.x.ticks.length;
- coeff = 2 * (Math.PI / sides);
- angle = -Math.PI / 2;
-
- drawLabelCircular(this, a.x, false);
- drawLabelCircular(this, a.x, true);
- drawLabelCircular(this, a.y, false);
- drawLabelCircular(this, a.y, true);
- ctx.restore();
- }
-
- if (!options.HtmlText && this.textEnabled) {
- drawLabelNoHtmlText(this, a.x, 'center', 'top');
- drawLabelNoHtmlText(this, a.x2, 'center', 'bottom');
- drawLabelNoHtmlText(this, a.y, 'right', 'middle');
- drawLabelNoHtmlText(this, a.y2, 'left', 'middle');
-
- } else if ((
- a.x.options.showLabels ||
- a.x2.options.showLabels ||
- a.y.options.showLabels ||
- a.y2.options.showLabels) &&
- !options.grid.circular
- ) {
-
- html = '';
-
- drawLabelHtml(this, a.x);
- drawLabelHtml(this, a.x2);
- drawLabelHtml(this, a.y);
- drawLabelHtml(this, a.y2);
-
- ctx.stroke();
- ctx.restore();
- div = D.create('div');
- D.setStyles(div, {
- fontSize: 'smaller',
- color: options.grid.color
- });
- div.className = 'flotr-labels';
- D.insert(this.el, div);
- D.insert(div, html);
- }
-
- function drawLabelCircular (graph, axis, minorTicks) {
- var
- ticks = minorTicks ? axis.minorTicks : axis.ticks,
- isX = axis.orientation === 1,
- isFirst = axis.n === 1,
- style, offset;
-
- style = {
- color : axis.options.color || options.grid.color,
- angle : Flotr.toRad(axis.options.labelsAngle),
- textBaseline : 'middle'
- };
-
- for (i = 0; i < ticks.length &&
- (minorTicks ? axis.options.showMinorLabels : axis.options.showLabels); ++i){
- tick = ticks[i];
- tick.label += '';
- if (!tick.label || !tick.label.length) { continue; }
-
- x = Math.cos(i * coeff + angle) * radius;
- y = Math.sin(i * coeff + angle) * radius;
-
- style.textAlign = isX ? (Math.abs(x) < 0.1 ? 'center' : (x < 0 ? 'right' : 'left')) : 'left';
-
- Flotr.drawText(
- ctx, tick.label,
- isX ? x : 3,
- isX ? y : -(axis.ticks[i].v / axis.max) * (radius - options.fontSize),
- style
- );
- }
- }
-
- function drawLabelNoHtmlText (graph, axis, textAlign, textBaseline) {
- var
- isX = axis.orientation === 1,
- isFirst = axis.n === 1,
- style, offset;
-
- style = {
- color : axis.options.color || options.grid.color,
- textAlign : textAlign,
- textBaseline : textBaseline,
- angle : Flotr.toRad(axis.options.labelsAngle)
- };
- style = Flotr.getBestTextAlign(style.angle, style);
-
- for (i = 0; i < axis.ticks.length && continueShowingLabels(axis); ++i) {
-
- tick = axis.ticks[i];
- if (!tick.label || !tick.label.length) { continue; }
-
- offset = axis.d2p(tick.v);
- if (offset < 0 ||
- offset > (isX ? graph.plotWidth : graph.plotHeight)) { continue; }
-
- Flotr.drawText(
- ctx, tick.label,
- leftOffset(graph, isX, isFirst, offset),
- topOffset(graph, isX, isFirst, offset),
- style
- );
-
- // Only draw on axis y2
- if (!isX && !isFirst) {
- ctx.save();
- ctx.strokeStyle = style.color;
- ctx.beginPath();
- ctx.moveTo(graph.plotOffset.left + graph.plotWidth - 8, graph.plotOffset.top + axis.d2p(tick.v));
- ctx.lineTo(graph.plotOffset.left + graph.plotWidth, graph.plotOffset.top + axis.d2p(tick.v));
- ctx.stroke();
- ctx.restore();
- }
- }
-
- function continueShowingLabels (axis) {
- return axis.options.showLabels && axis.used;
- }
- function leftOffset (graph, isX, isFirst, offset) {
- return graph.plotOffset.left +
- (isX ? offset :
- (isFirst ?
- -options.grid.labelMargin :
- options.grid.labelMargin + graph.plotWidth));
- }
- function topOffset (graph, isX, isFirst, offset) {
- return graph.plotOffset.top +
- (isX ? options.grid.labelMargin : offset) +
- ((isX && isFirst) ? graph.plotHeight : 0);
- }
- }
-
- function drawLabelHtml (graph, axis) {
- var
- isX = axis.orientation === 1,
- isFirst = axis.n === 1,
- name = '',
- left, style, top,
- offset = graph.plotOffset;
-
- if (!isX && !isFirst) {
- ctx.save();
- ctx.strokeStyle = axis.options.color || options.grid.color;
- ctx.beginPath();
- }
-
- if (axis.options.showLabels && (isFirst ? true : axis.used)) {
- for (i = 0; i < axis.ticks.length; ++i) {
- tick = axis.ticks[i];
- if (!tick.label || !tick.label.length ||
- ((isX ? offset.left : offset.top) + axis.d2p(tick.v) < 0) ||
- ((isX ? offset.left : offset.top) + axis.d2p(tick.v) > (isX ? graph.canvasWidth : graph.canvasHeight))) {
- continue;
- }
- top = offset.top +
- (isX ?
- ((isFirst ? 1 : -1 ) * (graph.plotHeight + options.grid.labelMargin)) :
- axis.d2p(tick.v) - axis.maxLabel.height / 2);
- left = isX ? (offset.left + axis.d2p(tick.v) - xBoxWidth / 2) : 0;
-
- name = '';
- if (i === 0) {
- name = ' first';
- } else if (i === axis.ticks.length - 1) {
- name = ' last';
- }
- name += isX ? ' flotr-grid-label-x' : ' flotr-grid-label-y';
-
- html += [
- '<div style="position:absolute; text-align:' + (isX ? 'center' : 'right') + '; ',
- 'top:' + top + 'px; ',
- ((!isX && !isFirst) ? 'right:' : 'left:') + left + 'px; ',
- 'width:' + (isX ? xBoxWidth : ((isFirst ? offset.left : offset.right) - options.grid.labelMargin)) + 'px; ',
- axis.options.color ? ('color:' + axis.options.color + '; ') : ' ',
- '" class="flotr-grid-label' + name + '">' + tick.label + '</div>'
- ].join(' ');
-
- if (!isX && !isFirst) {
- ctx.moveTo(offset.left + graph.plotWidth - 8, offset.top + axis.d2p(tick.v));
- ctx.lineTo(offset.left + graph.plotWidth, offset.top + axis.d2p(tick.v));
- }
- }
- }
- }
- }
-
-});
-})();
-
-(function () {
-
-var
- D = Flotr.DOM,
- _ = Flotr._;
-
-Flotr.addPlugin('legend', {
- options: {
- show: true, // => setting to true will show the legend, hide otherwise
- noColumns: 1, // => number of colums in legend table // @todo: doesn't work for HtmlText = false
- labelFormatter: function(v){return v;}, // => fn: string -> string
- labelBoxBorderColor: '#CCCCCC', // => border color for the little label boxes
- labelBoxWidth: 14,
- labelBoxHeight: 10,
- labelBoxMargin: 5,
- labelBoxOpacity: 0.4,
- container: null, // => container (as jQuery object) to put legend in, null means default on top of graph
- position: 'nw', // => position of default legend container within plot
- margin: 5, // => distance from grid edge to default legend container within plot
- backgroundColor: null, // => null means auto-detect
- backgroundOpacity: 0.85// => set to 0 to avoid background, set to 1 for a solid background
- },
- callbacks: {
- 'flotr:afterinit': function() {
- this.legend.insertLegend();
- }
- },
- /**
- * Adds a legend div to the canvas container or draws it on the canvas.
- */
- insertLegend: function(){
-
- if(!this.options.legend.show)
- return;
-
- var series = this.series,
- plotOffset = this.plotOffset,
- options = this.options,
- legend = options.legend,
- fragments = [],
- rowStarted = false,
- ctx = this.ctx,
- itemCount = _.filter(series, function(s) {return (s.label && !s.hide);}).length,
- p = legend.position,
- m = legend.margin,
- i, label, color;
-
- if (itemCount) {
- if (!options.HtmlText && this.textEnabled && !legend.container) {
- var style = {
- size: options.fontSize*1.1,
- color: options.grid.color
- };
-
- var lbw = legend.labelBoxWidth,
- lbh = legend.labelBoxHeight,
- lbm = legend.labelBoxMargin,
- offsetX = plotOffset.left + m,
- offsetY = plotOffset.top + m;
-
- // We calculate the labels' max width
- var labelMaxWidth = 0;
- for(i = series.length - 1; i > -1; --i){
- if(!series[i].label || series[i].hide) continue;
- label = legend.labelFormatter(series[i].label);
- labelMaxWidth = Math.max(labelMaxWidth, this._text.measureText(label, style).width);
- }
-
- var legendWidth = Math.round(lbw + lbm*3 + labelMaxWidth),
- legendHeight = Math.round(itemCount*(lbm+lbh) + lbm);
-
- if(p.charAt(0) == 's') offsetY = plotOffset.top + this.plotHeight - (m + legendHeight);
- if(p.charAt(1) == 'e') offsetX = plotOffset.left + this.plotWidth - (m + legendWidth);
-
- // Legend box
- color = this.processColor(legend.backgroundColor || 'rgb(240,240,240)', {opacity: legend.backgroundOpacity || 0.1});
-
- ctx.fillStyle = color;
- ctx.fillRect(offsetX, offsetY, legendWidth, legendHeight);
- ctx.strokeStyle = legend.labelBoxBorderColor;
- ctx.strokeRect(Flotr.toPixel(offsetX), Flotr.toPixel(offsetY), legendWidth, legendHeight);
-
- // Legend labels
- var x = offsetX + lbm;
- var y = offsetY + lbm;
- for(i = 0; i < series.length; i++){
- if(!series[i].label || series[i].hide) continue;
- label = legend.labelFormatter(series[i].label);
-
- ctx.fillStyle = series[i].color;
- ctx.fillRect(x, y, lbw-1, lbh-1);
-
- ctx.strokeStyle = legend.labelBoxBorderColor;
- ctx.lineWidth = 1;
- ctx.strokeRect(Math.ceil(x)-1.5, Math.ceil(y)-1.5, lbw+2, lbh+2);
-
- // Legend text
- Flotr.drawText(ctx, label, x + lbw + lbm, y + lbh, style);
-
- y += lbh + lbm;
- }
- }
- else {
- for(i = 0; i < series.length; ++i){
- if(!series[i].label || series[i].hide) continue;
-
- if(i % legend.noColumns === 0){
- fragments.push(rowStarted ? '</tr><tr>' : '<tr>');
- rowStarted = true;
- }
-
- // @TODO remove requirement on bars
- var s = series[i],
- boxWidth = legend.labelBoxWidth,
- boxHeight = legend.labelBoxHeight,
- opacityValue = (s.bars ? s.bars.fillOpacity : legend.labelBoxOpacity),
- opacity = 'opacity:' + opacityValue + ';filter:alpha(opacity=' + opacityValue*100 + ');';
-
- label = legend.labelFormatter(s.label);
- color = 'background-color:' + ((s.bars && s.bars.show && s.bars.fillColor && s.bars.fill) ? s.bars.fillColor : s.color) + ';';
-
- fragments.push(
- '<td class="flotr-legend-color-box">',
- '<div style="border:1px solid ', legend.labelBoxBorderColor, ';padding:1px">',
- '<div style="width:', (boxWidth-1), 'px;height:', (boxHeight-1), 'px;border:1px solid ', series[i].color, '">', // Border
- '<div style="width:', boxWidth, 'px;height:', boxHeight, 'px;', 'opacity:.4;', color, '"></div>', // Background
- '</div>',
- '</div>',
- '</td>',
- '<td class="flotr-legend-label">', label, '</td>'
- );
- }
- if(rowStarted) fragments.push('</tr>');
-
- if(fragments.length > 0){
- var table = '<table style="font-size:smaller;color:' + options.grid.color + '">' + fragments.join('') + '</table>';
- if(legend.container){
- D.insert(legend.container, table);
- }
- else {
- var styles = {position: 'absolute', 'z-index': 2};
-
- if(p.charAt(0) == 'n') { styles.top = (m + plotOffset.top) + 'px'; styles.bottom = 'auto'; }
- else if(p.charAt(0) == 's') { styles.bottom = (m + plotOffset.bottom) + 'px'; styles.top = 'auto'; }
- if(p.charAt(1) == 'e') { styles.right = (m + plotOffset.right) + 'px'; styles.left = 'auto'; }
- else if(p.charAt(1) == 'w') { styles.left = (m + plotOffset.left) + 'px'; styles.right = 'auto'; }
-
- var div = D.create('div'), size;
- div.className = 'flotr-legend';
- D.setStyles(div, styles);
- D.insert(div, table);
- D.insert(this.el, div);
-
- if(!legend.backgroundOpacity)
- return;
-
- var c = legend.backgroundColor || options.grid.backgroundColor || '#ffffff';
-
- _.extend(styles, D.size(div), {
- 'backgroundColor': c,
- 'z-index': 1
+ D = Flotr.DOM,
+ _ = Flotr._;
+
+ Flotr.addPlugin('spreadsheet', {
+ options: {
+ show: false, // => show the data grid using two tabs
+ tabGraphLabel: 'Graph',
+ tabDataLabel: 'Data',
+ toolbarDownload: 'Download CSV', // @todo: add better language support
+ toolbarSelectAll: 'Select all',
+ csvFileSeparator: ',',
+ decimalSeparator: '.',
+ tickFormatter: null,
+ initialTab: 'graph'
+ },
+ /**
+ * Builds the tabs in the DOM
+ */
+ callbacks: {
+ 'flotr:afterconstruct': function () {
+ // @TODO necessary?
+ //this.el.select('.flotr-tabs-group,.flotr-datagrid-container').invoke('remove');
+
+ if (!this.options.spreadsheet.show) return;
+
+ var ss = this.spreadsheet,
+ container = D.node('<div class="flotr-tabs-group" style="position:absolute;left:0px;width:' + this.canvasWidth + 'px"></div>'),
+ graph = D.node('<div style="float:left" class="flotr-tab selected">' + this.options.spreadsheet.tabGraphLabel + '</div>'),
+ data = D.node('<div style="float:left" class="flotr-tab">' + this.options.spreadsheet.tabDataLabel + '</div>'),
+ offset;
+
+ ss.tabsContainer = container;
+ ss.tabs = { graph: graph, data: data };
+
+ D.insert(container, graph);
+ D.insert(container, data);
+ D.insert(this.el, container);
+
+ offset = D.size(data).height + 2;
+ this.plotOffset.bottom += offset;
+
+ D.setStyles(container, {top: this.canvasHeight - offset + 'px'});
+
+ this.
+ observe(graph, 'click',function () {
+ ss.showTab('graph');
+ }).
+ observe(data, 'click', function () {
+ ss.showTab('data');
+ });
+ if (this.options.spreadsheet.initialTab !== 'graph') {
+ ss.showTab(this.options.spreadsheet.initialTab);
+ }
+ }
+ },
+ /**
+ * Builds a matrix of the data to make the correspondance between the x values and the y values :
+ * X value => Y values from the axes
+ * @return {Array} The data grid
+ */
+ loadDataGrid: function () {
+ if (this.seriesData) return this.seriesData;
+
+ var s = this.series,
+ rows = {};
+
+ /* The data grid is a 2 dimensions array. There is a row for each X value.
+ * Each row contains the x value and the corresponding y value for each serie ('undefined' if there isn't one)
+ **/
+ _.each(s, function (serie, i) {
+ _.each(serie.data, function (v) {
+ var x = v[0],
+ y = v[1],
+ r = rows[x];
+ if (r) {
+ r[i + 1] = y;
+ } else {
+ var newRow = [];
+ newRow[0] = x;
+ newRow[i + 1] = y;
+ rows[x] = newRow;
+ }
+ });
});
- styles.width += 'px';
- styles.height += 'px';
-
- // Put in the transparent background separately to avoid blended labels and
- div = D.create('div');
- div.className = 'flotr-legend-bg';
- D.setStyles(div, styles);
- D.opacity(div, legend.backgroundOpacity);
- D.insert(div, ' ');
- D.insert(this.el, div);
- }
- }
- }
- }
- }
-});
-})();
-
-/** Spreadsheet **/
-(function() {
-
-function getRowLabel(value){
- if (this.options.spreadsheet.tickFormatter){
- //TODO maybe pass the xaxis formatter to the custom tick formatter as an opt-out?
- return this.options.spreadsheet.tickFormatter(value);
- }
- else {
- var t = _.find(this.axes.x.ticks, function(t){return t.v == value;});
- if (t) {
- return t.label;
- }
- return value;
- }
-}
-
-var
- D = Flotr.DOM,
- _ = Flotr._;
-
-Flotr.addPlugin('spreadsheet', {
- options: {
- show: false, // => show the data grid using two tabs
- tabGraphLabel: 'Graph',
- tabDataLabel: 'Data',
- toolbarDownload: 'Download CSV', // @todo: add better language support
- toolbarSelectAll: 'Select all',
- csvFileSeparator: ',',
- decimalSeparator: '.',
- tickFormatter: null,
- initialTab: 'graph'
- },
- /**
- * Builds the tabs in the DOM
- */
- callbacks: {
- 'flotr:afterconstruct': function(){
- // @TODO necessary?
- //this.el.select('.flotr-tabs-group,.flotr-datagrid-container').invoke('remove');
-
- if (!this.options.spreadsheet.show) return;
-
- var ss = this.spreadsheet,
- container = D.node('<div class="flotr-tabs-group" style="position:absolute;left:0px;width:'+this.canvasWidth+'px"></div>'),
- graph = D.node('<div style="float:left" class="flotr-tab selected">'+this.options.spreadsheet.tabGraphLabel+'</div>'),
- data = D.node('<div style="float:left" class="flotr-tab">'+this.options.spreadsheet.tabDataLabel+'</div>'),
- offset;
-
- ss.tabsContainer = container;
- ss.tabs = { graph : graph, data : data };
-
- D.insert(container, graph);
- D.insert(container, data);
- D.insert(this.el, container);
-
- offset = D.size(data).height + 2;
- this.plotOffset.bottom += offset;
-
- D.setStyles(container, {top: this.canvasHeight-offset+'px'});
-
- this.
- observe(graph, 'click', function(){ss.showTab('graph');}).
- observe(data, 'click', function(){ss.showTab('data');});
- if (this.options.spreadsheet.initialTab !== 'graph'){
- ss.showTab(this.options.spreadsheet.initialTab);
- }
- }
- },
- /**
- * Builds a matrix of the data to make the correspondance between the x values and the y values :
- * X value => Y values from the axes
- * @return {Array} The data grid
- */
- loadDataGrid: function(){
- if (this.seriesData) return this.seriesData;
-
- var s = this.series,
- rows = {};
-
- /* The data grid is a 2 dimensions array. There is a row for each X value.
- * Each row contains the x value and the corresponding y value for each serie ('undefined' if there isn't one)
- **/
- _.each(s, function(serie, i){
- _.each(serie.data, function (v) {
- var x = v[0],
- y = v[1],
- r = rows[x];
- if (r) {
- r[i+1] = y;
- } else {
- var newRow = [];
- newRow[0] = x;
- newRow[i+1] = y;
- rows[x] = newRow;
- }
- });
- });
-
- // The data grid is sorted by x value
- this.seriesData = _.sortBy(rows, function(row, x){
- return parseInt(x, 10);
- });
- return this.seriesData;
- },
- /**
- * Constructs the data table for the spreadsheet
- * @todo make a spreadsheet manager (Flotr.Spreadsheet)
- * @return {Element} The resulting table element
- */
- constructDataGrid: function(){
- // If the data grid has already been built, nothing to do here
- if (this.spreadsheet.datagrid) return this.spreadsheet.datagrid;
-
- var s = this.series,
- datagrid = this.spreadsheet.loadDataGrid(),
- colgroup = ['<colgroup><col />'],
- buttonDownload, buttonSelect, t;
-
- // First row : series' labels
- var html = ['<table class="flotr-datagrid"><tr class="first-row">'];
- html.push('<th> </th>');
- _.each(s, function(serie,i){
- html.push('<th scope="col">'+(serie.label || String.fromCharCode(65+i))+'</th>');
- colgroup.push('<col />');
- });
- html.push('</tr>');
- // Data rows
- _.each(datagrid, function(row){
- html.push('<tr>');
- _.times(s.length+1, function(i){
- var tag = 'td',
- value = row[i],
- // TODO: do we really want to handle problems with floating point
- // precision here?
- content = (!_.isUndefined(value) ? Math.round(value*100000)/100000 : '');
- if (i === 0) {
- tag = 'th';
- var label = getRowLabel.call(this, content);
- if (label) content = label;
- }
-
- html.push('<'+tag+(tag=='th'?' scope="row"':'')+'>'+content+'</'+tag+'>');
- }, this);
- html.push('</tr>');
- }, this);
- colgroup.push('</colgroup>');
- t = D.node(html.join(''));
-
- /**
- * @TODO disabled this
- if (!Flotr.isIE || Flotr.isIE == 9) {
+
+ // The data grid is sorted by x value
+ this.seriesData = _.sortBy(rows, function (row, x) {
+ return parseInt(x, 10);
+ });
+ return this.seriesData;
+ },
+ /**
+ * Constructs the data table for the spreadsheet
+ * @todo make a spreadsheet manager (Flotr.Spreadsheet)
+ * @return {Element} The resulting table element
+ */
+ constructDataGrid: function () {
+ // If the data grid has already been built, nothing to do here
+ if (this.spreadsheet.datagrid) return this.spreadsheet.datagrid;
+
+ var s = this.series,
+ datagrid = this.spreadsheet.loadDataGrid(),
+ colgroup = ['<colgroup><col />'],
+ buttonDownload, buttonSelect, t;
+
+ // First row : series' labels
+ var html = ['<table class="flotr-datagrid"><tr class="first-row">'];
+ html.push('<th> </th>');
+ _.each(s, function (serie, i) {
+ html.push('<th scope="col">' + (serie.label || String.fromCharCode(65 + i)) + '</th>');
+ colgroup.push('<col />');
+ });
+ html.push('</tr>');
+ // Data rows
+ _.each(datagrid, function (row) {
+ html.push('<tr>');
+ _.times(s.length + 1, function (i) {
+ var tag = 'td',
+ value = row[i],
+ // TODO: do we really want to handle problems with floating point
+ // precision here?
+ content = (!_.isUndefined(value) ? Math.round(value * 100000) / 100000 : '');
+ if (i === 0) {
+ tag = 'th';
+ var label = getRowLabel.call(this, content);
+ if (label) content = label;
+ }
+
+ html.push('<' + tag + (tag == 'th' ? ' scope="row"' : '') + '>' + content + '</' + tag + '>');
+ }, this);
+ html.push('</tr>');
+ }, this);
+ colgroup.push('</colgroup>');
+ t = D.node(html.join(''));
+
+ /**
+ * @TODO disabled this
+ if (!Flotr.isIE || Flotr.isIE == 9) {
function handleMouseout(){
t.select('colgroup col.hover, th.hover').invoke('removeClassName', 'hover');
}
@@ -6601,311 +6700,311 @@
observe(td, 'mouseout', handleMouseout);
});
}
- */
-
- buttonDownload = D.node(
- '<button type="button" class="flotr-datagrid-toolbar-button">' +
- this.options.spreadsheet.toolbarDownload +
- '</button>');
-
- buttonSelect = D.node(
- '<button type="button" class="flotr-datagrid-toolbar-button">' +
- this.options.spreadsheet.toolbarSelectAll+
- '</button>');
-
- this.
- observe(buttonDownload, 'click', _.bind(this.spreadsheet.downloadCSV, this)).
- observe(buttonSelect, 'click', _.bind(this.spreadsheet.selectAllData, this));
-
- var toolbar = D.node('<div class="flotr-datagrid-toolbar"></div>');
- D.insert(toolbar, buttonDownload);
- D.insert(toolbar, buttonSelect);
-
- var containerHeight =this.canvasHeight - D.size(this.spreadsheet.tabsContainer).height-2,
- container = D.node('<div class="flotr-datagrid-container" style="position:absolute;left:0px;top:0px;width:'+
- this.canvasWidth+'px;height:'+containerHeight+'px;overflow:auto;z-index:10"></div>');
-
- D.insert(container, toolbar);
- D.insert(container, t);
- D.insert(this.el, container);
- this.spreadsheet.datagrid = t;
- this.spreadsheet.container = container;
-
- return t;
- },
- /**
- * Shows the specified tab, by its name
- * @todo make a tab manager (Flotr.Tabs)
- * @param {String} tabName - The tab name
- */
- showTab: function(tabName){
- if (this.spreadsheet.activeTab === tabName){
- return;
- }
- switch(tabName) {
- case 'graph':
- D.hide(this.spreadsheet.container);
- D.removeClass(this.spreadsheet.tabs.data, 'selected');
- D.addClass(this.spreadsheet.tabs.graph, 'selected');
- break;
- case 'data':
- if (!this.spreadsheet.datagrid)
- this.spreadsheet.constructDataGrid();
- D.show(this.spreadsheet.container);
- D.addClass(this.spreadsheet.tabs.data, 'selected');
- D.removeClass(this.spreadsheet.tabs.graph, 'selected');
- break;
- default:
- throw 'Illegal tab name: ' + tabName;
- }
- this.spreadsheet.activeTab = tabName;
- },
- /**
- * Selects the data table in the DOM for copy/paste
- */
- selectAllData: function(){
- if (this.spreadsheet.tabs) {
- var selection, range, doc, win, node = this.spreadsheet.constructDataGrid();
-
- this.spreadsheet.showTab('data');
-
- // deferred to be able to select the table
- setTimeout(function () {
- if ((doc = node.ownerDocument) && (win = doc.defaultView) &&
- win.getSelection && doc.createRange &&
- (selection = window.getSelection()) &&
- selection.removeAllRanges) {
- range = doc.createRange();
- range.selectNode(node);
- selection.removeAllRanges();
- selection.addRange(range);
- }
- else if (document.body && document.body.createTextRange &&
- (range = document.body.createTextRange())) {
- range.moveToElementText(node);
- range.select();
- }
- }, 0);
- return true;
- }
- else return false;
- },
- /**
- * Converts the data into CSV in order to download a file
- */
- downloadCSV: function(){
- var csv = '',
- series = this.series,
- options = this.options,
- dg = this.spreadsheet.loadDataGrid(),
- separator = encodeURIComponent(options.spreadsheet.csvFileSeparator);
-
- if (options.spreadsheet.decimalSeparator === options.spreadsheet.csvFileSeparator) {
- throw "The decimal separator is the same as the column separator ("+options.spreadsheet.decimalSeparator+")";
- }
-
- // The first row
- _.each(series, function(serie, i){
- csv += separator+'"'+(serie.label || String.fromCharCode(65+i)).replace(/\"/g, '\\"')+'"';
+ */
+
+ buttonDownload = D.node(
+ '<button type="button" class="flotr-datagrid-toolbar-button">' +
+ this.options.spreadsheet.toolbarDownload +
+ '</button>');
+
+ buttonSelect = D.node(
+ '<button type="button" class="flotr-datagrid-toolbar-button">' +
+ this.options.spreadsheet.toolbarSelectAll +
+ '</button>');
+
+ this.
+ observe(buttonDownload, 'click', _.bind(this.spreadsheet.downloadCSV, this)).
+ observe(buttonSelect, 'click', _.bind(this.spreadsheet.selectAllData, this));
+
+ var toolbar = D.node('<div class="flotr-datagrid-toolbar"></div>');
+ D.insert(toolbar, buttonDownload);
+ D.insert(toolbar, buttonSelect);
+
+ var containerHeight = this.canvasHeight - D.size(this.spreadsheet.tabsContainer).height - 2,
+ container = D.node('<div class="flotr-datagrid-container" style="position:absolute;left:0px;top:0px;width:' +
+ this.canvasWidth + 'px;height:' + containerHeight + 'px;overflow:auto;z-index:10"></div>');
+
+ D.insert(container, toolbar);
+ D.insert(container, t);
+ D.insert(this.el, container);
+ this.spreadsheet.datagrid = t;
+ this.spreadsheet.container = container;
+
+ return t;
+ },
+ /**
+ * Shows the specified tab, by its name
+ * @todo make a tab manager (Flotr.Tabs)
+ * @param {String} tabName - The tab name
+ */
+ showTab: function (tabName) {
+ if (this.spreadsheet.activeTab === tabName) {
+ return;
+ }
+ switch (tabName) {
+ case 'graph':
+ D.hide(this.spreadsheet.container);
+ D.removeClass(this.spreadsheet.tabs.data, 'selected');
+ D.addClass(this.spreadsheet.tabs.graph, 'selected');
+ break;
+ case 'data':
+ if (!this.spreadsheet.datagrid)
+ this.spreadsheet.constructDataGrid();
+ D.show(this.spreadsheet.container);
+ D.addClass(this.spreadsheet.tabs.data, 'selected');
+ D.removeClass(this.spreadsheet.tabs.graph, 'selected');
+ break;
+ default:
+ throw 'Illegal tab name: ' + tabName;
+ }
+ this.spreadsheet.activeTab = tabName;
+ },
+ /**
+ * Selects the data table in the DOM for copy/paste
+ */
+ selectAllData: function () {
+ if (this.spreadsheet.tabs) {
+ var selection, range, doc, win, node = this.spreadsheet.constructDataGrid();
+
+ this.spreadsheet.showTab('data');
+
+ // deferred to be able to select the table
+ setTimeout(function () {
+ if ((doc = node.ownerDocument) && (win = doc.defaultView) &&
+ win.getSelection && doc.createRange &&
+ (selection = window.getSelection()) &&
+ selection.removeAllRanges) {
+ range = doc.createRange();
+ range.selectNode(node);
+ selection.removeAllRanges();
+ selection.addRange(range);
+ }
+ else if (document.body && document.body.createTextRange &&
+ (range = document.body.createTextRange())) {
+ range.moveToElementText(node);
+ range.select();
+ }
+ }, 0);
+ return true;
+ }
+ else return false;
+ },
+ /**
+ * Converts the data into CSV in order to download a file
+ */
+ downloadCSV: function () {
+ var csv = '',
+ series = this.series,
+ options = this.options,
+ dg = this.spreadsheet.loadDataGrid(),
+ separator = encodeURIComponent(options.spreadsheet.csvFileSeparator);
+
+ if (options.spreadsheet.decimalSeparator === options.spreadsheet.csvFileSeparator) {
+ throw "The decimal separator is the same as the column separator (" + options.spreadsheet.decimalSeparator + ")";
+ }
+
+ // The first row
+ _.each(series, function (serie, i) {
+ csv += separator + '"' + (serie.label || String.fromCharCode(65 + i)).replace(/\"/g, '\\"') + '"';
+ });
+
+ csv += "%0D%0A"; // \r\n
+
+ // For each row
+ csv += _.reduce(dg, function (memo, row) {
+ var rowLabel = getRowLabel.call(this, row[0]) || '';
+ rowLabel = '"' + (rowLabel + '').replace(/\"/g, '\\"') + '"';
+ var numbers = row.slice(1).join(separator);
+ if (options.spreadsheet.decimalSeparator !== '.') {
+ numbers = numbers.replace(/\./g, options.spreadsheet.decimalSeparator);
+ }
+ return memo + rowLabel + separator + numbers + "%0D%0A"; // \t and \r\n
+ }, '', this);
+
+ if (Flotr.isIE && Flotr.isIE < 9) {
+ csv = csv.replace(new RegExp(separator, 'g'), decodeURIComponent(separator)).replace(/%0A/g, '\n').replace(/%0D/g, '\r');
+ window.open().document.write(csv);
+ }
+ else window.open('data:text/csv,' + csv);
+ }
});
-
- csv += "%0D%0A"; // \r\n
-
- // For each row
- csv += _.reduce(dg, function(memo, row){
- var rowLabel = getRowLabel.call(this, row[0]) || '';
- rowLabel = '"'+(rowLabel+'').replace(/\"/g, '\\"')+'"';
- var numbers = row.slice(1).join(separator);
- if (options.spreadsheet.decimalSeparator !== '.') {
- numbers = numbers.replace(/\./g, options.spreadsheet.decimalSeparator);
- }
- return memo + rowLabel+separator+numbers+"%0D%0A"; // \t and \r\n
- }, '', this);
-
- if (Flotr.isIE && Flotr.isIE < 9) {
- csv = csv.replace(new RegExp(separator, 'g'), decodeURIComponent(separator)).replace(/%0A/g, '\n').replace(/%0D/g, '\r');
- window.open().document.write(csv);
- }
- else window.open('data:text/csv,'+csv);
- }
-});
})();
(function () {
-var D = Flotr.DOM;
-
-Flotr.addPlugin('titles', {
- callbacks: {
- 'flotr:afterdraw': function() {
- this.titles.drawTitles();
- }
- },
- /**
- * Draws the title and the subtitle
- */
- drawTitles : function () {
- var html,
- options = this.options,
- margin = options.grid.labelMargin,
- ctx = this.ctx,
- a = this.axes;
-
- if (!options.HtmlText && this.textEnabled) {
- var style = {
- size: options.fontSize,
- color: options.grid.color,
- textAlign: 'center'
- };
-
- // Add subtitle
- if (options.subtitle){
- Flotr.drawText(
- ctx, options.subtitle,
- this.plotOffset.left + this.plotWidth/2,
- this.titleHeight + this.subtitleHeight - 2,
- style
- );
- }
-
- style.weight = 1.5;
- style.size *= 1.5;
-
- // Add title
- if (options.title){
- Flotr.drawText(
- ctx, options.title,
- this.plotOffset.left + this.plotWidth/2,
- this.titleHeight - 2,
- style
- );
- }
-
- style.weight = 1.8;
- style.size *= 0.8;
-
- // Add x axis title
- if (a.x.options.title && a.x.used){
- style.textAlign = a.x.options.titleAlign || 'center';
- style.textBaseline = 'top';
- style.angle = Flotr.toRad(a.x.options.titleAngle);
- style = Flotr.getBestTextAlign(style.angle, style);
- Flotr.drawText(
- ctx, a.x.options.title,
- this.plotOffset.left + this.plotWidth/2,
- this.plotOffset.top + a.x.maxLabel.height + this.plotHeight + 2 * margin,
- style
- );
- }
-
- // Add x2 axis title
- if (a.x2.options.title && a.x2.used){
- style.textAlign = a.x2.options.titleAlign || 'center';
- style.textBaseline = 'bottom';
- style.angle = Flotr.toRad(a.x2.options.titleAngle);
- style = Flotr.getBestTextAlign(style.angle, style);
- Flotr.drawText(
- ctx, a.x2.options.title,
- this.plotOffset.left + this.plotWidth/2,
- this.plotOffset.top - a.x2.maxLabel.height - 2 * margin,
- style
- );
- }
-
- // Add y axis title
- if (a.y.options.title && a.y.used){
- style.textAlign = a.y.options.titleAlign || 'right';
- style.textBaseline = 'middle';
- style.angle = Flotr.toRad(a.y.options.titleAngle);
- style = Flotr.getBestTextAlign(style.angle, style);
- Flotr.drawText(
- ctx, a.y.options.title,
- this.plotOffset.left - a.y.maxLabel.width - 2 * margin,
- this.plotOffset.top + this.plotHeight / 2,
- style
- );
- }
-
- // Add y2 axis title
- if (a.y2.options.title && a.y2.used){
- style.textAlign = a.y2.options.titleAlign || 'left';
- style.textBaseline = 'middle';
- style.angle = Flotr.toRad(a.y2.options.titleAngle);
- style = Flotr.getBestTextAlign(style.angle, style);
- Flotr.drawText(
- ctx, a.y2.options.title,
- this.plotOffset.left + this.plotWidth + a.y2.maxLabel.width + 2 * margin,
- this.plotOffset.top + this.plotHeight / 2,
- style
- );
- }
- }
- else {
- html = [];
-
- // Add title
- if (options.title)
- html.push(
- '<div style="position:absolute;top:0;left:',
- this.plotOffset.left, 'px;font-size:1em;font-weight:bold;text-align:center;width:',
- this.plotWidth,'px;" class="flotr-title">', options.title, '</div>'
- );
-
- // Add subtitle
- if (options.subtitle)
- html.push(
- '<div style="position:absolute;top:', this.titleHeight, 'px;left:',
- this.plotOffset.left, 'px;font-size:smaller;text-align:center;width:',
- this.plotWidth, 'px;" class="flotr-subtitle">', options.subtitle, '</div>'
- );
-
- html.push('</div>');
-
- html.push('<div class="flotr-axis-title" style="font-weight:bold;">');
-
- // Add x axis title
- if (a.x.options.title && a.x.used)
- html.push(
- '<div style="position:absolute;top:',
- (this.plotOffset.top + this.plotHeight + options.grid.labelMargin + a.x.titleSize.height),
- 'px;left:', this.plotOffset.left, 'px;width:', this.plotWidth,
- 'px;text-align:', a.x.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-x1">', a.x.options.title, '</div>'
- );
-
- // Add x2 axis title
- if (a.x2.options.title && a.x2.used)
- html.push(
- '<div style="position:absolute;top:0;left:', this.plotOffset.left, 'px;width:',
- this.plotWidth, 'px;text-align:', a.x2.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-x2">', a.x2.options.title, '</div>'
- );
-
- // Add y axis title
- if (a.y.options.title && a.y.used)
- html.push(
- '<div style="position:absolute;top:',
- (this.plotOffset.top + this.plotHeight/2 - a.y.titleSize.height/2),
- 'px;left:0;text-align:', a.y.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-y1">', a.y.options.title, '</div>'
- );
-
- // Add y2 axis title
- if (a.y2.options.title && a.y2.used)
- html.push(
- '<div style="position:absolute;top:',
- (this.plotOffset.top + this.plotHeight/2 - a.y.titleSize.height/2),
- 'px;right:0;text-align:', a.y2.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-y2">', a.y2.options.title, '</div>'
- );
-
- html = html.join('');
-
- var div = D.create('div');
- D.setStyles({
- color: options.grid.color
- });
- div.className = 'flotr-titles';
- D.insert(this.el, div);
- D.insert(div, html);
- }
- }
-});
+ var D = Flotr.DOM;
+
+ Flotr.addPlugin('titles', {
+ callbacks: {
+ 'flotr:afterdraw': function () {
+ this.titles.drawTitles();
+ }
+ },
+ /**
+ * Draws the title and the subtitle
+ */
+ drawTitles: function () {
+ var html,
+ options = this.options,
+ margin = options.grid.labelMargin,
+ ctx = this.ctx,
+ a = this.axes;
+
+ if (!options.HtmlText && this.textEnabled) {
+ var style = {
+ size: options.fontSize,
+ color: options.grid.color,
+ textAlign: 'center'
+ };
+
+ // Add subtitle
+ if (options.subtitle) {
+ Flotr.drawText(
+ ctx, options.subtitle,
+ this.plotOffset.left + this.plotWidth / 2,
+ this.titleHeight + this.subtitleHeight - 2,
+ style
+ );
+ }
+
+ style.weight = 1.5;
+ style.size *= 1.5;
+
+ // Add title
+ if (options.title) {
+ Flotr.drawText(
+ ctx, options.title,
+ this.plotOffset.left + this.plotWidth / 2,
+ this.titleHeight - 2,
+ style
+ );
+ }
+
+ style.weight = 1.8;
+ style.size *= 0.8;
+
+ // Add x axis title
+ if (a.x.options.title && a.x.used) {
+ style.textAlign = a.x.options.titleAlign || 'center';
+ style.textBaseline = 'top';
+ style.angle = Flotr.toRad(a.x.options.titleAngle);
+ style = Flotr.getBestTextAlign(style.angle, style);
+ Flotr.drawText(
+ ctx, a.x.options.title,
+ this.plotOffset.left + this.plotWidth / 2,
+ this.plotOffset.top + a.x.maxLabel.height + this.plotHeight + 2 * margin,
+ style
+ );
+ }
+
+ // Add x2 axis title
+ if (a.x2.options.title && a.x2.used) {
+ style.textAlign = a.x2.options.titleAlign || 'center';
+ style.textBaseline = 'bottom';
+ style.angle = Flotr.toRad(a.x2.options.titleAngle);
+ style = Flotr.getBestTextAlign(style.angle, style);
+ Flotr.drawText(
+ ctx, a.x2.options.title,
+ this.plotOffset.left + this.plotWidth / 2,
+ this.plotOffset.top - a.x2.maxLabel.height - 2 * margin,
+ style
+ );
+ }
+
+ // Add y axis title
+ if (a.y.options.title && a.y.used) {
+ style.textAlign = a.y.options.titleAlign || 'right';
+ style.textBaseline = 'middle';
+ style.angle = Flotr.toRad(a.y.options.titleAngle);
+ style = Flotr.getBestTextAlign(style.angle, style);
+ Flotr.drawText(
+ ctx, a.y.options.title,
+ this.plotOffset.left - a.y.maxLabel.width - 2 * margin,
+ this.plotOffset.top + this.plotHeight / 2,
+ style
+ );
+ }
+
+ // Add y2 axis title
+ if (a.y2.options.title && a.y2.used) {
+ style.textAlign = a.y2.options.titleAlign || 'left';
+ style.textBaseline = 'middle';
+ style.angle = Flotr.toRad(a.y2.options.titleAngle);
+ style = Flotr.getBestTextAlign(style.angle, style);
+ Flotr.drawText(
+ ctx, a.y2.options.title,
+ this.plotOffset.left + this.plotWidth + a.y2.maxLabel.width + 2 * margin,
+ this.plotOffset.top + this.plotHeight / 2,
+ style
+ );
+ }
+ }
+ else {
+ html = [];
+
+ // Add title
+ if (options.title)
+ html.push(
+ '<div style="position:absolute;top:0;left:',
+ this.plotOffset.left, 'px;font-size:1em;font-weight:bold;text-align:center;width:',
+ this.plotWidth, 'px;" class="flotr-title">', options.title, '</div>'
+ );
+
+ // Add subtitle
+ if (options.subtitle)
+ html.push(
+ '<div style="position:absolute;top:', this.titleHeight, 'px;left:',
+ this.plotOffset.left, 'px;font-size:smaller;text-align:center;width:',
+ this.plotWidth, 'px;" class="flotr-subtitle">', options.subtitle, '</div>'
+ );
+
+ html.push('</div>');
+
+ html.push('<div class="flotr-axis-title" style="font-weight:bold;">');
+
+ // Add x axis title
+ if (a.x.options.title && a.x.used)
+ html.push(
+ '<div style="position:absolute;top:',
+ (this.plotOffset.top + this.plotHeight + options.grid.labelMargin + a.x.titleSize.height),
+ 'px;left:', this.plotOffset.left, 'px;width:', this.plotWidth,
+ 'px;text-align:', a.x.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-x1">', a.x.options.title, '</div>'
+ );
+
+ // Add x2 axis title
+ if (a.x2.options.title && a.x2.used)
+ html.push(
+ '<div style="position:absolute;top:0;left:', this.plotOffset.left, 'px;width:',
+ this.plotWidth, 'px;text-align:', a.x2.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-x2">', a.x2.options.title, '</div>'
+ );
+
+ // Add y axis title
+ if (a.y.options.title && a.y.used)
+ html.push(
+ '<div style="position:absolute;top:',
+ (this.plotOffset.top + this.plotHeight / 2 - a.y.titleSize.height / 2),
+ 'px;left:0;text-align:', a.y.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-y1">', a.y.options.title, '</div>'
+ );
+
+ // Add y2 axis title
+ if (a.y2.options.title && a.y2.used)
+ html.push(
+ '<div style="position:absolute;top:',
+ (this.plotOffset.top + this.plotHeight / 2 - a.y.titleSize.height / 2),
+ 'px;right:0;text-align:', a.y2.options.titleAlign, ';" class="flotr-axis-title flotr-axis-title-y2">', a.y2.options.title, '</div>'
+ );
+
+ html = html.join('');
+
+ var div = D.create('div');
+ D.setStyles({
+ color: options.grid.color
+ });
+ div.className = 'flotr-titles';
+ D.insert(this.el, div);
+ D.insert(div, html);
+ }
+ }
+ });
})();
--- a/js/flotr2/spec/js/test-background.js
+++ b/js/flotr2/spec/js/test-background.js
@@ -1,69 +1,77 @@
(function () {
-Flotr.ExampleList.add({
- key : 'test-background',
- name : 'Test Background',
- callback : test_background,
- timeout : 100,
- tolerance : 10
-});
+ Flotr.ExampleList.add({
+ key: 'test-background',
+ name: 'Test Background',
+ callback: test_background,
+ timeout: 100,
+ tolerance: 10
+ });
-function test_background (container) {
+ function test_background(container) {
- var
- d1 = [],
- d2 = [],
- d3 = [],
- d4 = [],
- d5 = [], // Data
- ticks = [[ 0, "Lower"], 10, 20, 30, [40, "Upper"]], // Ticks for the Y-Axis
- graph;
-
- for(var i = 0; i <= 10; i += 0.1){
- d1.push([i, 4 + Math.pow(i,1.5)]);
- d2.push([i, Math.pow(i,3)]);
- d3.push([i, i*5+3*Math.sin(i*4)]);
- d4.push([i, i]);
- if( i.toFixed(1)%1 == 0 ){
- d5.push([i, 2*i]);
+ var
+ d1 = [],
+ d2 = [],
+ d3 = [],
+ d4 = [],
+ d5 = [], // Data
+ ticks = [
+ [ 0, "Lower"],
+ 10,
+ 20,
+ 30,
+ [40, "Upper"]
+ ], // Ticks for the Y-Axis
+ graph;
+
+ for (var i = 0; i <= 10; i += 0.1) {
+ d1.push([i, 4 + Math.pow(i, 1.5)]);
+ d2.push([i, Math.pow(i, 3)]);
+ d3.push([i, i * 5 + 3 * Math.sin(i * 4)]);
+ d4.push([i, i]);
+ if (i.toFixed(1) % 1 == 0) {
+ d5.push([i, 2 * i]);
+ }
+ }
+
+ d3[30][1] = null;
+ d3[31][1] = null;
+
+ function ticksFn(n) {
+ return '(' + n + ')';
+ }
+
+ graph = Flotr.draw(container, [
+ { data: d1, label: 'y = 4 + x^(1.5)', lines: { fill: true } },
+ { data: d2, label: 'y = x^3'},
+ { data: d3, label: 'y = 5x + 3sin(4x)'},
+ { data: d4, label: 'y = x'},
+ { data: d5, label: 'y = 2x', lines: { show: true }, points: { show: true } }
+ ], {
+ xaxis: {
+ noTicks: 7, // Display 7 ticks.
+ tickFormatter: ticksFn, // Displays tick values between brackets.
+ min: 1, // Part of the series is not displayed.
+ max: 7.5 // Part of the series is not displayed.
+ },
+ yaxis: {
+ ticks: ticks, // Set Y-Axis ticks
+ max: 40 // Maximum value along Y-Axis
+ },
+ grid: {
+ verticalLines: false,
+ backgroundImage: {
+ src: 'img/test-background.png?' + Math.random()
+ }
+ },
+ legend: {
+ position: 'nw'
+ },
+ title: 'Basic Axis example',
+ subtitle: 'This is a subtitle'
+ });
}
- }
-
- d3[30][1] = null;
- d3[31][1] = null;
-
- function ticksFn (n) { return '('+n+')'; }
-
- graph = Flotr.draw(container, [
- { data : d1, label : 'y = 4 + x^(1.5)', lines : { fill : true } },
- { data : d2, label : 'y = x^3'},
- { data : d3, label : 'y = 5x + 3sin(4x)'},
- { data : d4, label : 'y = x'},
- { data : d5, label : 'y = 2x', lines : { show : true }, points : { show : true } }
- ], {
- xaxis : {
- noTicks : 7, // Display 7 ticks.
- tickFormatter : ticksFn, // Displays tick values between brackets.
- min : 1, // Part of the series is not displayed.
- max : 7.5 // Part of the series is not displayed.
- },
- yaxis : {
- ticks : ticks, // Set Y-Axis ticks
- max : 40 // Maximum value along Y-Axis
- },
- grid : {
- verticalLines : false,
- backgroundImage : {
- src : 'img/test-background.png?' + Math.random()
- }
- },
- legend : {
- position : 'nw'
- },
- title : 'Basic Axis example',
- subtitle : 'This is a subtitle'
- });
-}
})();
--- a/js/flotr2/spec/js/test-boundaries.js
+++ b/js/flotr2/spec/js/test-boundaries.js
@@ -1,32 +1,37 @@
(function () {
-Flotr.ExampleList.add({
- key : 'test-boundaries',
- name : 'Test Boundaries',
- callback : test_boundaries
-});
+ Flotr.ExampleList.add({
+ key: 'test-boundaries',
+ name: 'Test Boundaries',
+ callback: test_boundaries
+ });
-function test_boundaries (container) {
+ function test_boundaries(container) {
- var
- d1 = [[0, 0], [5, 0], [6, 10], [9, 10]], // First data series
- i, graph;
+ var
+ d1 = [
+ [0, 0],
+ [5, 0],
+ [6, 10],
+ [9, 10]
+ ], // First data series
+ i, graph;
- // Draw Graph
- graph = Flotr.draw(container, [ d1 ], {
- title : 'test',
- xaxis: {
- minorTickFreq: 4
- },
- lines: {
- lineWidth : 2
- },
- grid: {
- outlineWidth : 2,
- minorVerticalLines: true
+ // Draw Graph
+ graph = Flotr.draw(container, [ d1 ], {
+ title: 'test',
+ xaxis: {
+ minorTickFreq: 4
+ },
+ lines: {
+ lineWidth: 2
+ },
+ grid: {
+ outlineWidth: 2,
+ minorVerticalLines: true
+ }
+ });
}
- });
-}
})();
--- a/js/flotr2/spec/js/test-mountain-nulls.js
+++ b/js/flotr2/spec/js/test-mountain-nulls.js
@@ -1,45 +1,52 @@
(function () {
-Flotr.ExampleList.add({
- key : 'test-mountain-nulls',
- name : 'Mountain Nulls',
- callback : function (container) {
- var
- d1 = [[0, 3], [4, 8], [5, 6], [6, null], [7, 7], [8, 5]], // First data series
- d2 = [], // Second data series
- i, graph;
+ Flotr.ExampleList.add({
+ key: 'test-mountain-nulls',
+ name: 'Mountain Nulls',
+ callback: function (container) {
+ var
+ d1 = [
+ [0, 3],
+ [4, 8],
+ [5, 6],
+ [6, null],
+ [7, 7],
+ [8, 5]
+ ], // First data series
+ d2 = [], // Second data series
+ i, graph;
- // Generate first data set
- for (i = 0; i < 14; i += 0.5) {
- d2.push([i, Math.sin(i)]);
- }
-
- // Multiple nulls
- d2[9][1] = null;
- d2[10][1] = null;
- d2[11][1] = null;
-
- // Single not null surrounded by null
- d2[13][1] = null;
-
- // < 0 null
- d2[23][1] = null;
+ // Generate first data set
+ for (i = 0; i < 14; i += 0.5) {
+ d2.push([i, Math.sin(i)]);
+ }
- // Draw Graph
- graph = Flotr.draw(container, [ d1, d2 ], {
- xaxis: {
- minorTickFreq: 4
- },
- lines: {
- fill : true
- },
- grid: {
- minorVerticalLines: true
- }
+ // Multiple nulls
+ d2[9][1] = null;
+ d2[10][1] = null;
+ d2[11][1] = null;
+
+ // Single not null surrounded by null
+ d2[13][1] = null;
+
+ // < 0 null
+ d2[23][1] = null;
+
+ // Draw Graph
+ graph = Flotr.draw(container, [ d1, d2 ], {
+ xaxis: {
+ minorTickFreq: 4
+ },
+ lines: {
+ fill: true
+ },
+ grid: {
+ minorVerticalLines: true
+ }
+ });
+ },
+ type: 'test'
});
- },
- type : 'test'
-});
})();
--- a/js/jquery-1.8.2.min.js
+++ b/js/jquery-1.8.2.min.js
@@ -1,2 +1,2 @@
-/*! jQuery v1.8.2 jquery.com | jquery.org/license */
+/*! jQuery v1.8.2 jquery.com | jquery.org/license */
(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d<e;d++)p.event.add(b,c,h[c][d])}g.data&&(g.data=p.extend({},g.data))}function bE(a,b){var c;if(b.nodeType!==1)return;b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?(b.parentNode&&(b.outerHTML=a.outerHTML),p.support.html5Clone&&a.innerHTML&&!p.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):c==="input"&&bv.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text),b.removeAttribute(p.expando)}function bF(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bG(a){bv.test(a.type)&&(a.defaultChecked=a.checked)}function bY(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=bW.length;while(e--){b=bW[e]+c;if(b in a)return b}return d}function bZ(a,b){return a=b||a,p.css(a,"display")==="none"||!p.contains(a.ownerDocument,a)}function b$(a,b){var c,d,e=[],f=0,g=a.length;for(;f<g;f++){c=a[f];if(!c.style)continue;e[f]=p._data(c,"olddisplay"),b?(!e[f]&&c.style.display==="none"&&(c.style.display=""),c.style.display===""&&bZ(c)&&(e[f]=p._data(c,"olddisplay",cc(c.nodeName)))):(d=bH(c,"display"),!e[f]&&d!=="none"&&p._data(c,"olddisplay",d))}for(f=0;f<g;f++){c=a[f];if(!c.style)continue;if(!b||c.style.display==="none"||c.style.display==="")c.style.display=b?e[f]||"":"none"}return a}function b_(a,b,c){var d=bP.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function ca(a,b,c,d){var e=c===(d?"border":"content")?4:b==="width"?1:0,f=0;for(;e<4;e+=2)c==="margin"&&(f+=p.css(a,c+bV[e],!0)),d?(c==="content"&&(f-=parseFloat(bH(a,"padding"+bV[e]))||0),c!=="margin"&&(f-=parseFloat(bH(a,"border"+bV[e]+"Width"))||0)):(f+=parseFloat(bH(a,"padding"+bV[e]))||0,c!=="padding"&&(f+=parseFloat(bH(a,"border"+bV[e]+"Width"))||0));return f}function cb(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=!0,f=p.support.boxSizing&&p.css(a,"boxSizing")==="border-box";if(d<=0||d==null){d=bH(a,b);if(d<0||d==null)d=a.style[b];if(bQ.test(d))return d;e=f&&(p.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+ca(a,b,c||(f?"border":"content"),e)+"px"}function cc(a){if(bS[a])return bS[a];var b=p("<"+a+">").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write("<!doctype html><html><body>"),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h<i;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function cA(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h,i=a[f],j=0,k=i?i.length:0,l=a===cv;for(;j<k&&(l||!h);j++)h=i[j](c,d,e),typeof h=="string"&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=cA(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=cA(a,c,d,e,"*",g)),h}function cB(a,c){var d,e,f=p.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&p.extend(!0,a,e)}function cC(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);while(j[0]==="*")j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}if(g)return g!==j[0]&&j.unshift(g),d[g]}function cD(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;a.dataFilter&&(b=a.dataFilter(b,a.dataType));if(g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if(e!=="*"){if(h!=="*"&&h!==e){c=i[h+" "+e]||i["* "+e];if(!c)for(d in i){f=d.split(" ");if(f[1]===e){c=i[h+" "+f[0]]||i["* "+f[0]];if(c){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}}}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function cL(){try{return new a.XMLHttpRequest}catch(b){}}function cM(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function cU(){return setTimeout(function(){cN=b},0),cN=p.now()}function cV(a,b){p.each(b,function(b,c){var d=(cT[b]||[]).concat(cT["*"]),e=0,f=d.length;for(;e<f;e++)if(d[e].call(a,b,c))return})}function cW(a,b,c){var d,e=0,f=0,g=cS.length,h=p.Deferred().always(function(){delete i.elem}),i=function(){var b=cN||cU(),c=Math.max(0,j.startTime+j.duration-b),d=1-(c/j.duration||0),e=0,f=j.tweens.length;for(;e<f;e++)j.tweens[e].run(d);return h.notifyWith(a,[j,d,c]),d<1&&f?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:p.extend({},b),opts:p.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:cN||cU(),duration:c.duration,tweens:[],createTween:function(b,c,d){var e=p.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;for(;c<d;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;cX(k,j.opts.specialEasing);for(;e<g;e++){d=cS[e].call(j,a,k,j.opts);if(d)return d}return cV(j,k),p.isFunction(j.opts.start)&&j.opts.start.call(a,j),p.fx.timer(p.extend(i,{anim:j,queue:j.opts.queue,elem:a})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function cX(a,b){var c,d,e,f,g;for(c in a){d=p.camelCase(c),e=b[d],f=a[c],p.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=p.cssHooks[d];if(g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}}function cY(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],q=a.nodeType&&bZ(a);c.queue||(j=p._queueHooks(a,"fx"),j.unqueued==null&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,p.queue(a,"fx").length||j.empty.fire()})})),a.nodeType===1&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],p.css(a,"display")==="inline"&&p.css(a,"float")==="none"&&(!p.support.inlineBlockNeedsLayout||cc(a.nodeName)==="inline"?m.display="inline-block":m.zoom=1)),c.overflow&&(m.overflow="hidden",p.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b){f=b[d];if(cP.exec(f)){delete b[d];if(f===(q?"hide":"show"))continue;o.push(d)}}g=o.length;if(g){h=p._data(a,"fxshow")||p._data(a,"fxshow",{}),q?p(a).show():l.done(function(){p(a).hide()}),l.done(function(){var b;p.removeData(a,"fxshow",!0);for(b in n)p.style(a,b,n[b])});for(d=0;d<g;d++)e=o[d],i=l.createTween(e,q?h[e]:0),n[e]=h[e]||p.style(a,e),e in h||(h[e]=i.start,q&&(i.end=i.start,i.start=e==="width"||e==="height"?1:0))}}function cZ(a,b,c,d,e){return new cZ.prototype.init(a,b,c,d,e)}function c$(a,b){var c,d={height:a},e=0;b=b?1:0;for(;e<4;e+=2-b)c=bV[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function da(a){return p.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}var c,d,e=a.document,f=a.location,g=a.navigator,h=a.jQuery,i=a.$,j=Array.prototype.push,k=Array.prototype.slice,l=Array.prototype.indexOf,m=Object.prototype.toString,n=Object.prototype.hasOwnProperty,o=String.prototype.trim,p=function(a,b){return new p.fn.init(a,b,c)},q=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,r=/\S/,s=/\s+/,t=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,u=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.2",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i<j;i++)if((a=arguments[i])!=null)for(c in a){d=h[c],e=a[c];if(h===e)continue;k&&e&&(p.isPlainObject(e)||(f=p.isArray(e)))?(f?(f=!1,g=d&&p.isArray(d)?d:[]):g=d&&p.isPlainObject(d)?d:{},h[c]=p.extend(k,g,e)):e!==b&&(h[c]=e)}return h},p.extend({noConflict:function(b){return a.$===p&&(a.$=i),b&&a.jQuery===p&&(a.jQuery=h),p},isReady:!1,readyWait:1,holdReady:function(a){a?p.readyWait++:p.ready(!0)},ready:function(a){if(a===!0?--p.readyWait:p.isReady)return;if(!e.body)return setTimeout(p.ready,1);p.isReady=!0;if(a!==!0&&--p.readyWait>0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f<g;)if(c.apply(a[f++],d)===!1)break}else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;f<g;)if(c.call(a[f],f,a[f++])===!1)break;return a},trim:o&&!o.call(" ")?function(a){return a==null?"":o.call(a)}:function(a){return a==null?"":(a+"").replace(t,"")},makeArray:function(a,b){var c,d=b||[];return a!=null&&(c=p.type(a),a.length==null||c==="string"||c==="function"||c==="regexp"||p.isWindow(a)?j.call(d,a):p.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(l)return l.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if(typeof d=="number")for(;f<d;f++)a[e++]=c[f];else while(c[f]!==b)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;c=!!c;for(;f<g;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof p||i!==b&&typeof i=="number"&&(i>0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h<i;h++)e=c(a[h],h,d),e!=null&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),e!=null&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return typeof c=="string"&&(d=a[c],c=a,a=d),p.isFunction(a)?(e=k.call(arguments,2),f=function(){return a.apply(c,e.concat(k.call(arguments)))},f.guid=a.guid=a.guid||p.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=d==null,k=0,l=a.length;if(d&&typeof d=="object"){for(k in d)p.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){i=h===b&&p.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call(p(a),c)}):(c.call(a,e),c=null));if(c)for(;k<l;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),p.ready.promise=function(b){if(!d){d=p.Deferred();if(e.readyState==="complete")setTimeout(p.ready,1);else if(e.addEventListener)e.addEventListener("DOMContentLoaded",D,!1),a.addEventListener("load",p.ready,!1);else{e.attachEvent("onreadystatechange",D),a.attachEvent("onload",p.ready);var c=!1;try{c=a.frameElement==null&&e.documentElement}catch(f){}c&&c.doScroll&&function g(){if(!p.isReady){try{c.doScroll("left")}catch(a){return setTimeout(g,50)}p.ready()}}()}}return d.promise(b)},p.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){E["[object "+b+"]"]=b.toLowerCase()}),c=p(e);var F={};p.Callbacks=function(a){a=typeof a=="string"?F[a]||G(a):p.extend({},a);var c,d,e,f,g,h,i=[],j=!a.once&&[],k=function(b){c=a.memory&&b,d=!0,h=f||0,f=0,g=i.length,e=!0;for(;i&&h<g;h++)if(i[h].apply(b[0],b[1])===!1&&a.stopOnFalse){c=!1;break}e=!1,i&&(j?j.length&&k(j.shift()):c?i=[]:l.disable())},l={add:function(){if(i){var b=i.length;(function d(b){p.each(b,function(b,c){var e=p.type(c);e==="function"&&(!a.unique||!l.has(c))?i.push(c):c&&c.length&&e!=="string"&&d(c)})})(arguments),e?g=i.length:c&&(f=b,k(c))}return this},remove:function(){return i&&p.each(arguments,function(a,b){var c;while((c=p.inArray(b,i,c))>-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return a!=null?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b<d;b++)c[b]&&p.isFunction(c[b].promise)?c[b].promise().done(g(b,j,c)).fail(f.reject).progress(g(b,i,h)):--e}return e||f.resolveWith(j,c),f.promise()}}),p.support=function(){var b,c,d,f,g,h,i,j,k,l,m,n=e.createElement("div");n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="<div></div>",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||p.guid++:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e<f;e++)delete d[b[e]];if(!(c?K:p.isEmptyObject)(d))return}}if(!c){delete h[i].data;if(!K(h[i]))return}g?p.cleanData([a],!0):p.support.deleteExpando||h!=h.window?delete h[i]:h[i]=null},_data:function(a,b,c){return p.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&p.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),p.fn.extend({data:function(a,c){var d,e,f,g,h,i=this[0],j=0,k=null;if(a===b){if(this.length){k=p.data(i);if(i.nodeType===1&&!p._data(i,"parsedAttrs")){f=i.attributes;for(h=f.length;j<h;j++)g=f[j].name,g.indexOf("data-")||(g=p.camelCase(g.substring(5)),J(i,g,k[g]));p._data(i,"parsedAttrs",!0)}}return k}return typeof a=="object"?this.each(function(){p.data(this,a)}):(d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!",p.access(this,function(c){if(c===b)return k=this.triggerHandler("getData"+e,[d[0]]),k===b&&i&&(k=p.data(i,a),k=J(i,a,k)),k===b&&d[1]?this.data(d[0]):k;d[1]=c,this.each(function(){var b=p(this);b.triggerHandler("setData"+e,d),p.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length<d?p.queue(this[0],a):c===b?this:this.each(function(){var b=p.queue(this,a,c);p._queueHooks(this,a),a==="fx"&&b[0]!=="inprogress"&&p.dequeue(this,a)})},dequeue:function(a){return this.each(function(){p.dequeue(this,a)})},delay:function(a,b){return a=p.fx?p.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){var d,e=1,f=p.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};typeof a!="string"&&(c=a,a=b),a=a||"fx";while(h--)d=p._data(g[h],a+"queueHooks"),d&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(c)}});var L,M,N,O=/[\t\r\n]/g,P=/\r/g,Q=/^(?:button|input)$/i,R=/^(?:button|input|object|select|textarea)$/i,S=/^a(?:rea|)$/i,T=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,U=p.support.getSetAttribute;p.fn.extend({attr:function(a,b){return p.access(this,p.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{f=" "+e.className+" ";for(g=0,h=b.length;g<h;g++)f.indexOf(" "+b[g]+" ")<0&&(f+=b[g]+" ");e.className=p.trim(f)}}}return this},removeClass:function(a){var c,d,e,f,g,h,i;if(p.isFunction(a))return this.each(function(b){p(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(s);for(h=0,i=this.length;h<i;h++){e=this[h];if(e.nodeType===1&&e.className){d=(" "+e.className+" ").replace(O," ");for(f=0,g=c.length;f<g;f++)while(d.indexOf(" "+c[f]+" ")>=0)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(O," ").indexOf(b)>=0)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c<d;c++){e=h[c];if(e.selected&&(p.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!p.nodeName(e.parentNode,"optgroup"))){b=p(e).val();if(i)return b;g.push(b)}}return i&&!g.length&&h.length?p(h[f]).val():g},set:function(a,b){var c=p.makeArray(b);return p(a).find("option").each(function(){this.selected=p.inArray(p(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,d+""),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g<d.length;g++)e=d[g],e&&(c=p.propFix[e]||e,f=T.test(e),f||p.attr(a,e,""),a.removeAttribute(U?e:c),f&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(Q.test(a.nodeName)&&a.parentNode)p.error("type property can't be changed");else if(!p.support.radioValue&&b==="radio"&&p.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}},value:{get:function(a,b){return L&&p.nodeName(a,"button")?L.get(a,b):b in a?a.value:null},set:function(a,b,c){if(L&&p.nodeName(a,"button"))return L.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,f,g,h=a.nodeType;if(!a||h===3||h===8||h===2)return;return g=h!==1||!p.isXMLDoc(a),g&&(c=p.propFix[c]||c,f=p.propHooks[c]),d!==b?f&&"set"in f&&(e=f.set(a,d,c))!==b?e:a[c]=d:f&&"get"in f&&(e=f.get(a,c))!==null?e:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):R.test(a.nodeName)||S.test(a.nodeName)&&a.href?0:b}}}}),M={get:function(a,c){var d,e=p.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;return b===!1?p.removeAttr(a,c):(d=p.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase())),c}},U||(N={name:!0,id:!0,coords:!0},L=p.valHooks.button={get:function(a,c){var d;return d=a.getAttributeNode(c),d&&(N[c]?d.value!=="":d.specified)?d.value:b},set:function(a,b,c){var d=a.getAttributeNode(c);return d||(d=e.createAttribute(c),a.setAttributeNode(d)),d.value=b+""}},p.each(["width","height"],function(a,b){p.attrHooks[b]=p.extend(p.attrHooks[b],{set:function(a,c){if(c==="")return a.setAttribute(b,"auto"),c}})}),p.attrHooks.contenteditable={get:L.get,set:function(a,b,c){b===""&&(b="false"),L.set(a,b,c)}}),p.support.hrefNormalized||p.each(["href","src","width","height"],function(a,c){p.attrHooks[c]=p.extend(p.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),p.support.style||(p.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=b+""}}),p.support.optSelected||(p.propHooks.selected=p.extend(p.propHooks.selected,{get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}})),p.support.enctype||(p.propFix.enctype="encoding"),p.support.checkOn||p.each(["radio","checkbox"],function(){p.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),p.each(["radio","checkbox"],function(){p.valHooks[this]=p.extend(p.valHooks[this],{set:function(a,b){if(p.isArray(b))return a.checked=p.inArray(p(a).val(),b)>=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j<c.length;j++){k=W.exec(c[j])||[],l=k[1],m=(k[2]||"").split(".").sort(),r=p.event.special[l]||{},l=(f?r.delegateType:r.bindType)||l,r=p.event.special[l]||{},n=p.extend({type:l,origType:k[1],data:e,handler:d,guid:d.guid,selector:f,needsContext:f&&p.expr.match.needsContext.test(f),namespace:m.join(".")},o),q=i[l];if(!q){q=i[l]=[],q.delegateCount=0;if(!r.setup||r.setup.call(a,e,m,h)===!1)a.addEventListener?a.addEventListener(l,h,!1):a.attachEvent&&a.attachEvent("on"+l,h)}r.add&&(r.add.call(a,n),n.handler.guid||(n.handler.guid=d.guid)),f?q.splice(q.delegateCount++,0,n):q.push(n),p.event.global[l]=!0}a=null},global:{},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,q,r=p.hasData(a)&&p._data(a);if(!r||!(m=r.events))return;b=p.trim(_(b||"")).split(" ");for(f=0;f<b.length;f++){g=W.exec(b[f])||[],h=i=g[1],j=g[2];if(!h){for(h in m)p.event.remove(a,h+b[f],c,d,!0);continue}n=p.event.special[h]||{},h=(d?n.delegateType:n.bindType)||h,o=m[h]||[],k=o.length,j=j?new RegExp("(^|\\.)"+j.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(l=0;l<o.length;l++)q=o[l],(e||i===q.origType)&&(!c||c.guid===q.guid)&&(!j||j.test(q.namespace))&&(!d||d===q.selector||d==="**"&&q.selector)&&(o.splice(l--,1),q.selector&&o.delegateCount--,n.remove&&n.remove.call(a,q));o.length===0&&k!==o.length&&((!n.teardown||n.teardown.call(a,j,r.handle)===!1)&&p.removeEvent(a,h,r.handle),delete m[h])}p.isEmptyObject(m)&&(delete r.handle,p.removeData(a,"events",!0))},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,f,g){if(!f||f.nodeType!==3&&f.nodeType!==8){var h,i,j,k,l,m,n,o,q,r,s=c.type||c,t=[];if($.test(s+p.event.triggered))return;s.indexOf("!")>=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j<q.length&&!c.isPropagationStopped();j++)k=q[j][0],c.type=q[j][1],o=(p._data(k,"events")||{})[c.type]&&p._data(k,"handle"),o&&o.apply(k,d),o=m&&k[m],o&&p.acceptData(k)&&o.apply&&o.apply(k,d)===!1&&c.preventDefault();return c.type=s,!g&&!c.isDefaultPrevented()&&(!n._default||n._default.apply(f.ownerDocument,d)===!1)&&(s!=="click"||!p.nodeName(f,"a"))&&p.acceptData(f)&&m&&f[s]&&(s!=="focus"&&s!=="blur"||c.target.offsetWidth!==0)&&!p.isWindow(f)&&(l=f[m],l&&(f[m]=null),p.event.triggered=s,f[s](),p.event.triggered=b,l&&(f[m]=l)),c.result}return},dispatch:function(c){c=p.event.fix(c||a.event);var d,e,f,g,h,i,j,l,m,n,o=(p._data(this,"events")||{})[c.type]||[],q=o.delegateCount,r=k.call(arguments),s=!c.exclusive&&!c.namespace,t=p.event.special[c.type]||{},u=[];r[0]=c,c.delegateTarget=this;if(t.preDispatch&&t.preDispatch.call(this,c)===!1)return;if(q&&(!c.button||c.type!=="click"))for(f=c.target;f!=this;f=f.parentNode||this)if(f.disabled!==!0||c.type!=="click"){h={},j=[];for(d=0;d<q;d++)l=o[d],m=l.selector,h[m]===b&&(h[m]=l.needsContext?p(m,this).index(f)>=0:p.find(m,this,null,[f]).length),h[m]&&j.push(l);j.length&&u.push({elem:f,matches:j})}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d<u.length&&!c.isPropagationStopped();d++){i=u[d],c.currentTarget=i.elem;for(e=0;e<i.matches.length&&!c.isImmediatePropagationStopped();e++){l=i.matches[e];if(s||!c.namespace&&!l.namespace||c.namespace_re&&c.namespace_re.test(l.namespace))c.data=l.data,c.handleObj=l,g=((p.event.special[l.origType]||{}).handle||l.handler).apply(i.elem,r),g!==b&&(c.result=g,g===!1&&(c.preventDefault(),c.stopPropagation()))}}return t.postDispatch&&t.postDispatch.call(this,c),c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,c){var d,f,g,h=c.button,i=c.fromElement;return a.pageX==null&&c.clientX!=null&&(d=a.target.ownerDocument||e,f=d.documentElement,g=d.body,a.pageX=c.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=c.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?c.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0),a}},fix:function(a){if(a[p.expando])return a;var b,c,d=a,f=p.event.fixHooks[a.type]||{},g=f.props?this.props.concat(f.props):this.props;a=p.Event(d);for(b=g.length;b;)c=g[--b],a[c]=d[c];return a.target||(a.target=d.srcElement||e),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,f.filter?f.filter(a,d):a},special:{load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){p.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=p.extend(new p.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?p.event.trigger(e,null,b):p.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},p.event.handle=p.event.dispatch,p.removeEvent=e.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]=="undefined"&&(a[d]=null),a.detachEvent(d,c))},p.Event=function(a,b){if(this instanceof p.Event)a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?bb:ba):this.type=a,b&&p.extend(this,b),this.timeStamp=a&&a.timeStamp||p.now(),this[p.expando]=!0;else return new p.Event(a,b)},p.Event.prototype={preventDefault:function(){this.isDefaultPrevented=bb;var a=this.originalEvent;if(!a)return;a.preventDefault?a.preventDefault():a.returnValue=!1},stopPropagation:function(){this.isPropagationStopped=bb;var a=this.originalEvent;if(!a)return;a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=bb,this.stopPropagation()},isDefaultPrevented:ba,isPropagationStopped:ba,isImmediatePropagationStopped:ba},p.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){p.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj,g=f.selector;if(!e||e!==d&&!p.contains(d,e))a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b;return c}}}),p.support.submitBubbles||(p.event.special.submit={setup:function(){if(p.nodeName(this,"form"))return!1;p.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=p.nodeName(c,"input")||p.nodeName(c,"button")?c.form:b;d&&!p._data(d,"_submit_attached")&&(p.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),p._data(d,"_submit_attached",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&p.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(p.nodeName(this,"form"))return!1;p.event.remove(this,"._submit")}}),p.support.changeBubbles||(p.event.special.change={setup:function(){if(V.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")p.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),p.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),p.event.simulate("change",this,a,!0)});return!1}p.event.add(this,"beforeactivate._change",function(a){var b=a.target;V.test(b.nodeName)&&!p._data(b,"_change_attached")&&(p.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&p.event.simulate("change",this.parentNode,a,!0)}),p._data(b,"_change_attached",!0))})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){return p.event.remove(this,"._change"),!V.test(this.nodeName)}}),p.support.focusinBubbles||p.each({focus:"focusin",blur:"focusout"},function(a,b){var c=0,d=function(a){p.event.simulate(b,a.target,p.event.fix(a),!0)};p.event.special[b]={setup:function(){c++===0&&e.addEventListener(a,d,!0)},teardown:function(){--c===0&&e.removeEventListener(a,d,!0)}}}),p.fn.extend({on:function(a,c,d,e,f){var g,h;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(h in a)this.on(h,c,d,a[h],f);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=ba;else if(!e)return this;return f===1&&(g=e,e=function(a){return p().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=p.guid++)),this.each(function(){p.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,p(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if(typeof a=="object"){for(f in a)this.off(f,c,a[f]);return this}if(c===!1||typeof c=="function")d=c,c=b;return d===!1&&(d=ba),this.each(function(){p.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){return p(this.context).on(a,this.selector,b,c),this},die:function(a,b){return p(this.context).off(a,this.selector||"**",b),this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length===1?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){p.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return p.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||p.guid++,d=0,e=function(c){var e=(p._data(this,"lastToggle"+a.guid)||0)%d;return p._data(this,"lastToggle"+a.guid,e+1),c.preventDefault(),b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){p.fn[b]=function(a,c){return c==null&&(c=a,a=null),arguments.length>0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bc(a,b,c,d){c=c||[],b=b||r;var e,f,i,j,k=b.nodeType;if(!a||typeof a!="string")return c;if(k!==1&&k!==9)return[];i=g(b);if(!i&&!d)if(e=P.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&h(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return w.apply(c,x.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&_&&b.getElementsByClassName)return w.apply(c,x.call(b.getElementsByClassName(j),0)),c}return bp(a.replace(L,"$1"),b,c,d,i)}function bd(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function be(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bf(a){return z(function(b){return b=+b,z(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function bg(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bh(a,b){var c,d,f,g,h,i,j,k=C[o][a];if(k)return b?0:k.slice(0);h=a,i=[],j=e.preFilter;while(h){if(!c||(d=M.exec(h)))d&&(h=h.slice(d[0].length)),i.push(f=[]);c=!1;if(d=N.exec(h))f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=d[0].replace(L," ");for(g in e.filter)(d=W[g].exec(h))&&(!j[g]||(d=j[g](d,r,!0)))&&(f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=g,c.matches=d);if(!c)break}return b?h.length:h?bc.error(a):C(a,i).slice(0)}function bi(a,b,d){var e=b.dir,f=d&&b.dir==="parentNode",g=u++;return b.first?function(b,c,d){while(b=b[e])if(f||b.nodeType===1)return a(b,c,d)}:function(b,d,h){if(!h){var i,j=t+" "+g+" ",k=j+c;while(b=b[e])if(f||b.nodeType===1){if((i=b[o])===k)return b.sizset;if(typeof i=="string"&&i.indexOf(j)===0){if(b.sizset)return b}else{b[o]=k;if(a(b,d,h))return b.sizset=!0,b;b.sizset=!1}}}else while(b=b[e])if(f||b.nodeType===1)if(a(b,d,h))return b}}function bj(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function bk(a,b,c,d,e){var f,g=[],h=0,i=a.length,j=b!=null;for(;h<i;h++)if(f=a[h])if(!c||c(f,d,e))g.push(f),j&&b.push(h);return g}function bl(a,b,c,d,e,f){return d&&!d[o]&&(d=bl(d)),e&&!e[o]&&(e=bl(e,f)),z(function(f,g,h,i){if(f&&e)return;var j,k,l,m=[],n=[],o=g.length,p=f||bo(b||"*",h.nodeType?[h]:h,[],f),q=a&&(f||!b)?bk(p,m,a,h,i):p,r=c?e||(f?a:o||d)?[]:g:q;c&&c(q,r,h,i);if(d){l=bk(r,n),d(l,[],h,i),j=l.length;while(j--)if(k=l[j])r[n[j]]=!(q[n[j]]=k)}if(f){j=a&&r.length;while(j--)if(k=r[j])f[m[j]]=!(g[m[j]]=k)}else r=bk(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):w.apply(g,r)})}function bm(a){var b,c,d,f=a.length,g=e.relative[a[0].type],h=g||e.relative[" "],i=g?1:0,j=bi(function(a){return a===b},h,!0),k=bi(function(a){return y.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==l)||((b=c).nodeType?j(a,c,d):k(a,c,d))}];for(;i<f;i++)if(c=e.relative[a[i].type])m=[bi(bj(m),c)];else{c=e.filter[a[i].type].apply(null,a[i].matches);if(c[o]){d=++i;for(;d<f;d++)if(e.relative[a[d].type])break;return bl(i>1&&bj(m),i>1&&a.slice(0,i-1).join("").replace(L,"$1"),c,i<d&&bm(a.slice(i,d)),d<f&&bm(a=a.slice(d)),d<f&&a.join(""))}m.push(c)}return bj(m)}function bn(a,b){var d=b.length>0,f=a.length>0,g=function(h,i,j,k,m){var n,o,p,q=[],s=0,u="0",x=h&&[],y=m!=null,z=l,A=h||f&&e.find.TAG("*",m&&i.parentNode||i),B=t+=z==null?1:Math.E;y&&(l=i!==r&&i,c=g.el);for(;(n=A[u])!=null;u++){if(f&&n){for(o=0;p=a[o];o++)if(p(n,i,j)){k.push(n);break}y&&(t=B,c=++g.el)}d&&((n=!p&&n)&&s--,h&&x.push(n))}s+=u;if(d&&u!==s){for(o=0;p=b[o];o++)p(x,q,i,j);if(h){if(s>0)while(u--)!x[u]&&!q[u]&&(q[u]=v.call(k));q=bk(q)}w.apply(k,q),y&&!h&&q.length>0&&s+b.length>1&&bc.uniqueSort(k)}return y&&(t=B,l=z),x};return g.el=0,d?z(g):g}function bo(a,b,c,d){var e=0,f=b.length;for(;e<f;e++)bc(a,b[e],c,d);return c}function bp(a,b,c,d,f){var g,h,j,k,l,m=bh(a),n=m.length;if(!d&&m.length===1){h=m[0]=m[0].slice(0);if(h.length>2&&(j=h[0]).type==="ID"&&b.nodeType===9&&!f&&e.relative[h[1].type]){b=e.find.ID(j.matches[0].replace(V,""),b,f)[0];if(!b)return c;a=a.slice(h.shift().length)}for(g=W.POS.test(a)?-1:h.length-1;g>=0;g--){j=h[g];if(e.relative[k=j.type])break;if(l=e.find[k])if(d=l(j.matches[0].replace(V,""),R.test(h[0].type)&&b.parentNode||b,f)){h.splice(g,1),a=d.length&&h.join("");if(!a)return w.apply(c,x.call(d,0)),c;break}}}return i(a,m)(d,b,f,c,R.test(a)),c}function bq(){}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=String,r=a.document,s=r.documentElement,t=0,u=0,v=[].pop,w=[].push,x=[].slice,y=[].indexOf||function(a){var b=0,c=this.length;for(;b<c;b++)if(this[b]===a)return b;return-1},z=function(a,b){return a[o]=b==null||b,a},A=function(){var a={},b=[];return z(function(c,d){return b.push(c)>e.cacheLength&&delete a[b.shift()],a[c]=d},a)},B=A(),C=A(),D=A(),E="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",G=F.replace("w","w#"),H="([*^$|!~]?=)",I="\\["+E+"*("+F+")"+E+"*(?:"+H+E+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+G+")|)|)"+E+"*\\]",J=":("+F+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+I+")|[^:]|\\\\.)*|.*))\\)|)",K=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+E+"*((?:-\\d)?\\d*)"+E+"*\\)|)(?=[^-]|$)",L=new RegExp("^"+E+"+|((?:^|[^\\\\])(?:\\\\.)*)"+E+"+$","g"),M=new RegExp("^"+E+"*,"+E+"*"),N=new RegExp("^"+E+"*([\\x20\\t\\r\\n\\f>+~])"+E+"*"),O=new RegExp(J),P=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,Q=/^:not/,R=/[\x20\t\r\n\f]*[+~]/,S=/:not\($/,T=/h\d/i,U=/input|select|textarea|button/i,V=/\\(?!\\)/g,W={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),NAME:new RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+J),POS:new RegExp(K,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+E+"*(even|odd|(([+-]|)(\\d*)n|)"+E+"*(?:([+-]|)"+E+"*(\\d+)|))"+E+"*\\)|)","i"),needsContext:new RegExp("^"+E+"*[>+~]|"+K,"i")},X=function(a){var b=r.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},Y=X(function(a){return a.appendChild(r.createComment("")),!a.getElementsByTagName("*").length}),Z=X(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),$=X(function(a){a.innerHTML="<select></select>";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),_=X(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),ba=X(function(a){a.id=o+0,a.innerHTML="<a name='"+o+"'></a><div name='"+o+"'></div>",s.insertBefore(a,s.firstChild);var b=r.getElementsByName&&r.getElementsByName(o).length===2+r.getElementsByName(o+0).length;return d=!r.getElementById(o),s.removeChild(a),b});try{x.call(s.childNodes,0)[0].nodeType}catch(bb){x=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}bc.matches=function(a,b){return bc(a,null,null,b)},bc.matchesSelector=function(a,b){return bc(b,null,null,[a]).length>0},f=bc.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=f(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=f(b);return c},g=bc.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},h=bc.contains=s.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:s.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc.attr=function(a,b){var c,d=g(a);return d||(b=b.toLowerCase()),(c=e.attrHandle[b])?c(a):d||$?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},e=bc.selectors={cacheLength:50,createPseudo:z,match:W,attrHandle:Z?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:d?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:Y?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:ba&&function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:_&&function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(V,""),a[3]=(a[4]||a[5]||"").replace(V,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||bc.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&bc.error(a[0]),a},PSEUDO:function(a){var b,c;if(W.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(b=a[4])O.test(b)&&(c=bh(b,!0))&&(c=b.indexOf(")",b.length-c)-b.length)&&(b=b.slice(0,c),a[0]=a[0].slice(0,c)),a[2]=b;return a.slice(0,3)}},filter:{ID:d?function(a){return a=a.replace(V,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(V,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(V,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=B[o][a];return b||(b=B(a,new RegExp("(^|"+E+")"+a+"("+E+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return function(d,e){var f=bc.attr(d,a);return f==null?b==="!=":b?(f+="",b==="="?f===c:b==="!="?f!==c:b==="^="?c&&f.indexOf(c)===0:b==="*="?c&&f.indexOf(c)>-1:b==="$="?c&&f.substr(f.length-c.length)===c:b==="~="?(" "+f+" ").indexOf(c)>-1:b==="|="?f===c||f.substr(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d){return a==="nth"?function(a){var b,e,f=a.parentNode;if(c===1&&d===0)return!0;if(f){e=0;for(b=f.firstChild;b;b=b.nextSibling)if(b.nodeType===1){e++;if(a===b)break}}return e-=d,e===c||e%c===0&&e/c>=0}:function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b){var c,d=e.pseudos[a]||e.setFilters[a.toLowerCase()]||bc.error("unsupported pseudo: "+a);return d[o]?d(b):d.length>1?(c=[a,a,"",b],e.setFilters.hasOwnProperty(a.toLowerCase())?z(function(a,c){var e,f=d(a,b),g=f.length;while(g--)e=y.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:z(function(a){var b=[],c=[],d=i(a.replace(L,"$1"));return d[o]?z(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)if(f=g[h])a[h]=!(b[h]=f)}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:z(function(a){return function(b){return bc(a,b).length>0}}),contains:z(function(a){return function(b){return(b.textContent||b.innerText||f(b)).indexOf(a)>-1}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!e.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},header:function(a){return T.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:bd("radio"),checkbox:bd("checkbox"),file:bd("file"),password:bd("password"),image:bd("image"),submit:be("submit"),reset:be("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return U.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement},first:bf(function(a,b,c){return[0]}),last:bf(function(a,b,c){return[b-1]}),eq:bf(function(a,b,c){return[c<0?c+b:c]}),even:bf(function(a,b,c){for(var d=0;d<b;d+=2)a.push(d);return a}),odd:bf(function(a,b,c){for(var d=1;d<b;d+=2)a.push(d);return a}),lt:bf(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:bf(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},j=s.compareDocumentPosition?function(a,b){return a===b?(k=!0,0):(!a.compareDocumentPosition||!b.compareDocumentPosition?a.compareDocumentPosition:a.compareDocumentPosition(b)&4)?-1:1}:function(a,b){if(a===b)return k=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,h=b.parentNode,i=g;if(g===h)return bg(a,b);if(!g)return-1;if(!h)return 1;while(i)e.unshift(i),i=i.parentNode;i=h;while(i)f.unshift(i),i=i.parentNode;c=e.length,d=f.length;for(var j=0;j<c&&j<d;j++)if(e[j]!==f[j])return bg(e[j],f[j]);return j===c?bg(a,f[j],-1):bg(e[j],b,1)},[0,0].sort(j),m=!k,bc.uniqueSort=function(a){var b,c=1;k=m,a.sort(j);if(k)for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1);return a},bc.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},i=bc.compile=function(a,b){var c,d=[],e=[],f=D[o][a];if(!f){b||(b=bh(a)),c=b.length;while(c--)f=bm(b[c]),f[o]?d.push(f):e.push(f);f=D(a,bn(e,d))}return f},r.querySelectorAll&&function(){var a,b=bp,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[":focus"],f=[":active",":focus"],h=s.matchesSelector||s.mozMatchesSelector||s.webkitMatchesSelector||s.oMatchesSelector||s.msMatchesSelector;X(function(a){a.innerHTML="<select><option selected=''></option></select>",a.querySelectorAll("[selected]").length||e.push("\\["+E+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),X(function(a){a.innerHTML="<p test=''></p>",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+E+"*(?:\"\"|'')"),a.innerHTML="<input type='hidden'/>",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=new RegExp(e.join("|")),bp=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a))){var i,j,k=!0,l=o,m=d,n=d.nodeType===9&&a;if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){i=bh(a),(k=d.getAttribute("id"))?l=k.replace(c,"\\$&"):d.setAttribute("id",l),l="[id='"+l+"'] ",j=i.length;while(j--)i[j]=l+i[j].join("");m=R.test(a)&&d.parentNode||d,n=i.join(",")}if(n)try{return w.apply(f,x.call(m.querySelectorAll(n),0)),f}catch(p){}finally{k||d.removeAttribute("id")}}return b(a,d,f,g,h)},h&&(X(function(b){a=h.call(b,"div");try{h.call(b,"[test!='']:sizzle"),f.push("!=",J)}catch(c){}}),f=new RegExp(f.join("|")),bc.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!g(b)&&!f.test(c)&&(!e||!e.test(c)))try{var i=h.call(b,c);if(i||a||b.document&&b.document.nodeType!==11)return i}catch(j){}return bc(c,null,null,[b]).length>0})}(),e.pseudos.nth=e.pseudos.eq,e.filters=bq.prototype=e.pseudos,e.setFilters=new bq,bc.attr=p.attr,p.find=bc,p.expr=bc.selectors,p.expr[":"]=p.expr.pseudos,p.unique=bc.uniqueSort,p.text=bc.getText,p.isXMLDoc=bc.isXML,p.contains=bc.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b<c;b++)if(p.contains(h[b],this))return!0});g=this.pushStack("","find",a);for(b=0,c=this.length;b<c;b++){d=g.length,p.find(a,this[b],g);if(b>0)for(e=d;e<g.length;e++)for(f=0;f<d;f++)if(g[f]===g[e]){g.splice(e--,1);break}}return g},has:function(a){var b,c=p(a,this),d=c.length;return this.filter(function(){for(b=0;b<d;b++)if(p.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(bj(this,a,!1),"not",a)},filter:function(a){return this.pushStack(bj(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?bf.test(a)?p(a,this.context).index(this[0])>=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d<e;d++){c=this[d];while(c&&c.ownerDocument&&c!==b&&c.nodeType!==11){if(g?g.index(c)>-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/<tbody/i,br=/<|&#?\w+;/,bs=/<(?:script|style|link)/i,bt=/<(?:script|object|embed|option|style)/i,bu=new RegExp("<(?:"+bl+")[\\s/>]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,bz={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X<div>","</div>"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return bh(this[0])?this.length?this.pushStack(p(p.isFunction(a)?a():a),"replaceWith",a):this:p.isFunction(a)?this.each(function(b){var c=p(this),d=c.html();c.replaceWith(a.call(this,b,d))}):(typeof a!="string"&&(a=p(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;p(this).remove(),b?p(b).before(a):p(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],l=this.length;if(!p.support.checkClone&&l>1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i<l;i++)d.call(c&&p.nodeName(this[i],"table")?bC(this[i],"tbody"):this[i],i===h?g:p.clone(g,!0,!0))}g=f=null,k.length&&p.each(k,function(a,b){b.src?p.ajax?p.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):p.error("no ajax"):p.globalEval((b.text||b.textContent||b.innerHTML||"").replace(by,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),p.buildFragment=function(a,c,d){var f,g,h,i=a[0];return c=c||e,c=!c.nodeType&&c[0]||c,c=c.ownerDocument||c,a.length===1&&typeof i=="string"&&i.length<512&&c===e&&i.charAt(0)==="<"&&!bt.test(i)&&(p.support.checkClone||!bw.test(i))&&(p.support.html5Clone||!bu.test(i))&&(g=!0,f=p.fragments[i],h=f!==b),f||(f=c.createDocumentFragment(),p.clean(a,c,f,d),g&&(p.fragments[i]=h&&f)),{fragment:f,cacheable:g}},p.fragments={},p.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){p.fn[a]=function(c){var d,e=0,f=[],g=p(c),h=g.length,i=this.length===1&&this[0].parentNode;if((i==null||i&&i.nodeType===11&&i.childNodes.length===1)&&h===1)return g[b](this[0]),this;for(;e<h;e++)d=(e>0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1></$2>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]==="<table>"&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,cs=/([?&])_=[^&]*/,ct=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,cu=p.fn.load,cv={},cw={},cx=["*/"]+["*"];try{ck=f.href}catch(cy){ck=e.createElement("a"),ck.href="",ck=ck.href}cj=ct.exec(ck.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&cu)return cu.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):c&&typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("<div>").append(a.replace(cr,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cB(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cB(a,b),a},ajaxSettings:{url:ck,isLocal:cn.test(cj[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cx},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cz(cv),ajaxTransport:cz(cw),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cC(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cD(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=(c||y)+"",k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cm.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(cl,"").replace(cp,cj[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=ct.exec(l.url.toLowerCase())||!1,l.crossDomain=i&&i.join(":")+(i[3]?"":i[1]==="http:"?80:443)!==cj.join(":")+(cj[3]?"":cj[1]==="http:"?80:443)),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cA(cv,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!co.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cq.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cs,"$1_="+z);l.url=A+(A===l.url?(cq.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cx+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cA(cw,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cE=[],cF=/\?/,cG=/(=)\?(?=&|$)|\?\?/,cH=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cE.pop()||p.expando+"_"+cH++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cG.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cG.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cG,"$1"+f):m?c.data=i.replace(cG,"$1"+f):k&&(c.url+=(cF.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cE.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cI,cJ=a.ActiveXObject?function(){for(var a in cI)cI[a](0,1)}:!1,cK=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cL()||cM()}:cL,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cJ&&delete cI[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cK,cJ&&(cI||(cI={},p(a).unload(cJ)),cI[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cN,cO,cP=/^(?:toggle|show|hide)$/,cQ=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cR=/queueHooks$/,cS=[cY],cT={"*":[function(a,b){var c,d,e=this.createTween(a,b),f=cQ.exec(b),g=e.cur(),h=+g||0,i=1,j=20;if(f){c=+f[2],d=f[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&h){h=p.css(e.elem,a,!0)||c||1;do i=i||".5",h=h/i,p.style(e.elem,a,h+d);while(i!==(i=e.cur()/g)&&i!==1&&--j)}e.unit=d,e.start=h,e.end=f[1]?h+(f[1]+1)*c:c}return e}]};p.Animation=p.extend(cW,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d<e;d++)c=a[d],cT[c]=cT[c]||[],cT[c].unshift(b)},prefilter:function(a,b){b?cS.unshift(a):cS.push(a)}}),p.Tween=cZ,cZ.prototype={constructor:cZ,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(p.cssNumber[c]?"":"px")},cur:function(){var a=cZ.propHooks[this.prop];return a&&a.get?a.get(this):cZ.propHooks._default.get(this)},run:function(a){var b,c=cZ.propHooks[this.prop];return this.options.duration?this.pos=b=p.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):cZ.propHooks._default.set(this),this}},cZ.prototype.init.prototype=cZ.prototype,cZ.propHooks={_default:{get:function(a){var b;return a.elem[a.prop]==null||!!a.elem.style&&a.elem.style[a.prop]!=null?(b=p.css(a.elem,a.prop,!1,""),!b||b==="auto"?0:b):a.elem[a.prop]},set:function(a){p.fx.step[a.prop]?p.fx.step[a.prop](a):a.elem.style&&(a.elem.style[p.cssProps[a.prop]]!=null||p.cssHooks[a.prop])?p.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},cZ.propHooks.scrollTop=cZ.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},p.each(["toggle","show","hide"],function(a,b){var c=p.fn[b];p.fn[b]=function(d,e,f){return d==null||typeof d=="boolean"||!a&&p.isFunction(d)&&p.isFunction(e)?c.apply(this,arguments):this.animate(c$(b,!0),d,e,f)}}),p.fn.extend({fadeTo:function(a,b,c,d){return this.filter(bZ).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=p.isEmptyObject(a),f=p.speed(b,c,d),g=function(){var b=cW(this,p.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=a!=null&&a+"queueHooks",f=p.timers,g=p._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&cR.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(a==null||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&p.dequeue(this,a)})}}),p.each({slideDown:c$("show"),slideUp:c$("hide"),slideToggle:c$("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){p.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),p.speed=function(a,b,c){var d=a&&typeof a=="object"?p.extend({},a):{complete:c||!c&&b||p.isFunction(a)&&a,duration:a,easing:c&&b||b&&!p.isFunction(b)&&b};d.duration=p.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in p.fx.speeds?p.fx.speeds[d.duration]:p.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";return d.old=d.complete,d.complete=function(){p.isFunction(d.old)&&d.old.call(this),d.queue&&p.dequeue(this,d.queue)},d},p.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},p.timers=[],p.fx=cZ.prototype.init,p.fx.tick=function(){var a,b=p.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||p.fx.stop()},p.fx.timer=function(a){a()&&p.timers.push(a)&&!cO&&(cO=setInterval(p.fx.tick,p.fx.interval))},p.fx.interval=13,p.fx.stop=function(){clearInterval(cO),cO=null},p.fx.speeds={slow:600,fast:200,_default:400},p.fx.step={},p.expr&&p.expr.filters&&(p.expr.filters.animated=function(a){return p.grep(p.timers,function(b){return a===b.elem}).length});var c_=/^(?:body|html)$/i;p.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){p.offset.setOffset(this,a,b)});var c,d,e,f,g,h,i,j={top:0,left:0},k=this[0],l=k&&k.ownerDocument;if(!l)return;return(d=l.body)===k?p.offset.bodyOffset(k):(c=l.documentElement,p.contains(c,k)?(typeof k.getBoundingClientRect!="undefined"&&(j=k.getBoundingClientRect()),e=da(l),f=c.clientTop||d.clientTop||0,g=c.clientLeft||d.clientLeft||0,h=e.pageYOffset||c.scrollTop,i=e.pageXOffset||c.scrollLeft,{top:j.top+h-f,left:j.left+i-g}):j)},p.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;return p.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(p.css(a,"marginTop"))||0,c+=parseFloat(p.css(a,"marginLeft"))||0),{top:b,left:c}},setOffset:function(a,b,c){var d=p.css(a,"position");d==="static"&&(a.style.position="relative");var e=p(a),f=e.offset(),g=p.css(a,"top"),h=p.css(a,"left"),i=(d==="absolute"||d==="fixed")&&p.inArray("auto",[g,h])>-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c_.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c_.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=da(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g,null)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window);
--- a/js/vendor/jquery-1.8.0.min.js
+++ b/js/vendor/jquery-1.8.0.min.js
@@ -1,3 +1,2333 @@
/*! jQuery v@1.8.0 jquery.com | jquery.org/license */
-(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d<e;d++)p.event.add(b,c,h[c][d])}g.data&&(g.data=p.extend({},g.data))}function bE(a,b){var c;if(b.nodeType!==1)return;b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?(b.parentNode&&(b.outerHTML=a.outerHTML),p.support.html5Clone&&a.innerHTML&&!p.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):c==="input"&&bv.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text),b.removeAttribute(p.expando)}function bF(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bG(a){bv.test(a.type)&&(a.defaultChecked=a.checked)}function bX(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=bV.length;while(e--){b=bV[e]+c;if(b in a)return b}return d}function bY(a,b){return a=b||a,p.css(a,"display")==="none"||!p.contains(a.ownerDocument,a)}function bZ(a,b){var c,d,e=[],f=0,g=a.length;for(;f<g;f++){c=a[f];if(!c.style)continue;e[f]=p._data(c,"olddisplay"),b?(!e[f]&&c.style.display==="none"&&(c.style.display=""),c.style.display===""&&bY(c)&&(e[f]=p._data(c,"olddisplay",cb(c.nodeName)))):(d=bH(c,"display"),!e[f]&&d!=="none"&&p._data(c,"olddisplay",d))}for(f=0;f<g;f++){c=a[f];if(!c.style)continue;if(!b||c.style.display==="none"||c.style.display==="")c.style.display=b?e[f]||"":"none"}return a}function b$(a,b,c){var d=bO.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function b_(a,b,c,d){var e=c===(d?"border":"content")?4:b==="width"?1:0,f=0;for(;e<4;e+=2)c==="margin"&&(f+=p.css(a,c+bU[e],!0)),d?(c==="content"&&(f-=parseFloat(bH(a,"padding"+bU[e]))||0),c!=="margin"&&(f-=parseFloat(bH(a,"border"+bU[e]+"Width"))||0)):(f+=parseFloat(bH(a,"padding"+bU[e]))||0,c!=="padding"&&(f+=parseFloat(bH(a,"border"+bU[e]+"Width"))||0));return f}function ca(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=!0,f=p.support.boxSizing&&p.css(a,"boxSizing")==="border-box";if(d<=0){d=bH(a,b);if(d<0||d==null)d=a.style[b];if(bP.test(d))return d;e=f&&(p.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+b_(a,b,c||(f?"border":"content"),e)+"px"}function cb(a){if(bR[a])return bR[a];var b=p("<"+a+">").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write("<!doctype html><html><body>"),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bR[a]=c,c}function ch(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||cd.test(a)?d(a,e):ch(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ch(a+"["+e+"]",b[e],c,d);else d(a,b)}function cy(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h<i;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function cz(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h,i=a[f],j=0,k=i?i.length:0,l=a===cu;for(;j<k&&(l||!h);j++)h=i[j](c,d,e),typeof h=="string"&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=cz(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=cz(a,c,d,e,"*",g)),h}function cA(a,c){var d,e,f=p.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&p.extend(!0,a,e)}function cB(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);while(j[0]==="*")j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}if(g)return g!==j[0]&&j.unshift(g),d[g]}function cC(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;a.dataFilter&&(b=a.dataFilter(b,a.dataType));if(g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if(e!=="*"){if(h!=="*"&&h!==e){c=i[h+" "+e]||i["* "+e];if(!c)for(d in i){f=d.split(" ");if(f[1]===e){c=i[h+" "+f[0]]||i["* "+f[0]];if(c){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}}}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function cK(){try{return new a.XMLHttpRequest}catch(b){}}function cL(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function cT(){return setTimeout(function(){cM=b},0),cM=p.now()}function cU(a,b){p.each(b,function(b,c){var d=(cS[b]||[]).concat(cS["*"]),e=0,f=d.length;for(;e<f;e++)if(d[e].call(a,b,c))return})}function cV(a,b,c){var d,e=0,f=0,g=cR.length,h=p.Deferred().always(function(){delete i.elem}),i=function(){var b=cM||cT(),c=Math.max(0,j.startTime+j.duration-b),d=1-(c/j.duration||0),e=0,f=j.tweens.length;for(;e<f;e++)j.tweens[e].run(d);return h.notifyWith(a,[j,d,c]),d<1&&f?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:p.extend({},b),opts:p.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:cM||cT(),duration:c.duration,tweens:[],createTween:function(b,c,d){var e=p.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;for(;c<d;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;cW(k,j.opts.specialEasing);for(;e<g;e++){d=cR[e].call(j,a,k,j.opts);if(d)return d}return cU(j,k),p.isFunction(j.opts.start)&&j.opts.start.call(a,j),p.fx.timer(p.extend(i,{anim:j,queue:j.opts.queue,elem:a})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function cW(a,b){var c,d,e,f,g;for(c in a){d=p.camelCase(c),e=b[d],f=a[c],p.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=p.cssHooks[d];if(g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}}function cX(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],q=a.nodeType&&bY(a);c.queue||(j=p._queueHooks(a,"fx"),j.unqueued==null&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,p.queue(a,"fx").length||j.empty.fire()})})),a.nodeType===1&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],p.css(a,"display")==="inline"&&p.css(a,"float")==="none"&&(!p.support.inlineBlockNeedsLayout||cb(a.nodeName)==="inline"?m.display="inline-block":m.zoom=1)),c.overflow&&(m.overflow="hidden",p.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b){f=b[d];if(cO.exec(f)){delete b[d];if(f===(q?"hide":"show"))continue;o.push(d)}}g=o.length;if(g){h=p._data(a,"fxshow")||p._data(a,"fxshow",{}),q?p(a).show():l.done(function(){p(a).hide()}),l.done(function(){var b;p.removeData(a,"fxshow",!0);for(b in n)p.style(a,b,n[b])});for(d=0;d<g;d++)e=o[d],i=l.createTween(e,q?h[e]:0),n[e]=h[e]||p.style(a,e),e in h||(h[e]=i.start,q&&(i.end=i.start,i.start=e==="width"||e==="height"?1:0))}}function cY(a,b,c,d,e){return new cY.prototype.init(a,b,c,d,e)}function cZ(a,b){var c,d={height:a},e=0;for(;e<4;e+=2-b)c=bU[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function c_(a){return p.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}var c,d,e=a.document,f=a.location,g=a.navigator,h=a.jQuery,i=a.$,j=Array.prototype.push,k=Array.prototype.slice,l=Array.prototype.indexOf,m=Object.prototype.toString,n=Object.prototype.hasOwnProperty,o=String.prototype.trim,p=function(a,b){return new p.fn.init(a,b,c)},q=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,r=/\S/,s=/\s+/,t=r.test(" ")?/^[\s\xA0]+|[\s\xA0]+$/g:/^\s+|\s+$/g,u=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i<j;i++)if((a=arguments[i])!=null)for(c in a){d=h[c],e=a[c];if(h===e)continue;k&&e&&(p.isPlainObject(e)||(f=p.isArray(e)))?(f?(f=!1,g=d&&p.isArray(d)?d:[]):g=d&&p.isPlainObject(d)?d:{},h[c]=p.extend(k,g,e)):e!==b&&(h[c]=e)}return h},p.extend({noConflict:function(b){return a.$===p&&(a.$=i),b&&a.jQuery===p&&(a.jQuery=h),p},isReady:!1,readyWait:1,holdReady:function(a){a?p.readyWait++:p.ready(!0)},ready:function(a){if(a===!0?--p.readyWait:p.isReady)return;if(!e.body)return setTimeout(p.ready,1);p.isReady=!0;if(a!==!0&&--p.readyWait>0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f<g;)if(c.apply(a[f++],d)===!1)break}else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;f<g;)if(c.call(a[f],f,a[f++])===!1)break;return a},trim:o?function(a){return a==null?"":o.call(a)}:function(a){return a==null?"":a.toString().replace(t,"")},makeArray:function(a,b){var c,d=b||[];return a!=null&&(c=p.type(a),a.length==null||c==="string"||c==="function"||c==="regexp"||p.isWindow(a)?j.call(d,a):p.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(l)return l.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if(typeof d=="number")for(;f<d;f++)a[e++]=c[f];else while(c[f]!==b)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;c=!!c;for(;f<g;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof p||i!==b&&typeof i=="number"&&(i>0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h<i;h++)e=c(a[h],h,d),e!=null&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),e!=null&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return typeof c=="string"&&(d=a[c],c=a,a=d),p.isFunction(a)?(e=k.call(arguments,2),f=function(){return a.apply(c,e.concat(k.call(arguments)))},f.guid=a.guid=a.guid||f.guid||p.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=d==null,k=0,l=a.length;if(d&&typeof d=="object"){for(k in d)p.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){i=h===b&&p.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call(p(a),c)}):(c.call(a,e),c=null));if(c)for(;k<l;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),p.ready.promise=function(b){if(!d){d=p.Deferred();if(e.readyState==="complete"||e.readyState!=="loading"&&e.addEventListener)setTimeout(p.ready,1);else if(e.addEventListener)e.addEventListener("DOMContentLoaded",D,!1),a.addEventListener("load",p.ready,!1);else{e.attachEvent("onreadystatechange",D),a.attachEvent("onload",p.ready);var c=!1;try{c=a.frameElement==null&&e.documentElement}catch(f){}c&&c.doScroll&&function g(){if(!p.isReady){try{c.doScroll("left")}catch(a){return setTimeout(g,50)}p.ready()}}()}}return d.promise(b)},p.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){E["[object "+b+"]"]=b.toLowerCase()}),c=p(e);var F={};p.Callbacks=function(a){a=typeof a=="string"?F[a]||G(a):p.extend({},a);var c,d,e,f,g,h,i=[],j=!a.once&&[],k=function(b){c=a.memory&&b,d=!0,h=f||0,f=0,g=i.length,e=!0;for(;i&&h<g;h++)if(i[h].apply(b[0],b[1])===!1&&a.stopOnFalse){c=!1;break}e=!1,i&&(j?j.length&&k(j.shift()):c?i=[]:l.disable())},l={add:function(){if(i){var b=i.length;(function d(b){p.each(b,function(b,c){p.isFunction(c)&&(!a.unique||!l.has(c))?i.push(c):c&&c.length&&d(c)})})(arguments),e?g=i.length:c&&(f=b,k(c))}return this},remove:function(){return i&&p.each(arguments,function(a,b){var c;while((c=p.inArray(b,i,c))>-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return typeof a=="object"?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b<d;b++)c[b]&&p.isFunction(c[b].promise)?c[b].promise().done(g(b,j,c)).fail(f.reject).progress(g(b,i,h)):--e}return e||f.resolveWith(j,c),f.promise()}}),p.support=function(){var b,c,d,f,g,h,i,j,k,l,m,n=e.createElement("div");n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length||!d)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="<div></div>",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/^(?:\{.*\}|\[.*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||++p.uuid:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e<f;e++)delete d[b[e]];if(!(c?K:p.isEmptyObject)(d))return}}if(!c){delete h[i].data;if(!K(h[i]))return}g?p.cleanData([a],!0):p.support.deleteExpando||h!=h.window?delete h[i]:h[i]=null},_data:function(a,b,c){return p.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&p.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),p.fn.extend({data:function(a,c){var d,e,f,g,h,i=this[0],j=0,k=null;if(a===b){if(this.length){k=p.data(i);if(i.nodeType===1&&!p._data(i,"parsedAttrs")){f=i.attributes;for(h=f.length;j<h;j++)g=f[j].name,g.indexOf("data-")===0&&(g=p.camelCase(g.substring(5)),J(i,g,k[g]));p._data(i,"parsedAttrs",!0)}}return k}return typeof a=="object"?this.each(function(){p.data(this,a)}):(d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!",p.access(this,function(c){if(c===b)return k=this.triggerHandler("getData"+e,[d[0]]),k===b&&i&&(k=p.data(i,a),k=J(i,a,k)),k===b&&d[1]?this.data(d[0]):k;d[1]=c,this.each(function(){var b=p(this);b.triggerHandler("setData"+e,d),p.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.shift(),e=p._queueHooks(a,b),f=function(){p.dequeue(a,b)};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),delete e.stop,d.call(a,f,e)),!c.length&&e&&e.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length<d?p.queue(this[0],a):c===b?this:this.each(function(){var b=p.queue(this,a,c);p._queueHooks(this,a),a==="fx"&&b[0]!=="inprogress"&&p.dequeue(this,a)})},dequeue:function(a){return this.each(function(){p.dequeue(this,a)})},delay:function(a,b){return a=p.fx?p.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){var d,e=1,f=p.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};typeof a!="string"&&(c=a,a=b),a=a||"fx";while(h--)(d=p._data(g[h],a+"queueHooks"))&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(c)}});var L,M,N,O=/[\t\r\n]/g,P=/\r/g,Q=/^(?:button|input)$/i,R=/^(?:button|input|object|select|textarea)$/i,S=/^a(?:rea|)$/i,T=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,U=p.support.getSetAttribute;p.fn.extend({attr:function(a,b){return p.access(this,p.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{f=" "+e.className+" ";for(g=0,h=b.length;g<h;g++)~f.indexOf(" "+b[g]+" ")||(f+=b[g]+" ");e.className=p.trim(f)}}}return this},removeClass:function(a){var c,d,e,f,g,h,i;if(p.isFunction(a))return this.each(function(b){p(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(s);for(h=0,i=this.length;h<i;h++){e=this[h];if(e.nodeType===1&&e.className){d=(" "+e.className+" ").replace(O," ");for(f=0,g=c.length;f<g;f++)while(d.indexOf(" "+c[f]+" ")>-1)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(O," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c<d;c++){e=h[c];if(e.selected&&(p.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!p.nodeName(e.parentNode,"optgroup"))){b=p(e).val();if(i)return b;g.push(b)}}return i&&!g.length&&h.length?p(h[f]).val():g},set:function(a,b){var c=p.makeArray(b);return p(a).find("option").each(function(){this.selected=p.inArray(p(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,""+d),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g<d.length;g++)e=d[g],e&&(c=p.propFix[e]||e,f=T.test(e),f||p.attr(a,e,""),a.removeAttribute(U?e:c),f&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(Q.test(a.nodeName)&&a.parentNode)p.error("type property can't be changed");else if(!p.support.radioValue&&b==="radio"&&p.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}},value:{get:function(a,b){return L&&p.nodeName(a,"button")?L.get(a,b):b in a?a.value:null},set:function(a,b,c){if(L&&p.nodeName(a,"button"))return L.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,f,g,h=a.nodeType;if(!a||h===3||h===8||h===2)return;return g=h!==1||!p.isXMLDoc(a),g&&(c=p.propFix[c]||c,f=p.propHooks[c]),d!==b?f&&"set"in f&&(e=f.set(a,d,c))!==b?e:a[c]=d:f&&"get"in f&&(e=f.get(a,c))!==null?e:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):R.test(a.nodeName)||S.test(a.nodeName)&&a.href?0:b}}}}),M={get:function(a,c){var d,e=p.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;return b===!1?p.removeAttr(a,c):(d=p.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase())),c}},U||(N={name:!0,id:!0,coords:!0},L=p.valHooks.button={get:function(a,c){var d;return d=a.getAttributeNode(c),d&&(N[c]?d.value!=="":d.specified)?d.value:b},set:function(a,b,c){var d=a.getAttributeNode(c);return d||(d=e.createAttribute(c),a.setAttributeNode(d)),d.value=b+""}},p.each(["width","height"],function(a,b){p.attrHooks[b]=p.extend(p.attrHooks[b],{set:function(a,c){if(c==="")return a.setAttribute(b,"auto"),c}})}),p.attrHooks.contenteditable={get:L.get,set:function(a,b,c){b===""&&(b="false"),L.set(a,b,c)}}),p.support.hrefNormalized||p.each(["href","src","width","height"],function(a,c){p.attrHooks[c]=p.extend(p.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),p.support.style||(p.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),p.support.optSelected||(p.propHooks.selected=p.extend(p.propHooks.selected,{get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}})),p.support.enctype||(p.propFix.enctype="encoding"),p.support.checkOn||p.each(["radio","checkbox"],function(){p.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),p.each(["radio","checkbox"],function(){p.valHooks[this]=p.extend(p.valHooks[this],{set:function(a,b){if(p.isArray(b))return a.checked=p.inArray(p(a).val(),b)>=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j<c.length;j++){k=W.exec(c[j])||[],l=k[1],m=(k[2]||"").split(".").sort(),r=p.event.special[l]||{},l=(f?r.delegateType:r.bindType)||l,r=p.event.special[l]||{},n=p.extend({type:l,origType:k[1],data:e,handler:d,guid:d.guid,selector:f,namespace:m.join(".")},o),q=i[l];if(!q){q=i[l]=[],q.delegateCount=0;if(!r.setup||r.setup.call(a,e,m,h)===!1)a.addEventListener?a.addEventListener(l,h,!1):a.attachEvent&&a.attachEvent("on"+l,h)}r.add&&(r.add.call(a,n),n.handler.guid||(n.handler.guid=d.guid)),f?q.splice(q.delegateCount++,0,n):q.push(n),p.event.global[l]=!0}a=null},global:{},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,q,r=p.hasData(a)&&p._data(a);if(!r||!(m=r.events))return;b=p.trim(_(b||"")).split(" ");for(f=0;f<b.length;f++){g=W.exec(b[f])||[],h=i=g[1],j=g[2];if(!h){for(h in m)p.event.remove(a,h+b[f],c,d,!0);continue}n=p.event.special[h]||{},h=(d?n.delegateType:n.bindType)||h,o=m[h]||[],k=o.length,j=j?new RegExp("(^|\\.)"+j.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(l=0;l<o.length;l++)q=o[l],(e||i===q.origType)&&(!c||c.guid===q.guid)&&(!j||j.test(q.namespace))&&(!d||d===q.selector||d==="**"&&q.selector)&&(o.splice(l--,1),q.selector&&o.delegateCount--,n.remove&&n.remove.call(a,q));o.length===0&&k!==o.length&&((!n.teardown||n.teardown.call(a,j,r.handle)===!1)&&p.removeEvent(a,h,r.handle),delete m[h])}p.isEmptyObject(m)&&(delete r.handle,p.removeData(a,"events",!0))},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,f,g){if(!f||f.nodeType!==3&&f.nodeType!==8){var h,i,j,k,l,m,n,o,q,r,s=c.type||c,t=[];if($.test(s+p.event.triggered))return;s.indexOf("!")>=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j<q.length&&!c.isPropagationStopped();j++)k=q[j][0],c.type=q[j][1],o=(p._data(k,"events")||{})[c.type]&&p._data(k,"handle"),o&&o.apply(k,d),o=m&&k[m],o&&p.acceptData(k)&&o.apply(k,d)===!1&&c.preventDefault();return c.type=s,!g&&!c.isDefaultPrevented()&&(!n._default||n._default.apply(f.ownerDocument,d)===!1)&&(s!=="click"||!p.nodeName(f,"a"))&&p.acceptData(f)&&m&&f[s]&&(s!=="focus"&&s!=="blur"||c.target.offsetWidth!==0)&&!p.isWindow(f)&&(l=f[m],l&&(f[m]=null),p.event.triggered=s,f[s](),p.event.triggered=b,l&&(f[m]=l)),c.result}return},dispatch:function(c){c=p.event.fix(c||a.event);var d,e,f,g,h,i,j,k,l,m,n,o=(p._data(this,"events")||{})[c.type]||[],q=o.delegateCount,r=[].slice.call(arguments),s=!c.exclusive&&!c.namespace,t=p.event.special[c.type]||{},u=[];r[0]=c,c.delegateTarget=this;if(t.preDispatch&&t.preDispatch.call(this,c)===!1)return;if(q&&(!c.button||c.type!=="click")){g=p(this),g.context=this;for(f=c.target;f!=this;f=f.parentNode||this)if(f.disabled!==!0||c.type!=="click"){i={},k=[],g[0]=f;for(d=0;d<q;d++)l=o[d],m=l.selector,i[m]===b&&(i[m]=g.is(m)),i[m]&&k.push(l);k.length&&u.push({elem:f,matches:k})}}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d<u.length&&!c.isPropagationStopped();d++){j=u[d],c.currentTarget=j.elem;for(e=0;e<j.matches.length&&!c.isImmediatePropagationStopped();e++){l=j.matches[e];if(s||!c.namespace&&!l.namespace||c.namespace_re&&c.namespace_re.test(l.namespace))c.data=l.data,c.handleObj=l,h=((p.event.special[l.origType]||{}).handle||l.handler).apply(j.elem,r),h!==b&&(c.result=h,h===!1&&(c.preventDefault(),c.stopPropagation()))}}return t.postDispatch&&t.postDispatch.call(this,c),c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,c){var d,f,g,h=c.button,i=c.fromElement;return a.pageX==null&&c.clientX!=null&&(d=a.target.ownerDocument||e,f=d.documentElement,g=d.body,a.pageX=c.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=c.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?c.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0),a}},fix:function(a){if(a[p.expando])return a;var b,c,d=a,f=p.event.fixHooks[a.type]||{},g=f.props?this.props.concat(f.props):this.props;a=p.Event(d);for(b=g.length;b;)c=g[--b],a[c]=d[c];return a.target||(a.target=d.srcElement||e),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,f.filter?f.filter(a,d):a},special:{ready:{setup:p.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){p.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=p.extend(new p.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?p.event.trigger(e,null,b):p.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},p.event.handle=p.event.dispatch,p.removeEvent=e.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]=="undefined"&&(a[d]=null),a.detachEvent(d,c))},p.Event=function(a,b){if(this instanceof p.Event)a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?bb:ba):this.type=a,b&&p.extend(this,b),this.timeStamp=a&&a.timeStamp||p.now(),this[p.expando]=!0;else return new p.Event(a,b)},p.Event.prototype={preventDefault:function(){this.isDefaultPrevented=bb;var a=this.originalEvent;if(!a)return;a.preventDefault?a.preventDefault():a.returnValue=!1},stopPropagation:function(){this.isPropagationStopped=bb;var a=this.originalEvent;if(!a)return;a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=bb,this.stopPropagation()},isDefaultPrevented:ba,isPropagationStopped:ba,isImmediatePropagationStopped:ba},p.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){p.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj,g=f.selector;if(!e||e!==d&&!p.contains(d,e))a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b;return c}}}),p.support.submitBubbles||(p.event.special.submit={setup:function(){if(p.nodeName(this,"form"))return!1;p.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=p.nodeName(c,"input")||p.nodeName(c,"button")?c.form:b;d&&!p._data(d,"_submit_attached")&&(p.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),p._data(d,"_submit_attached",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&p.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(p.nodeName(this,"form"))return!1;p.event.remove(this,"._submit")}}),p.support.changeBubbles||(p.event.special.change={setup:function(){if(V.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")p.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),p.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),p.event.simulate("change",this,a,!0)});return!1}p.event.add(this,"beforeactivate._change",function(a){var b=a.target;V.test(b.nodeName)&&!p._data(b,"_change_attached")&&(p.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&p.event.simulate("change",this.parentNode,a,!0)}),p._data(b,"_change_attached",!0))})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){return p.event.remove(this,"._change"),V.test(this.nodeName)}}),p.support.focusinBubbles||p.each({focus:"focusin",blur:"focusout"},function(a,b){var c=0,d=function(a){p.event.simulate(b,a.target,p.event.fix(a),!0)};p.event.special[b]={setup:function(){c++===0&&e.addEventListener(a,d,!0)},teardown:function(){--c===0&&e.removeEventListener(a,d,!0)}}}),p.fn.extend({on:function(a,c,d,e,f){var g,h;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(h in a)this.on(h,c,d,a[h],f);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=ba;else if(!e)return this;return f===1&&(g=e,e=function(a){return p().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=p.guid++)),this.each(function(){p.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,p(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if(typeof a=="object"){for(f in a)this.off(f,c,a[f]);return this}if(c===!1||typeof c=="function")d=c,c=b;return d===!1&&(d=ba),this.each(function(){p.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){return p(this.context).on(a,this.selector,b,c),this},die:function(a,b){return p(this.context).off(a,this.selector||"**",b),this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){p.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return p.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||p.guid++,d=0,e=function(c){var e=(p._data(this,"lastToggle"+a.guid)||0)%d;return p._data(this,"lastToggle"+a.guid,e+1),c.preventDefault(),b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){p.fn[b]=function(a,c){return c==null&&(c=a,a=null),arguments.length>0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bd(a,b,c,d){var e=0,f=b.length;for(;e<f;e++)Z(a,b[e],c,d)}function be(a,b,c,d,e,f){var g,h=$.setFilters[b.toLowerCase()];return h||Z.error(b),(a||!(g=e))&&bd(a||"*",d,g=[],e),g.length>0?h(g,c,f):[]}function bf(a,c,d,e,f){var g,h,i,j,k,l,m,n,p=0,q=f.length,s=L.POS,t=new RegExp("^"+s.source+"(?!"+r+")","i"),u=function(){var a=1,c=arguments.length-2;for(;a<c;a++)arguments[a]===b&&(g[a]=b)};for(;p<q;p++){s.exec(""),a=f[p],j=[],i=0,k=e;while(g=s.exec(a)){n=s.lastIndex=g.index+g[0].length;if(n>i){m=a.slice(i,g.index),i=n,l=[c],B.test(m)&&(k&&(l=k),k=e);if(h=H.test(m))m=m.slice(0,-5).replace(B,"$&*");g.length>1&&g[0].replace(t,u),k=be(m,g[1],g[2],l,k,h)}}k?(j=j.concat(k),(m=a.slice(i))&&m!==")"?B.test(m)?bd(m,j,d,e):Z(m,c,d,e?e.concat(k):k):o.apply(d,j)):Z(a,c,d,e)}return q===1?d:Z.uniqueSort(d)}function bg(a,b,c){var d,e,f,g=[],i=0,j=D.exec(a),k=!j.pop()&&!j.pop(),l=k&&a.match(C)||[""],m=$.preFilter,n=$.filter,o=!c&&b!==h;for(;(e=l[i])!=null&&k;i++){g.push(d=[]),o&&(e=" "+e);while(e){k=!1;if(j=B.exec(e))e=e.slice(j[0].length),k=d.push({part:j.pop().replace(A," "),captures:j});for(f in n)(j=L[f].exec(e))&&(!m[f]||(j=m[f](j,b,c)))&&(e=e.slice(j.shift().length),k=d.push({part:f,captures:j}));if(!k)break}}return k||Z.error(a),g}function bh(a,b,e){var f=b.dir,g=m++;return a||(a=function(a){return a===e}),b.first?function(b,c){while(b=b[f])if(b.nodeType===1)return a(b,c)&&b}:function(b,e){var h,i=g+"."+d,j=i+"."+c;while(b=b[f])if(b.nodeType===1){if((h=b[q])===j)return b.sizset;if(typeof h=="string"&&h.indexOf(i)===0){if(b.sizset)return b}else{b[q]=j;if(a(b,e))return b.sizset=!0,b;b.sizset=!1}}}}function bi(a,b){return a?function(c,d){var e=b(c,d);return e&&a(e===!0?c:e,d)}:b}function bj(a,b,c){var d,e,f=0;for(;d=a[f];f++)$.relative[d.part]?e=bh(e,$.relative[d.part],b):(d.captures.push(b,c),e=bi(e,$.filter[d.part].apply(null,d.captures)));return e}function bk(a){return function(b,c){var d,e=0;for(;d=a[e];e++)if(d(b,c))return!0;return!1}}var c,d,e,f,g,h=a.document,i=h.documentElement,j="undefined",k=!1,l=!0,m=0,n=[].slice,o=[].push,q=("sizcache"+Math.random()).replace(".",""),r="[\\x20\\t\\r\\n\\f]",s="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",t=s.replace("w","w#"),u="([*^$|!~]?=)",v="\\["+r+"*("+s+")"+r+"*(?:"+u+r+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+t+")|)|)"+r+"*\\]",w=":("+s+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",x=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",y=r+"*([\\x20\\t\\r\\n\\f>+~])"+r+"*",z="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+v+"|"+w.replace(2,7)+"|[^\\\\(),])+",A=new RegExp("^"+r+"+|((?:^|[^\\\\])(?:\\\\.)*)"+r+"+$","g"),B=new RegExp("^"+y),C=new RegExp(z+"?(?="+r+"*,|$)","g"),D=new RegExp("^(?:(?!,)(?:(?:^|,)"+r+"*"+z+")*?|"+r+"*(.*?))(\\)|$)"),E=new RegExp(z.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+y,"g"),F=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,G=/[\x20\t\r\n\f]*[+~]/,H=/:not\($/,I=/h\d/i,J=/input|select|textarea|button/i,K=/\\(?!\\)/g,L={ID:new RegExp("^#("+s+")"),CLASS:new RegExp("^\\.("+s+")"),NAME:new RegExp("^\\[name=['\"]?("+s+")['\"]?\\]"),TAG:new RegExp("^("+s.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+v),PSEUDO:new RegExp("^"+w),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+r+"*(even|odd|(([+-]|)(\\d*)n|)"+r+"*(?:([+-]|)"+r+"*(\\d+)|))"+r+"*\\)|)","i"),POS:new RegExp(x,"ig"),needsContext:new RegExp("^"+r+"*[>+~]|"+x,"i")},M={},N=[],O={},P=[],Q=function(a){return a.sizzleFilter=!0,a},R=function(a){return function(b){return b.nodeName.toLowerCase()==="input"&&b.type===a}},S=function(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}},T=function(a){var b=!1,c=h.createElement("div");try{b=a(c)}catch(d){}return c=null,b},U=T(function(a){a.innerHTML="<select></select>";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),V=T(function(a){a.id=q+0,a.innerHTML="<a name='"+q+"'></a><div name='"+q+"'></div>",i.insertBefore(a,i.firstChild);var b=h.getElementsByName&&h.getElementsByName(q).length===2+h.getElementsByName(q+0).length;return g=!h.getElementById(q),i.removeChild(a),b}),W=T(function(a){return a.appendChild(h.createComment("")),a.getElementsByTagName("*").length===0}),X=T(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==j&&a.firstChild.getAttribute("href")==="#"}),Y=T(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",!a.getElementsByClassName||a.getElementsByClassName("e").length===0?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length!==1)}),Z=function(a,b,c,d){c=c||[],b=b||h;var e,f,g,i,j=b.nodeType;if(j!==1&&j!==9)return[];if(!a||typeof a!="string")return c;g=ba(b);if(!g&&!d)if(e=F.exec(a))if(i=e[1]){if(j===9){f=b.getElementById(i);if(!f||!f.parentNode)return c;if(f.id===i)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(i))&&bb(b,f)&&f.id===i)return c.push(f),c}else{if(e[2])return o.apply(c,n.call(b.getElementsByTagName(a),0)),c;if((i=e[3])&&Y&&b.getElementsByClassName)return o.apply(c,n.call(b.getElementsByClassName(i),0)),c}return bm(a,b,c,d,g)},$=Z.selectors={cacheLength:50,match:L,order:["ID","TAG"],attrHandle:{},createPseudo:Q,find:{ID:g?function(a,b,c){if(typeof b.getElementById!==j&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==j&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==j&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:W?function(a,b){if(typeof b.getElementsByTagName!==j)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(K,""),a[3]=(a[4]||a[5]||"").replace(K,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||Z.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&Z.error(a[0]),a},PSEUDO:function(a){var b,c=a[4];return L.CHILD.test(a[0])?null:(c&&(b=D.exec(c))&&b.pop()&&(a[0]=a[0].slice(0,b[0].length-c.length-1),c=b[0].slice(0,-1)),a.splice(2,3,c||a[3]),a)}},filter:{ID:g?function(a){return a=a.replace(K,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(K,""),function(b){var c=typeof b.getAttributeNode!==j&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(K,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=M[a];return b||(b=M[a]=new RegExp("(^|"+r+")"+a+"("+r+"|$)"),N.push(a),N.length>$.cacheLength&&delete M[N.shift()]),function(a){return b.test(a.className||typeof a.getAttribute!==j&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return b?function(d){var e=Z.attr(d,a),f=e+"";if(e==null)return b==="!=";switch(b){case"=":return f===c;case"!=":return f!==c;case"^=":return c&&f.indexOf(c)===0;case"*=":return c&&f.indexOf(c)>-1;case"$=":return c&&f.substr(f.length-c.length)===c;case"~=":return(" "+f+" ").indexOf(c)>-1;case"|=":return f===c||f.substr(0,c.length+1)===c+"-"}}:function(b){return Z.attr(b,a)!=null}},CHILD:function(a,b,c,d){if(a==="nth"){var e=m++;return function(a){var b,f,g=0,h=a;if(c===1&&d===0)return!0;b=a.parentNode;if(b&&(b[q]!==e||!a.sizset)){for(h=b.firstChild;h;h=h.nextSibling)if(h.nodeType===1){h.sizset=++g;if(h===a)break}b[q]=e}return f=a.sizset-d,c===0?f===0:f%c===0&&f/c>=0}}return function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b,c,d){var e=$.pseudos[a]||$.pseudos[a.toLowerCase()];return e||Z.error("unsupported pseudo: "+a),e.sizzleFilter?e(b,c,d):e}},pseudos:{not:Q(function(a,b,c){var d=bl(a.replace(A,"$1"),b,c);return function(a){return!d(a)}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!$.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},contains:Q(function(a){return function(b){return(b.textContent||b.innerText||bc(b)).indexOf(a)>-1}}),has:Q(function(a){return function(b){return Z(a,b).length>0}}),header:function(a){return I.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:R("radio"),checkbox:R("checkbox"),file:R("file"),password:R("password"),image:R("image"),submit:S("submit"),reset:S("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return J.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b,c){return c?a.slice(1):[a[0]]},last:function(a,b,c){var d=a.pop();return c?a:[d]},even:function(a,b,c){var d=[],e=c?1:0,f=a.length;for(;e<f;e=e+2)d.push(a[e]);return d},odd:function(a,b,c){var d=[],e=c?0:1,f=a.length;for(;e<f;e=e+2)d.push(a[e]);return d},lt:function(a,b,c){return c?a.slice(+b):a.slice(0,+b)},gt:function(a,b,c){return c?a.slice(0,+b+1):a.slice(+b+1)},eq:function(a,b,c){var d=a.splice(+b,1);return c?a:d}}};$.setFilters.nth=$.setFilters.eq,$.filters=$.pseudos,X||($.attrHandle={href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}}),V&&($.order.push("NAME"),$.find.NAME=function(a,b){if(typeof b.getElementsByName!==j)return b.getElementsByName(a)}),Y&&($.order.splice(1,0,"CLASS"),$.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!==j&&!c)return b.getElementsByClassName(a)});try{n.call(i.childNodes,0)[0].nodeType}catch(_){n=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}var ba=Z.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},bb=Z.contains=i.compareDocumentPosition?function(a,b){return!!(a.compareDocumentPosition(b)&16)}:i.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc=Z.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=bc(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=bc(b);return c};Z.attr=function(a,b){var c,d=ba(a);return d||(b=b.toLowerCase()),$.attrHandle[b]?$.attrHandle[b](a):U||d?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},Z.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},[0,0].sort(function(){return l=0}),i.compareDocumentPosition?e=function(a,b){return a===b?(k=!0,0):(!a.compareDocumentPosition||!b.compareDocumentPosition?a.compareDocumentPosition:a.compareDocumentPosition(b)&4)?-1:1}:(e=function(a,b){if(a===b)return k=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],g=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return f(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)g.unshift(j),j=j.parentNode;c=e.length,d=g.length;for(var l=0;l<c&&l<d;l++)if(e[l]!==g[l])return f(e[l],g[l]);return l===c?f(a,g[l],-1):f(e[l],b,1)},f=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),Z.uniqueSort=function(a){var b,c=1;if(e){k=l,a.sort(e);if(k)for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1)}return a};var bl=Z.compile=function(a,b,c){var d,e,f,g=O[a];if(g&&g.context===b)return g;e=bg(a,b,c);for(f=0;d=e[f];f++)e[f]=bj(d,b,c);return g=O[a]=bk(e),g.context=b,g.runs=g.dirruns=0,P.push(a),P.length>$.cacheLength&&delete O[P.shift()],g};Z.matches=function(a,b){return Z(a,null,null,b)},Z.matchesSelector=function(a,b){return Z(b,null,null,[a]).length>0};var bm=function(a,b,e,f,g){a=a.replace(A,"$1");var h,i,j,k,l,m,p,q,r,s=a.match(C),t=a.match(E),u=b.nodeType;if(L.POS.test(a))return bf(a,b,e,f,s);if(f)h=n.call(f,0);else if(s&&s.length===1){if(t.length>1&&u===9&&!g&&(s=L.ID.exec(t[0]))){b=$.find.ID(s[1],b,g)[0];if(!b)return e;a=a.slice(t.shift().length)}q=(s=G.exec(t[0]))&&!s.index&&b.parentNode||b,r=t.pop(),m=r.split(":not")[0];for(j=0,k=$.order.length;j<k;j++){p=$.order[j];if(s=L[p].exec(m)){h=$.find[p]((s[1]||"").replace(K,""),q,g);if(h==null)continue;m===r&&(a=a.slice(0,a.length-r.length)+m.replace(L[p],""),a||o.apply(e,n.call(h,0)));break}}}if(a){i=bl(a,b,g),d=i.dirruns++,h==null&&(h=$.find.TAG("*",G.test(a)&&b.parentNode||b));for(j=0;l=h[j];j++)c=i.runs++,i(l,b)&&e.push(l)}return e};h.querySelectorAll&&function(){var a,b=bm,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[],f=[":active"],g=i.matchesSelector||i.mozMatchesSelector||i.webkitMatchesSelector||i.oMatchesSelector||i.msMatchesSelector;T(function(a){a.innerHTML="<select><option selected></option></select>",a.querySelectorAll("[selected]").length||e.push("\\["+r+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),T(function(a){a.innerHTML="<p test=''></p>",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+r+"*(?:\"\"|'')"),a.innerHTML="<input type='hidden'>",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=e.length&&new RegExp(e.join("|")),bm=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a)))if(d.nodeType===9)try{return o.apply(f,n.call(d.querySelectorAll(a),0)),f}catch(i){}else if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){var j=d.getAttribute("id"),k=j||q,l=G.test(a)&&d.parentNode||d;j?k=k.replace(c,"\\$&"):d.setAttribute("id",k);try{return o.apply(f,n.call(l.querySelectorAll(a.replace(C,"[id='"+k+"'] $&")),0)),f}catch(i){}finally{j||d.removeAttribute("id")}}return b(a,d,f,g,h)},g&&(T(function(b){a=g.call(b,"div");try{g.call(b,"[test!='']:sizzle"),f.push($.match.PSEUDO)}catch(c){}}),f=new RegExp(f.join("|")),Z.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!ba(b)&&!f.test(c)&&(!e||!e.test(c)))try{var h=g.call(b,c);if(h||a||b.document&&b.document.nodeType!==11)return h}catch(i){}return Z(c,null,null,[b]).length>0})}(),Z.attr=p.attr,p.find=Z,p.expr=Z.selectors,p.expr[":"]=p.expr.pseudos,p.unique=Z.uniqueSort,p.text=Z.getText,p.isXMLDoc=Z.isXML,p.contains=Z.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b<c;b++)if(p.contains(h[b],this))return!0});g=this.pushStack("","find",a);for(b=0,c=this.length;b<c;b++){d=g.length,p.find(a,this[b],g);if(b>0)for(e=d;e<g.length;e++)for(f=0;f<d;f++)if(g[f]===g[e]){g.splice(e--,1);break}}return g},has:function(a){var b,c=p(a,this),d=c.length;return this.filter(function(){for(b=0;b<d;b++)if(p.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(bj(this,a,!1),"not",a)},filter:function(a){return this.pushStack(bj(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?bf.test(a)?p(a,this.context).index(this[0])>=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d<e;d++){c=this[d];while(c&&c.ownerDocument&&c!==b&&c.nodeType!==11){if(g?g.index(c)>-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/<tbody/i,br=/<|&#?\w+;/,bs=/<(?:script|style|link)/i,bt=/<(?:script|object|embed|option|style)/i,bu=new RegExp("<(?:"+bl+")[\\s/>]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,bz={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X<div>","</div>"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return bh(this[0])?this.length?this.pushStack(p(p.isFunction(a)?a():a),"replaceWith",a):this:p.isFunction(a)?this.each(function(b){var c=p(this),d=c.html();c.replaceWith(a.call(this,b,d))}):(typeof a!="string"&&(a=p(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;p(this).remove(),b?p(b).before(a):p(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],l=this.length;if(!p.support.checkClone&&l>1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i<l;i++)d.call(c&&p.nodeName(this[i],"table")?bC(this[i],"tbody"):this[i],i===h?g:p.clone(g,!0,!0))}g=f=null,k.length&&p.each(k,function(a,b){b.src?p.ajax?p.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):p.error("no ajax"):p.globalEval((b.text||b.textContent||b.innerHTML||"").replace(by,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),p.buildFragment=function(a,c,d){var f,g,h,i=a[0];return c=c||e,c=(c[0]||c).ownerDocument||c[0]||c,typeof c.createDocumentFragment=="undefined"&&(c=e),a.length===1&&typeof i=="string"&&i.length<512&&c===e&&i.charAt(0)==="<"&&!bt.test(i)&&(p.support.checkClone||!bw.test(i))&&(p.support.html5Clone||!bu.test(i))&&(g=!0,f=p.fragments[i],h=f!==b),f||(f=c.createDocumentFragment(),p.clean(a,c,f,d),g&&(p.fragments[i]=h&&f)),{fragment:f,cacheable:g}},p.fragments={},p.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){p.fn[a]=function(c){var d,e=0,f=[],g=p(c),h=g.length,i=this.length===1&&this[0].parentNode;if((i==null||i&&i.nodeType===11&&i.childNodes.length===1)&&h===1)return g[b](this[0]),this;for(;e<h;e++)d=(e>0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=0,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(g=b===e&&bA;(h=a[s])!=null;s++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{g=g||bk(b),l=l||g.appendChild(b.createElement("div")),h=h.replace(bo,"<$1></$2>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]==="<table>"&&!m?l.childNodes:[];for(f=n.length-1;f>=0;--f)p.nodeName(n[f],"tbody")&&!n[f].childNodes.length&&n[f].parentNode.removeChild(n[f])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l=g.lastChild}h.nodeType?t.push(h):t=p.merge(t,h)}l&&(g.removeChild(l),h=l=g=null);if(!p.support.appendChecked)for(s=0;(h=t[s])!=null;s++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(s=0;(h=t[s])!=null;s++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[s+1,0].concat(r)),s+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^margin/,bO=new RegExp("^("+q+")(.*)$","i"),bP=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bQ=new RegExp("^([-+])=("+q+")","i"),bR={},bS={position:"absolute",visibility:"hidden",display:"block"},bT={letterSpacing:0,fontWeight:400,lineHeight:1},bU=["Top","Right","Bottom","Left"],bV=["Webkit","O","Moz","ms"],bW=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return bZ(this,!0)},hide:function(){return bZ(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bW.apply(this,arguments):this.each(function(){(c?a:bY(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bX(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bQ.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bX(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bT&&(f=bT[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(a,b){var c,d,e,f,g=getComputedStyle(a,null),h=a.style;return g&&(c=g[b],c===""&&!p.contains(a.ownerDocument.documentElement,a)&&(c=p.style(a,b)),bP.test(c)&&bN.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=c,c=g.width,h.width=d,h.minWidth=e,h.maxWidth=f)),c}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bP.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth!==0||bH(a,"display")!=="none"?ca(a,b,d):p.swap(a,bS,function(){return ca(a,b,d)})},set:function(a,c,d){return b$(a,c,d?b_(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bP.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bU[d]+b]=e[d]||e[d-2]||e[0];return f}},bN.test(a)||(p.cssHooks[a+b].set=b$)});var cc=/%20/g,cd=/\[\]$/,ce=/\r?\n/g,cf=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,cg=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||cg.test(this.nodeName)||cf.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(ce,"\r\n")}}):{name:b.name,value:c.replace(ce,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ch(d,a[d],c,f);return e.join("&").replace(cc,"+")};var ci,cj,ck=/#.*$/,cl=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cm=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,cn=/^(?:GET|HEAD)$/,co=/^\/\//,cp=/\?/,cq=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,cr=/([?&])_=[^&]*/,cs=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,ct=p.fn.load,cu={},cv={},cw=["*/"]+["*"];try{ci=f.href}catch(cx){ci=e.createElement("a"),ci.href="",ci=ci.href}cj=cs.exec(ci.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&ct)return ct.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("<div>").append(a.replace(cq,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cA(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cA(a,b),a},ajaxSettings:{url:ci,isLocal:cm.test(cj[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cw},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cy(cu),ajaxTransport:cy(cv),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cB(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cC(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=""+(c||y),k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cl.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(ck,"").replace(co,cj[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=cs.exec(l.url.toLowerCase()),l.crossDomain=!(!i||i[1]==cj[1]&&i[2]==cj[2]&&(i[3]||(i[1]==="http:"?80:443))==(cj[3]||(cj[1]==="http:"?80:443)))),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cz(cu,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!cn.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cp.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cr,"$1_="+z);l.url=A+(A===l.url?(cp.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cw+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cz(cv,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cD=[],cE=/\?/,cF=/(=)\?(?=&|$)|\?\?/,cG=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cD.pop()||p.expando+"_"+cG++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cF.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cF.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cF,"$1"+f):m?c.data=i.replace(cF,"$1"+f):k&&(c.url+=(cE.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cD.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cH,cI=a.ActiveXObject?function(){for(var a in cH)cH[a](0,1)}:!1,cJ=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cK()||cL()}:cK,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cI&&delete cH[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cJ,cI&&(cH||(cH={},p(a).unload(cI)),cH[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cM,cN,cO=/^(?:toggle|show|hide)$/,cP=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cQ=/queueHooks$/,cR=[cX],cS={"*":[function(a,b){var c,d,e,f=this.createTween(a,b),g=cP.exec(b),h=f.cur(),i=+h||0,j=1;if(g){c=+g[2],d=g[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&i){i=p.css(f.elem,a,!0)||c||1;do e=j=j||".5",i=i/j,p.style(f.elem,a,i+d),j=f.cur()/h;while(j!==1&&j!==e)}f.unit=d,f.start=i,f.end=g[1]?i+(g[1]+1)*c:c}return f}]};p.Animation=p.extend(cV,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d<e;d++)c=a[d],cS[c]=cS[c]||[],cS[c].unshift(b)},prefilter:function(a,b){b?cR.unshift(a):cR.push(a)}}),p.Tween=cY,cY.prototype={constructor:cY,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(p.cssNumber[c]?"":"px")},cur:function(){var a=cY.propHooks[this.prop];return a&&a.get?a.get(this):cY.propHooks._default.get(this)},run:function(a){var b,c=cY.propHooks[this.prop];return this.pos=b=p.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration),this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):cY.propHooks._default.set(this),this}},cY.prototype.init.prototype=cY.prototype,cY.propHooks={_default:{get:function(a){var b;return a.elem[a.prop]==null||!!a.elem.style&&a.elem.style[a.prop]!=null?(b=p.css(a.elem,a.prop,!1,""),!b||b==="auto"?0:b):a.elem[a.prop]},set:function(a){p.fx.step[a.prop]?p.fx.step[a.prop](a):a.elem.style&&(a.elem.style[p.cssProps[a.prop]]!=null||p.cssHooks[a.prop])?p.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},cY.propHooks.scrollTop=cY.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},p.each(["toggle","show","hide"],function(a,b){var c=p.fn[b];p.fn[b]=function(d,e,f){return d==null||typeof d=="boolean"||!a&&p.isFunction(d)&&p.isFunction(e)?c.apply(this,arguments):this.animate(cZ(b,!0),d,e,f)}}),p.fn.extend({fadeTo:function(a,b,c,d){return this.filter(bY).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=p.isEmptyObject(a),f=p.speed(b,c,d),g=function(){var b=cV(this,p.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=a!=null&&a+"queueHooks",f=p.timers,g=p._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&cQ.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(a==null||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&p.dequeue(this,a)})}}),p.each({slideDown:cZ("show"),slideUp:cZ("hide"),slideToggle:cZ("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){p.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),p.speed=function(a,b,c){var d=a&&typeof a=="object"?p.extend({},a):{complete:c||!c&&b||p.isFunction(a)&&a,duration:a,easing:c&&b||b&&!p.isFunction(b)&&b};d.duration=p.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in p.fx.speeds?p.fx.speeds[d.duration]:p.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";return d.old=d.complete,d.complete=function(){p.isFunction(d.old)&&d.old.call(this),d.queue&&p.dequeue(this,d.queue)},d},p.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},p.timers=[],p.fx=cY.prototype.init,p.fx.tick=function(){var a,b=p.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||p.fx.stop()},p.fx.timer=function(a){a()&&p.timers.push(a)&&!cN&&(cN=setInterval(p.fx.tick,p.fx.interval))},p.fx.interval=13,p.fx.stop=function(){clearInterval(cN),cN=null},p.fx.speeds={slow:600,fast:200,_default:400},p.fx.step={},p.expr&&p.expr.filters&&(p.expr.filters.animated=function(a){return p.grep(p.timers,function(b){return a===b.elem}).length});var c$=/^(?:body|html)$/i;p.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){p.offset.setOffset(this,a,b)});var c,d,e,f,g,h,i,j,k,l,m=this[0],n=m&&m.ownerDocument;if(!n)return;return(e=n.body)===m?p.offset.bodyOffset(m):(d=n.documentElement,p.contains(d,m)?(c=m.getBoundingClientRect(),f=c_(n),g=d.clientTop||e.clientTop||0,h=d.clientLeft||e.clientLeft||0,i=f.pageYOffset||d.scrollTop,j=f.pageXOffset||d.scrollLeft,k=c.top+i-g,l=c.left+j-h,{top:k,left:l}):{top:0,left:0})},p.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;return p.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(p.css(a,"marginTop"))||0,c+=parseFloat(p.css(a,"marginLeft"))||0),{top:b,left:c}},setOffset:function(a,b,c){var d=p.css(a,"position");d==="static"&&(a.style.position="relative");var e=p(a),f=e.offset(),g=p.css(a,"top"),h=p.css(a,"left"),i=(d==="absolute"||d==="fixed")&&p.inArray("auto",[g,h])>-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c$.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c$.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=c_(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window);
-
+(function (a, b) {
+ function G(a) {
+ var b = F[a] = {};
+ return p.each(a.split(s), function (a, c) {
+ b[c] = !0
+ }), b
+ }
+
+ function J(a, c, d) {
+ if (d === b && a.nodeType === 1) {
+ var e = "data-" + c.replace(I, "-$1").toLowerCase();
+ d = a.getAttribute(e);
+ if (typeof d == "string") {
+ try {
+ d = d === "true" ? !0 : d === "false" ? !1 : d === "null" ? null : +d + "" === d ? +d : H.test(d) ? p.parseJSON(d) : d
+ } catch (f) {
+ }
+ p.data(a, c, d)
+ } else d = b
+ }
+ return d
+ }
+
+ function K(a) {
+ var b;
+ for (b in a) {
+ if (b === "data" && p.isEmptyObject(a[b]))continue;
+ if (b !== "toJSON")return!1
+ }
+ return!0
+ }
+
+ function ba() {
+ return!1
+ }
+
+ function bb() {
+ return!0
+ }
+
+ function bh(a) {
+ return!a || !a.parentNode || a.parentNode.nodeType === 11
+ }
+
+ function bi(a, b) {
+ do a = a[b]; while (a && a.nodeType !== 1);
+ return a
+ }
+
+ function bj(a, b, c) {
+ b = b || 0;
+ if (p.isFunction(b))return p.grep(a, function (a, d) {
+ var e = !!b.call(a, d, a);
+ return e === c
+ });
+ if (b.nodeType)return p.grep(a, function (a, d) {
+ return a === b === c
+ });
+ if (typeof b == "string") {
+ var d = p.grep(a, function (a) {
+ return a.nodeType === 1
+ });
+ if (be.test(b))return p.filter(b, d, !c);
+ b = p.filter(b, d)
+ }
+ return p.grep(a, function (a, d) {
+ return p.inArray(a, b) >= 0 === c
+ })
+ }
+
+ function bk(a) {
+ var b = bl.split("|"), c = a.createDocumentFragment();
+ if (c.createElement)while (b.length)c.createElement(b.pop());
+ return c
+ }
+
+ function bC(a, b) {
+ return a.getElementsByTagName(b)[0] || a.appendChild(a.ownerDocument.createElement(b))
+ }
+
+ function bD(a, b) {
+ if (b.nodeType !== 1 || !p.hasData(a))return;
+ var c, d, e, f = p._data(a), g = p._data(b, f), h = f.events;
+ if (h) {
+ delete g.handle, g.events = {};
+ for (c in h)for (d = 0, e = h[c].length; d < e; d++)p.event.add(b, c, h[c][d])
+ }
+ g.data && (g.data = p.extend({}, g.data))
+ }
+
+ function bE(a, b) {
+ var c;
+ if (b.nodeType !== 1)return;
+ b.clearAttributes && b.clearAttributes(), b.mergeAttributes && b.mergeAttributes(a), c = b.nodeName.toLowerCase(), c === "object" ? (b.parentNode && (b.outerHTML = a.outerHTML), p.support.html5Clone && a.innerHTML && !p.trim(b.innerHTML) && (b.innerHTML = a.innerHTML)) : c === "input" && bv.test(a.type) ? (b.defaultChecked = b.checked = a.checked, b.value !== a.value && (b.value = a.value)) : c === "option" ? b.selected = a.defaultSelected : c === "input" || c === "textarea" ? b.defaultValue = a.defaultValue : c === "script" && b.text !== a.text && (b.text = a.text), b.removeAttribute(p.expando)
+ }
+
+ function bF(a) {
+ return typeof a.getElementsByTagName != "undefined" ? a.getElementsByTagName("*") : typeof a.querySelectorAll != "undefined" ? a.querySelectorAll("*") : []
+ }
+
+ function bG(a) {
+ bv.test(a.type) && (a.defaultChecked = a.checked)
+ }
+
+ function bX(a, b) {
+ if (b in a)return b;
+ var c = b.charAt(0).toUpperCase() + b.slice(1), d = b, e = bV.length;
+ while (e--) {
+ b = bV[e] + c;
+ if (b in a)return b
+ }
+ return d
+ }
+
+ function bY(a, b) {
+ return a = b || a, p.css(a, "display") === "none" || !p.contains(a.ownerDocument, a)
+ }
+
+ function bZ(a, b) {
+ var c, d, e = [], f = 0, g = a.length;
+ for (; f < g; f++) {
+ c = a[f];
+ if (!c.style)continue;
+ e[f] = p._data(c, "olddisplay"), b ? (!e[f] && c.style.display === "none" && (c.style.display = ""), c.style.display === "" && bY(c) && (e[f] = p._data(c, "olddisplay", cb(c.nodeName)))) : (d = bH(c, "display"), !e[f] && d !== "none" && p._data(c, "olddisplay", d))
+ }
+ for (f = 0; f < g; f++) {
+ c = a[f];
+ if (!c.style)continue;
+ if (!b || c.style.display === "none" || c.style.display === "")c.style.display = b ? e[f] || "" : "none"
+ }
+ return a
+ }
+
+ function b$(a, b, c) {
+ var d = bO.exec(b);
+ return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b
+ }
+
+ function b_(a, b, c, d) {
+ var e = c === (d ? "border" : "content") ? 4 : b === "width" ? 1 : 0, f = 0;
+ for (; e < 4; e += 2)c === "margin" && (f += p.css(a, c + bU[e], !0)), d ? (c === "content" && (f -= parseFloat(bH(a, "padding" + bU[e])) || 0), c !== "margin" && (f -= parseFloat(bH(a, "border" + bU[e] + "Width")) || 0)) : (f += parseFloat(bH(a, "padding" + bU[e])) || 0, c !== "padding" && (f += parseFloat(bH(a, "border" + bU[e] + "Width")) || 0));
+ return f
+ }
+
+ function ca(a, b, c) {
+ var d = b === "width" ? a.offsetWidth : a.offsetHeight, e = !0, f = p.support.boxSizing && p.css(a, "boxSizing") === "border-box";
+ if (d <= 0) {
+ d = bH(a, b);
+ if (d < 0 || d == null)d = a.style[b];
+ if (bP.test(d))return d;
+ e = f && (p.support.boxSizingReliable || d === a.style[b]), d = parseFloat(d) || 0
+ }
+ return d + b_(a, b, c || (f ? "border" : "content"), e) + "px"
+ }
+
+ function cb(a) {
+ if (bR[a])return bR[a];
+ var b = p("<" + a + ">").appendTo(e.body), c = b.css("display");
+ b.remove();
+ if (c === "none" || c === "") {
+ bI = e.body.appendChild(bI || p.extend(e.createElement("iframe"), {frameBorder: 0, width: 0, height: 0}));
+ if (!bJ || !bI.createElement)bJ = (bI.contentWindow || bI.contentDocument).document, bJ.write("<!doctype html><html><body>"), bJ.close();
+ b = bJ.body.appendChild(bJ.createElement(a)), c = bH(b, "display"), e.body.removeChild(bI)
+ }
+ return bR[a] = c, c
+ }
+
+ function ch(a, b, c, d) {
+ var e;
+ if (p.isArray(b))p.each(b, function (b, e) {
+ c || cd.test(a) ? d(a, e) : ch(a + "[" + (typeof e == "object" ? b : "") + "]", e, c, d)
+ }); else if (!c && p.type(b) === "object")for (e in b)ch(a + "[" + e + "]", b[e], c, d); else d(a, b)
+ }
+
+ function cy(a) {
+ return function (b, c) {
+ typeof b != "string" && (c = b, b = "*");
+ var d, e, f, g = b.toLowerCase().split(s), h = 0, i = g.length;
+ if (p.isFunction(c))for (; h < i; h++)d = g[h], f = /^\+/.test(d), f && (d = d.substr(1) || "*"), e = a[d] = a[d] || [], e[f ? "unshift" : "push"](c)
+ }
+ }
+
+ function cz(a, c, d, e, f, g) {
+ f = f || c.dataTypes[0], g = g || {}, g[f] = !0;
+ var h, i = a[f], j = 0, k = i ? i.length : 0, l = a === cu;
+ for (; j < k && (l || !h); j++)h = i[j](c, d, e), typeof h == "string" && (!l || g[h] ? h = b : (c.dataTypes.unshift(h), h = cz(a, c, d, e, h, g)));
+ return(l || !h) && !g["*"] && (h = cz(a, c, d, e, "*", g)), h
+ }
+
+ function cA(a, c) {
+ var d, e, f = p.ajaxSettings.flatOptions || {};
+ for (d in c)c[d] !== b && ((f[d] ? a : e || (e = {}))[d] = c[d]);
+ e && p.extend(!0, a, e)
+ }
+
+ function cB(a, c, d) {
+ var e, f, g, h, i = a.contents, j = a.dataTypes, k = a.responseFields;
+ for (f in k)f in d && (c[k[f]] = d[f]);
+ while (j[0] === "*")j.shift(), e === b && (e = a.mimeType || c.getResponseHeader("content-type"));
+ if (e)for (f in i)if (i[f] && i[f].test(e)) {
+ j.unshift(f);
+ break
+ }
+ if (j[0]in d)g = j[0]; else {
+ for (f in d) {
+ if (!j[0] || a.converters[f + " " + j[0]]) {
+ g = f;
+ break
+ }
+ h || (h = f)
+ }
+ g = g || h
+ }
+ if (g)return g !== j[0] && j.unshift(g), d[g]
+ }
+
+ function cC(a, b) {
+ var c, d, e, f, g = a.dataTypes.slice(), h = g[0], i = {}, j = 0;
+ a.dataFilter && (b = a.dataFilter(b, a.dataType));
+ if (g[1])for (c in a.converters)i[c.toLowerCase()] = a.converters[c];
+ for (; e = g[++j];)if (e !== "*") {
+ if (h !== "*" && h !== e) {
+ c = i[h + " " + e] || i["* " + e];
+ if (!c)for (d in i) {
+ f = d.split(" ");
+ if (f[1] === e) {
+ c = i[h + " " + f[0]] || i["* " + f[0]];
+ if (c) {
+ c === !0 ? c = i[d] : i[d] !== !0 && (e = f[0], g.splice(j--, 0, e));
+ break
+ }
+ }
+ }
+ if (c !== !0)if (c && a["throws"])b = c(b); else try {
+ b = c(b)
+ } catch (k) {
+ return{state: "parsererror", error: c ? k : "No conversion from " + h + " to " + e}
+ }
+ }
+ h = e
+ }
+ return{state: "success", data: b}
+ }
+
+ function cK() {
+ try {
+ return new a.XMLHttpRequest
+ } catch (b) {
+ }
+ }
+
+ function cL() {
+ try {
+ return new a.ActiveXObject("Microsoft.XMLHTTP")
+ } catch (b) {
+ }
+ }
+
+ function cT() {
+ return setTimeout(function () {
+ cM = b
+ }, 0), cM = p.now()
+ }
+
+ function cU(a, b) {
+ p.each(b, function (b, c) {
+ var d = (cS[b] || []).concat(cS["*"]), e = 0, f = d.length;
+ for (; e < f; e++)if (d[e].call(a, b, c))return
+ })
+ }
+
+ function cV(a, b, c) {
+ var d, e = 0, f = 0, g = cR.length, h = p.Deferred().always(function () {
+ delete i.elem
+ }), i = function () {
+ var b = cM || cT(), c = Math.max(0, j.startTime + j.duration - b), d = 1 - (c / j.duration || 0), e = 0, f = j.tweens.length;
+ for (; e < f; e++)j.tweens[e].run(d);
+ return h.notifyWith(a, [j, d, c]), d < 1 && f ? c : (h.resolveWith(a, [j]), !1)
+ }, j = h.promise({elem: a, props: p.extend({}, b), opts: p.extend(!0, {specialEasing: {}}, c), originalProperties: b, originalOptions: c, startTime: cM || cT(), duration: c.duration, tweens: [], createTween: function (b, c, d) {
+ var e = p.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing);
+ return j.tweens.push(e), e
+ }, stop: function (b) {
+ var c = 0, d = b ? j.tweens.length : 0;
+ for (; c < d; c++)j.tweens[c].run(1);
+ return b ? h.resolveWith(a, [j, b]) : h.rejectWith(a, [j, b]), this
+ }}), k = j.props;
+ cW(k, j.opts.specialEasing);
+ for (; e < g; e++) {
+ d = cR[e].call(j, a, k, j.opts);
+ if (d)return d
+ }
+ return cU(j, k), p.isFunction(j.opts.start) && j.opts.start.call(a, j), p.fx.timer(p.extend(i, {anim: j, queue: j.opts.queue, elem: a})), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always)
+ }
+
+ function cW(a, b) {
+ var c, d, e, f, g;
+ for (c in a) {
+ d = p.camelCase(c), e = b[d], f = a[c], p.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = p.cssHooks[d];
+ if (g && "expand"in g) {
+ f = g.expand(f), delete a[d];
+ for (c in f)c in a || (a[c] = f[c], b[c] = e)
+ } else b[d] = e
+ }
+ }
+
+ function cX(a, b, c) {
+ var d, e, f, g, h, i, j, k, l = this, m = a.style, n = {}, o = [], q = a.nodeType && bY(a);
+ c.queue || (j = p._queueHooks(a, "fx"), j.unqueued == null && (j.unqueued = 0, k = j.empty.fire, j.empty.fire = function () {
+ j.unqueued || k()
+ }), j.unqueued++, l.always(function () {
+ l.always(function () {
+ j.unqueued--, p.queue(a, "fx").length || j.empty.fire()
+ })
+ })), a.nodeType === 1 && ("height"in b || "width"in b) && (c.overflow = [m.overflow, m.overflowX, m.overflowY], p.css(a, "display") === "inline" && p.css(a, "float") === "none" && (!p.support.inlineBlockNeedsLayout || cb(a.nodeName) === "inline" ? m.display = "inline-block" : m.zoom = 1)), c.overflow && (m.overflow = "hidden", p.support.shrinkWrapBlocks || l.done(function () {
+ m.overflow = c.overflow[0], m.overflowX = c.overflow[1], m.overflowY = c.overflow[2]
+ }));
+ for (d in b) {
+ f = b[d];
+ if (cO.exec(f)) {
+ delete b[d];
+ if (f === (q ? "hide" : "show"))continue;
+ o.push(d)
+ }
+ }
+ g = o.length;
+ if (g) {
+ h = p._data(a, "fxshow") || p._data(a, "fxshow", {}), q ? p(a).show() : l.done(function () {
+ p(a).hide()
+ }), l.done(function () {
+ var b;
+ p.removeData(a, "fxshow", !0);
+ for (b in n)p.style(a, b, n[b])
+ });
+ for (d = 0; d < g; d++)e = o[d], i = l.createTween(e, q ? h[e] : 0), n[e] = h[e] || p.style(a, e), e in h || (h[e] = i.start, q && (i.end = i.start, i.start = e === "width" || e === "height" ? 1 : 0))
+ }
+ }
+
+ function cY(a, b, c, d, e) {
+ return new cY.prototype.init(a, b, c, d, e)
+ }
+
+ function cZ(a, b) {
+ var c, d = {height: a}, e = 0;
+ for (; e < 4; e += 2 - b)c = bU[e], d["margin" + c] = d["padding" + c] = a;
+ return b && (d.opacity = d.width = a), d
+ }
+
+ function c_(a) {
+ return p.isWindow(a) ? a : a.nodeType === 9 ? a.defaultView || a.parentWindow : !1
+ }
+
+ var c, d, e = a.document, f = a.location, g = a.navigator, h = a.jQuery, i = a.$, j = Array.prototype.push, k = Array.prototype.slice, l = Array.prototype.indexOf, m = Object.prototype.toString, n = Object.prototype.hasOwnProperty, o = String.prototype.trim, p = function (a, b) {
+ return new p.fn.init(a, b, c)
+ }, q = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source, r = /\S/, s = /\s+/, t = r.test(" ") ? /^[\s\xA0]+|[\s\xA0]+$/g : /^\s+|\s+$/g, u = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, v = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, w = /^[\],:{}\s]*$/, x = /(?:^|:|,)(?:\s*\[)+/g, y = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, z = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g, A = /^-ms-/, B = /-([\da-z])/gi, C = function (a, b) {
+ return(b + "").toUpperCase()
+ }, D = function () {
+ e.addEventListener ? (e.removeEventListener("DOMContentLoaded", D, !1), p.ready()) : e.readyState === "complete" && (e.detachEvent("onreadystatechange", D), p.ready())
+ }, E = {};
+ p.fn = p.prototype = {constructor: p, init: function (a, c, d) {
+ var f, g, h, i;
+ if (!a)return this;
+ if (a.nodeType)return this.context = this[0] = a, this.length = 1, this;
+ if (typeof a == "string") {
+ a.charAt(0) === "<" && a.charAt(a.length - 1) === ">" && a.length >= 3 ? f = [null, a, null] : f = u.exec(a);
+ if (f && (f[1] || !c)) {
+ if (f[1])return c = c instanceof p ? c[0] : c, i = c && c.nodeType ? c.ownerDocument || c : e, a = p.parseHTML(f[1], i, !0), v.test(f[1]) && p.isPlainObject(c) && this.attr.call(a, c, !0), p.merge(this, a);
+ g = e.getElementById(f[2]);
+ if (g && g.parentNode) {
+ if (g.id !== f[2])return d.find(a);
+ this.length = 1, this[0] = g
+ }
+ return this.context = e, this.selector = a, this
+ }
+ return!c || c.jquery ? (c || d).find(a) : this.constructor(c).find(a)
+ }
+ return p.isFunction(a) ? d.ready(a) : (a.selector !== b && (this.selector = a.selector, this.context = a.context), p.makeArray(a, this))
+ }, selector: "", jquery: "1.8.0", length: 0, size: function () {
+ return this.length
+ }, toArray: function () {
+ return k.call(this)
+ }, get: function (a) {
+ return a == null ? this.toArray() : a < 0 ? this[this.length + a] : this[a]
+ }, pushStack: function (a, b, c) {
+ var d = p.merge(this.constructor(), a);
+ return d.prevObject = this, d.context = this.context, b === "find" ? d.selector = this.selector + (this.selector ? " " : "") + c : b && (d.selector = this.selector + "." + b + "(" + c + ")"), d
+ }, each: function (a, b) {
+ return p.each(this, a, b)
+ }, ready: function (a) {
+ return p.ready.promise().done(a), this
+ }, eq: function (a) {
+ return a = +a, a === -1 ? this.slice(a) : this.slice(a, a + 1)
+ }, first: function () {
+ return this.eq(0)
+ }, last: function () {
+ return this.eq(-1)
+ }, slice: function () {
+ return this.pushStack(k.apply(this, arguments), "slice", k.call(arguments).join(","))
+ }, map: function (a) {
+ return this.pushStack(p.map(this, function (b, c) {
+ return a.call(b, c, b)
+ }))
+ }, end: function () {
+ return this.prevObject || this.constructor(null)
+ }, push: j, sort: [].sort, splice: [].splice}, p.fn.init.prototype = p.fn, p.extend = p.fn.extend = function () {
+ var a, c, d, e, f, g, h = arguments[0] || {}, i = 1, j = arguments.length, k = !1;
+ typeof h == "boolean" && (k = h, h = arguments[1] || {}, i = 2), typeof h != "object" && !p.isFunction(h) && (h = {}), j === i && (h = this, --i);
+ for (; i < j; i++)if ((a = arguments[i]) != null)for (c in a) {
+ d = h[c], e = a[c];
+ if (h === e)continue;
+ k && e && (p.isPlainObject(e) || (f = p.isArray(e))) ? (f ? (f = !1, g = d && p.isArray(d) ? d : []) : g = d && p.isPlainObject(d) ? d : {}, h[c] = p.extend(k, g, e)) : e !== b && (h[c] = e)
+ }
+ return h
+ }, p.extend({noConflict: function (b) {
+ return a.$ === p && (a.$ = i), b && a.jQuery === p && (a.jQuery = h), p
+ }, isReady: !1, readyWait: 1, holdReady: function (a) {
+ a ? p.readyWait++ : p.ready(!0)
+ }, ready: function (a) {
+ if (a === !0 ? --p.readyWait : p.isReady)return;
+ if (!e.body)return setTimeout(p.ready, 1);
+ p.isReady = !0;
+ if (a !== !0 && --p.readyWait > 0)return;
+ d.resolveWith(e, [p]), p.fn.trigger && p(e).trigger("ready").off("ready")
+ }, isFunction: function (a) {
+ return p.type(a) === "function"
+ }, isArray: Array.isArray || function (a) {
+ return p.type(a) === "array"
+ }, isWindow: function (a) {
+ return a != null && a == a.window
+ }, isNumeric: function (a) {
+ return!isNaN(parseFloat(a)) && isFinite(a)
+ }, type: function (a) {
+ return a == null ? String(a) : E[m.call(a)] || "object"
+ }, isPlainObject: function (a) {
+ if (!a || p.type(a) !== "object" || a.nodeType || p.isWindow(a))return!1;
+ try {
+ if (a.constructor && !n.call(a, "constructor") && !n.call(a.constructor.prototype, "isPrototypeOf"))return!1
+ } catch (c) {
+ return!1
+ }
+ var d;
+ for (d in a);
+ return d === b || n.call(a, d)
+ }, isEmptyObject: function (a) {
+ var b;
+ for (b in a)return!1;
+ return!0
+ }, error: function (a) {
+ throw new Error(a)
+ }, parseHTML: function (a, b, c) {
+ var d;
+ return!a || typeof a != "string" ? null : (typeof b == "boolean" && (c = b, b = 0), b = b || e, (d = v.exec(a)) ? [b.createElement(d[1])] : (d = p.buildFragment([a], b, c ? null : []), p.merge([], (d.cacheable ? p.clone(d.fragment) : d.fragment).childNodes)))
+ }, parseJSON: function (b) {
+ if (!b || typeof b != "string")return null;
+ b = p.trim(b);
+ if (a.JSON && a.JSON.parse)return a.JSON.parse(b);
+ if (w.test(b.replace(y, "@").replace(z, "]").replace(x, "")))return(new Function("return " + b))();
+ p.error("Invalid JSON: " + b)
+ }, parseXML: function (c) {
+ var d, e;
+ if (!c || typeof c != "string")return null;
+ try {
+ a.DOMParser ? (e = new DOMParser, d = e.parseFromString(c, "text/xml")) : (d = new ActiveXObject("Microsoft.XMLDOM"), d.async = "false", d.loadXML(c))
+ } catch (f) {
+ d = b
+ }
+ return(!d || !d.documentElement || d.getElementsByTagName("parsererror").length) && p.error("Invalid XML: " + c), d
+ }, noop: function () {
+ }, globalEval: function (b) {
+ b && r.test(b) && (a.execScript || function (b) {
+ a.eval.call(a, b)
+ })(b)
+ }, camelCase: function (a) {
+ return a.replace(A, "ms-").replace(B, C)
+ }, nodeName: function (a, b) {
+ return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase()
+ }, each: function (a, c, d) {
+ var e, f = 0, g = a.length, h = g === b || p.isFunction(a);
+ if (d) {
+ if (h) {
+ for (e in a)if (c.apply(a[e], d) === !1)break
+ } else for (; f < g;)if (c.apply(a[f++], d) === !1)break
+ } else if (h) {
+ for (e in a)if (c.call(a[e], e, a[e]) === !1)break
+ } else for (; f < g;)if (c.call(a[f], f, a[f++]) === !1)break;
+ return a
+ }, trim: o ? function (a) {
+ return a == null ? "" : o.call(a)
+ } : function (a) {
+ return a == null ? "" : a.toString().replace(t, "")
+ }, makeArray: function (a, b) {
+ var c, d = b || [];
+ return a != null && (c = p.type(a), a.length == null || c === "string" || c === "function" || c === "regexp" || p.isWindow(a) ? j.call(d, a) : p.merge(d, a)), d
+ }, inArray: function (a, b, c) {
+ var d;
+ if (b) {
+ if (l)return l.call(b, a, c);
+ d = b.length, c = c ? c < 0 ? Math.max(0, d + c) : c : 0;
+ for (; c < d; c++)if (c in b && b[c] === a)return c
+ }
+ return-1
+ }, merge: function (a, c) {
+ var d = c.length, e = a.length, f = 0;
+ if (typeof d == "number")for (; f < d; f++)a[e++] = c[f]; else while (c[f] !== b)a[e++] = c[f++];
+ return a.length = e, a
+ }, grep: function (a, b, c) {
+ var d, e = [], f = 0, g = a.length;
+ c = !!c;
+ for (; f < g; f++)d = !!b(a[f], f), c !== d && e.push(a[f]);
+ return e
+ }, map: function (a, c, d) {
+ var e, f, g = [], h = 0, i = a.length, j = a instanceof p || i !== b && typeof i == "number" && (i > 0 && a[0] && a[i - 1] || i === 0 || p.isArray(a));
+ if (j)for (; h < i; h++)e = c(a[h], h, d), e != null && (g[g.length] = e); else for (f in a)e = c(a[f], f, d), e != null && (g[g.length] = e);
+ return g.concat.apply([], g)
+ }, guid: 1, proxy: function (a, c) {
+ var d, e, f;
+ return typeof c == "string" && (d = a[c], c = a, a = d), p.isFunction(a) ? (e = k.call(arguments, 2), f = function () {
+ return a.apply(c, e.concat(k.call(arguments)))
+ }, f.guid = a.guid = a.guid || f.guid || p.guid++, f) : b
+ }, access: function (a, c, d, e, f, g, h) {
+ var i, j = d == null, k = 0, l = a.length;
+ if (d && typeof d == "object") {
+ for (k in d)p.access(a, c, k, d[k], 1, g, e);
+ f = 1
+ } else if (e !== b) {
+ i = h === b && p.isFunction(e), j && (i ? (i = c, c = function (a, b, c) {
+ return i.call(p(a), c)
+ }) : (c.call(a, e), c = null));
+ if (c)for (; k < l; k++)c(a[k], d, i ? e.call(a[k], k, c(a[k], d)) : e, h);
+ f = 1
+ }
+ return f ? a : j ? c.call(a) : l ? c(a[0], d) : g
+ }, now: function () {
+ return(new Date).getTime()
+ }}), p.ready.promise = function (b) {
+ if (!d) {
+ d = p.Deferred();
+ if (e.readyState === "complete" || e.readyState !== "loading" && e.addEventListener)setTimeout(p.ready, 1); else if (e.addEventListener)e.addEventListener("DOMContentLoaded", D, !1), a.addEventListener("load", p.ready, !1); else {
+ e.attachEvent("onreadystatechange", D), a.attachEvent("onload", p.ready);
+ var c = !1;
+ try {
+ c = a.frameElement == null && e.documentElement
+ } catch (f) {
+ }
+ c && c.doScroll && function g() {
+ if (!p.isReady) {
+ try {
+ c.doScroll("left")
+ } catch (a) {
+ return setTimeout(g, 50)
+ }
+ p.ready()
+ }
+ }()
+ }
+ }
+ return d.promise(b)
+ }, p.each("Boolean Number String Function Array Date RegExp Object".split(" "), function (a, b) {
+ E["[object " + b + "]"] = b.toLowerCase()
+ }), c = p(e);
+ var F = {};
+ p.Callbacks = function (a) {
+ a = typeof a == "string" ? F[a] || G(a) : p.extend({}, a);
+ var c, d, e, f, g, h, i = [], j = !a.once && [], k = function (b) {
+ c = a.memory && b, d = !0, h = f || 0, f = 0, g = i.length, e = !0;
+ for (; i && h < g; h++)if (i[h].apply(b[0], b[1]) === !1 && a.stopOnFalse) {
+ c = !1;
+ break
+ }
+ e = !1, i && (j ? j.length && k(j.shift()) : c ? i = [] : l.disable())
+ }, l = {add: function () {
+ if (i) {
+ var b = i.length;
+ (function d(b) {
+ p.each(b, function (b, c) {
+ p.isFunction(c) && (!a.unique || !l.has(c)) ? i.push(c) : c && c.length && d(c)
+ })
+ })(arguments), e ? g = i.length : c && (f = b, k(c))
+ }
+ return this
+ }, remove: function () {
+ return i && p.each(arguments, function (a, b) {
+ var c;
+ while ((c = p.inArray(b, i, c)) > -1)i.splice(c, 1), e && (c <= g && g--, c <= h && h--)
+ }), this
+ }, has: function (a) {
+ return p.inArray(a, i) > -1
+ }, empty: function () {
+ return i = [], this
+ }, disable: function () {
+ return i = j = c = b, this
+ }, disabled: function () {
+ return!i
+ }, lock: function () {
+ return j = b, c || l.disable(), this
+ }, locked: function () {
+ return!j
+ }, fireWith: function (a, b) {
+ return b = b || [], b = [a, b.slice ? b.slice() : b], i && (!d || j) && (e ? j.push(b) : k(b)), this
+ }, fire: function () {
+ return l.fireWith(this, arguments), this
+ }, fired: function () {
+ return!!d
+ }};
+ return l
+ }, p.extend({Deferred: function (a) {
+ var b = [
+ ["resolve", "done", p.Callbacks("once memory"), "resolved"],
+ ["reject", "fail", p.Callbacks("once memory"), "rejected"],
+ ["notify", "progress", p.Callbacks("memory")]
+ ], c = "pending", d = {state: function () {
+ return c
+ }, always: function () {
+ return e.done(arguments).fail(arguments), this
+ }, then: function () {
+ var a = arguments;
+ return p.Deferred(function (c) {
+ p.each(b, function (b, d) {
+ var f = d[0], g = a[b];
+ e[d[1]](p.isFunction(g) ? function () {
+ var a = g.apply(this, arguments);
+ a && p.isFunction(a.promise) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[f + "With"](this === e ? c : this, [a])
+ } : c[f])
+ }), a = null
+ }).promise()
+ }, promise: function (a) {
+ return typeof a == "object" ? p.extend(a, d) : d
+ }}, e = {};
+ return d.pipe = d.then, p.each(b, function (a, f) {
+ var g = f[2], h = f[3];
+ d[f[1]] = g.add, h && g.add(function () {
+ c = h
+ }, b[a ^ 1][2].disable, b[2][2].lock), e[f[0]] = g.fire, e[f[0] + "With"] = g.fireWith
+ }), d.promise(e), a && a.call(e, e), e
+ }, when: function (a) {
+ var b = 0, c = k.call(arguments), d = c.length, e = d !== 1 || a && p.isFunction(a.promise) ? d : 0, f = e === 1 ? a : p.Deferred(), g = function (a, b, c) {
+ return function (d) {
+ b[a] = this, c[a] = arguments.length > 1 ? k.call(arguments) : d, c === h ? f.notifyWith(b, c) : --e || f.resolveWith(b, c)
+ }
+ }, h, i, j;
+ if (d > 1) {
+ h = new Array(d), i = new Array(d), j = new Array(d);
+ for (; b < d; b++)c[b] && p.isFunction(c[b].promise) ? c[b].promise().done(g(b, j, c)).fail(f.reject).progress(g(b, i, h)) : --e
+ }
+ return e || f.resolveWith(j, c), f.promise()
+ }}), p.support = function () {
+ var b, c, d, f, g, h, i, j, k, l, m, n = e.createElement("div");
+ n.setAttribute("className", "t"), n.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", c = n.getElementsByTagName("*"), d = n.getElementsByTagName("a")[0], d.style.cssText = "top:1px;float:left;opacity:.5";
+ if (!c || !c.length || !d)return{};
+ f = e.createElement("select"), g = f.appendChild(e.createElement("option")), h = n.getElementsByTagName("input")[0], b = {leadingWhitespace: n.firstChild.nodeType === 3, tbody: !n.getElementsByTagName("tbody").length, htmlSerialize: !!n.getElementsByTagName("link").length, style: /top/.test(d.getAttribute("style")), hrefNormalized: d.getAttribute("href") === "/a", opacity: /^0.5/.test(d.style.opacity), cssFloat: !!d.style.cssFloat, checkOn: h.value === "on", optSelected: g.selected, getSetAttribute: n.className !== "t", enctype: !!e.createElement("form").enctype, html5Clone: e.createElement("nav").cloneNode(!0).outerHTML !== "<:nav></:nav>", boxModel: e.compatMode === "CSS1Compat", submitBubbles: !0, changeBubbles: !0, focusinBubbles: !1, deleteExpando: !0, noCloneEvent: !0, inlineBlockNeedsLayout: !1, shrinkWrapBlocks: !1, reliableMarginRight: !0, boxSizingReliable: !0, pixelPosition: !1}, h.checked = !0, b.noCloneChecked = h.cloneNode(!0).checked, f.disabled = !0, b.optDisabled = !g.disabled;
+ try {
+ delete n.test
+ } catch (o) {
+ b.deleteExpando = !1
+ }
+ !n.addEventListener && n.attachEvent && n.fireEvent && (n.attachEvent("onclick", m = function () {
+ b.noCloneEvent = !1
+ }), n.cloneNode(!0).fireEvent("onclick"), n.detachEvent("onclick", m)), h = e.createElement("input"), h.value = "t", h.setAttribute("type", "radio"), b.radioValue = h.value === "t", h.setAttribute("checked", "checked"), h.setAttribute("name", "t"), n.appendChild(h), i = e.createDocumentFragment(), i.appendChild(n.lastChild), b.checkClone = i.cloneNode(!0).cloneNode(!0).lastChild.checked, b.appendChecked = h.checked, i.removeChild(h), i.appendChild(n);
+ if (n.attachEvent)for (k in{submit: !0, change: !0, focusin: !0})j = "on" + k, l = j in n, l || (n.setAttribute(j, "return;"), l = typeof n[j] == "function"), b[k + "Bubbles"] = l;
+ return p(function () {
+ var c, d, f, g, h = "padding:0;margin:0;border:0;display:block;overflow:hidden;", i = e.getElementsByTagName("body")[0];
+ if (!i)return;
+ c = e.createElement("div"), c.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px", i.insertBefore(c, i.firstChild), d = e.createElement("div"), c.appendChild(d), d.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", f = d.getElementsByTagName("td"), f[0].style.cssText = "padding:0;margin:0;border:0;display:none", l = f[0].offsetHeight === 0, f[0].style.display = "", f[1].style.display = "none", b.reliableHiddenOffsets = l && f[0].offsetHeight === 0, d.innerHTML = "", d.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;", b.boxSizing = d.offsetWidth === 4, b.doesNotIncludeMarginInBodyOffset = i.offsetTop !== 1, a.getComputedStyle && (b.pixelPosition = (a.getComputedStyle(d, null) || {}).top !== "1%", b.boxSizingReliable = (a.getComputedStyle(d, null) || {width: "4px"}).width === "4px", g = e.createElement("div"), g.style.cssText = d.style.cssText = h, g.style.marginRight = g.style.width = "0", d.style.width = "1px", d.appendChild(g), b.reliableMarginRight = !parseFloat((a.getComputedStyle(g, null) || {}).marginRight)), typeof d.style.zoom != "undefined" && (d.innerHTML = "", d.style.cssText = h + "width:1px;padding:1px;display:inline;zoom:1", b.inlineBlockNeedsLayout = d.offsetWidth === 3, d.style.display = "block", d.style.overflow = "visible", d.innerHTML = "<div></div>", d.firstChild.style.width = "5px", b.shrinkWrapBlocks = d.offsetWidth !== 3, c.style.zoom = 1), i.removeChild(c), c = d = f = g = null
+ }), i.removeChild(n), c = d = f = g = h = i = n = null, b
+ }();
+ var H = /^(?:\{.*\}|\[.*\])$/, I = /([A-Z])/g;
+ p.extend({cache: {}, deletedIds: [], uuid: 0, expando: "jQuery" + (p.fn.jquery + Math.random()).replace(/\D/g, ""), noData: {embed: !0, object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", applet: !0}, hasData: function (a) {
+ return a = a.nodeType ? p.cache[a[p.expando]] : a[p.expando], !!a && !K(a)
+ }, data: function (a, c, d, e) {
+ if (!p.acceptData(a))return;
+ var f, g, h = p.expando, i = typeof c == "string", j = a.nodeType, k = j ? p.cache : a, l = j ? a[h] : a[h] && h;
+ if ((!l || !k[l] || !e && !k[l].data) && i && d === b)return;
+ l || (j ? a[h] = l = p.deletedIds.pop() || ++p.uuid : l = h), k[l] || (k[l] = {}, j || (k[l].toJSON = p.noop));
+ if (typeof c == "object" || typeof c == "function")e ? k[l] = p.extend(k[l], c) : k[l].data = p.extend(k[l].data, c);
+ return f = k[l], e || (f.data || (f.data = {}), f = f.data), d !== b && (f[p.camelCase(c)] = d), i ? (g = f[c], g == null && (g = f[p.camelCase(c)])) : g = f, g
+ }, removeData: function (a, b, c) {
+ if (!p.acceptData(a))return;
+ var d, e, f, g = a.nodeType, h = g ? p.cache : a, i = g ? a[p.expando] : p.expando;
+ if (!h[i])return;
+ if (b) {
+ d = c ? h[i] : h[i].data;
+ if (d) {
+ p.isArray(b) || (b in d ? b = [b] : (b = p.camelCase(b), b in d ? b = [b] : b = b.split(" ")));
+ for (e = 0, f = b.length; e < f; e++)delete d[b[e]];
+ if (!(c ? K : p.isEmptyObject)(d))return
+ }
+ }
+ if (!c) {
+ delete h[i].data;
+ if (!K(h[i]))return
+ }
+ g ? p.cleanData([a], !0) : p.support.deleteExpando || h != h.window ? delete h[i] : h[i] = null
+ }, _data: function (a, b, c) {
+ return p.data(a, b, c, !0)
+ }, acceptData: function (a) {
+ var b = a.nodeName && p.noData[a.nodeName.toLowerCase()];
+ return!b || b !== !0 && a.getAttribute("classid") === b
+ }}), p.fn.extend({data: function (a, c) {
+ var d, e, f, g, h, i = this[0], j = 0, k = null;
+ if (a === b) {
+ if (this.length) {
+ k = p.data(i);
+ if (i.nodeType === 1 && !p._data(i, "parsedAttrs")) {
+ f = i.attributes;
+ for (h = f.length; j < h; j++)g = f[j].name, g.indexOf("data-") === 0 && (g = p.camelCase(g.substring(5)), J(i, g, k[g]));
+ p._data(i, "parsedAttrs", !0)
+ }
+ }
+ return k
+ }
+ return typeof a == "object" ? this.each(function () {
+ p.data(this, a)
+ }) : (d = a.split(".", 2), d[1] = d[1] ? "." + d[1] : "", e = d[1] + "!", p.access(this, function (c) {
+ if (c === b)return k = this.triggerHandler("getData" + e, [d[0]]), k === b && i && (k = p.data(i, a), k = J(i, a, k)), k === b && d[1] ? this.data(d[0]) : k;
+ d[1] = c, this.each(function () {
+ var b = p(this);
+ b.triggerHandler("setData" + e, d), p.data(this, a, c), b.triggerHandler("changeData" + e, d)
+ })
+ }, null, c, arguments.length > 1, null, !1))
+ }, removeData: function (a) {
+ return this.each(function () {
+ p.removeData(this, a)
+ })
+ }}), p.extend({queue: function (a, b, c) {
+ var d;
+ if (a)return b = (b || "fx") + "queue", d = p._data(a, b), c && (!d || p.isArray(c) ? d = p._data(a, b, p.makeArray(c)) : d.push(c)), d || []
+ }, dequeue: function (a, b) {
+ b = b || "fx";
+ var c = p.queue(a, b), d = c.shift(), e = p._queueHooks(a, b), f = function () {
+ p.dequeue(a, b)
+ };
+ d === "inprogress" && (d = c.shift()), d && (b === "fx" && c.unshift("inprogress"), delete e.stop, d.call(a, f, e)), !c.length && e && e.empty.fire()
+ }, _queueHooks: function (a, b) {
+ var c = b + "queueHooks";
+ return p._data(a, c) || p._data(a, c, {empty: p.Callbacks("once memory").add(function () {
+ p.removeData(a, b + "queue", !0), p.removeData(a, c, !0)
+ })})
+ }}), p.fn.extend({queue: function (a, c) {
+ var d = 2;
+ return typeof a != "string" && (c = a, a = "fx", d--), arguments.length < d ? p.queue(this[0], a) : c === b ? this : this.each(function () {
+ var b = p.queue(this, a, c);
+ p._queueHooks(this, a), a === "fx" && b[0] !== "inprogress" && p.dequeue(this, a)
+ })
+ }, dequeue: function (a) {
+ return this.each(function () {
+ p.dequeue(this, a)
+ })
+ }, delay: function (a, b) {
+ return a = p.fx ? p.fx.speeds[a] || a : a, b = b || "fx", this.queue(b, function (b, c) {
+ var d = setTimeout(b, a);
+ c.stop = function () {
+ clearTimeout(d)
+ }
+ })
+ }, clearQueue: function (a) {
+ return this.queue(a || "fx", [])
+ }, promise: function (a, c) {
+ var d, e = 1, f = p.Deferred(), g = this, h = this.length, i = function () {
+ --e || f.resolveWith(g, [g])
+ };
+ typeof a != "string" && (c = a, a = b), a = a || "fx";
+ while (h--)(d = p._data(g[h], a + "queueHooks")) && d.empty && (e++, d.empty.add(i));
+ return i(), f.promise(c)
+ }});
+ var L, M, N, O = /[\t\r\n]/g, P = /\r/g, Q = /^(?:button|input)$/i, R = /^(?:button|input|object|select|textarea)$/i, S = /^a(?:rea|)$/i, T = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, U = p.support.getSetAttribute;
+ p.fn.extend({attr: function (a, b) {
+ return p.access(this, p.attr, a, b, arguments.length > 1)
+ }, removeAttr: function (a) {
+ return this.each(function () {
+ p.removeAttr(this, a)
+ })
+ }, prop: function (a, b) {
+ return p.access(this, p.prop, a, b, arguments.length > 1)
+ }, removeProp: function (a) {
+ return a = p.propFix[a] || a, this.each(function () {
+ try {
+ this[a] = b, delete this[a]
+ } catch (c) {
+ }
+ })
+ }, addClass: function (a) {
+ var b, c, d, e, f, g, h;
+ if (p.isFunction(a))return this.each(function (b) {
+ p(this).addClass(a.call(this, b, this.className))
+ });
+ if (a && typeof a == "string") {
+ b = a.split(s);
+ for (c = 0, d = this.length; c < d; c++) {
+ e = this[c];
+ if (e.nodeType === 1)if (!e.className && b.length === 1)e.className = a; else {
+ f = " " + e.className + " ";
+ for (g = 0, h = b.length; g < h; g++)~f.indexOf(" " + b[g] + " ") || (f += b[g] + " ");
+ e.className = p.trim(f)
+ }
+ }
+ }
+ return this
+ }, removeClass: function (a) {
+ var c, d, e, f, g, h, i;
+ if (p.isFunction(a))return this.each(function (b) {
+ p(this).removeClass(a.call(this, b, this.className))
+ });
+ if (a && typeof a == "string" || a === b) {
+ c = (a || "").split(s);
+ for (h = 0, i = this.length; h < i; h++) {
+ e = this[h];
+ if (e.nodeType === 1 && e.className) {
+ d = (" " + e.className + " ").replace(O, " ");
+ for (f = 0, g = c.length; f < g; f++)while (d.indexOf(" " + c[f] + " ") > -1)d = d.replace(" " + c[f] + " ", " ");
+ e.className = a ? p.trim(d) : ""
+ }
+ }
+ }
+ return this
+ }, toggleClass: function (a, b) {
+ var c = typeof a, d = typeof b == "boolean";
+ return p.isFunction(a) ? this.each(function (c) {
+ p(this).toggleClass(a.call(this, c, this.className, b), b)
+ }) : this.each(function () {
+ if (c === "string") {
+ var e, f = 0, g = p(this), h = b, i = a.split(s);
+ while (e = i[f++])h = d ? h : !g.hasClass(e), g[h ? "addClass" : "removeClass"](e)
+ } else if (c === "undefined" || c === "boolean")this.className && p._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : p._data(this, "__className__") || ""
+ })
+ }, hasClass: function (a) {
+ var b = " " + a + " ", c = 0, d = this.length;
+ for (; c < d; c++)if (this[c].nodeType === 1 && (" " + this[c].className + " ").replace(O, " ").indexOf(b) > -1)return!0;
+ return!1
+ }, val: function (a) {
+ var c, d, e, f = this[0];
+ if (!arguments.length) {
+ if (f)return c = p.valHooks[f.type] || p.valHooks[f.nodeName.toLowerCase()], c && "get"in c && (d = c.get(f, "value")) !== b ? d : (d = f.value, typeof d == "string" ? d.replace(P, "") : d == null ? "" : d);
+ return
+ }
+ return e = p.isFunction(a), this.each(function (d) {
+ var f, g = p(this);
+ if (this.nodeType !== 1)return;
+ e ? f = a.call(this, d, g.val()) : f = a, f == null ? f = "" : typeof f == "number" ? f += "" : p.isArray(f) && (f = p.map(f, function (a) {
+ return a == null ? "" : a + ""
+ })), c = p.valHooks[this.type] || p.valHooks[this.nodeName.toLowerCase()];
+ if (!c || !("set"in c) || c.set(this, f, "value") === b)this.value = f
+ })
+ }}), p.extend({valHooks: {option: {get: function (a) {
+ var b = a.attributes.value;
+ return!b || b.specified ? a.value : a.text
+ }}, select: {get: function (a) {
+ var b, c, d, e, f = a.selectedIndex, g = [], h = a.options, i = a.type === "select-one";
+ if (f < 0)return null;
+ c = i ? f : 0, d = i ? f + 1 : h.length;
+ for (; c < d; c++) {
+ e = h[c];
+ if (e.selected && (p.support.optDisabled ? !e.disabled : e.getAttribute("disabled") === null) && (!e.parentNode.disabled || !p.nodeName(e.parentNode, "optgroup"))) {
+ b = p(e).val();
+ if (i)return b;
+ g.push(b)
+ }
+ }
+ return i && !g.length && h.length ? p(h[f]).val() : g
+ }, set: function (a, b) {
+ var c = p.makeArray(b);
+ return p(a).find("option").each(function () {
+ this.selected = p.inArray(p(this).val(), c) >= 0
+ }), c.length || (a.selectedIndex = -1), c
+ }}}, attrFn: {}, attr: function (a, c, d, e) {
+ var f, g, h, i = a.nodeType;
+ if (!a || i === 3 || i === 8 || i === 2)return;
+ if (e && p.isFunction(p.fn[c]))return p(a)[c](d);
+ if (typeof a.getAttribute == "undefined")return p.prop(a, c, d);
+ h = i !== 1 || !p.isXMLDoc(a), h && (c = c.toLowerCase(), g = p.attrHooks[c] || (T.test(c) ? M : L));
+ if (d !== b) {
+ if (d === null) {
+ p.removeAttr(a, c);
+ return
+ }
+ return g && "set"in g && h && (f = g.set(a, d, c)) !== b ? f : (a.setAttribute(c, "" + d), d)
+ }
+ return g && "get"in g && h && (f = g.get(a, c)) !== null ? f : (f = a.getAttribute(c), f === null ? b : f)
+ }, removeAttr: function (a, b) {
+ var c, d, e, f, g = 0;
+ if (b && a.nodeType === 1) {
+ d = b.split(s);
+ for (; g < d.length; g++)e = d[g], e && (c = p.propFix[e] || e, f = T.test(e), f || p.attr(a, e, ""), a.removeAttribute(U ? e : c), f && c in a && (a[c] = !1))
+ }
+ }, attrHooks: {type: {set: function (a, b) {
+ if (Q.test(a.nodeName) && a.parentNode)p.error("type property can't be changed"); else if (!p.support.radioValue && b === "radio" && p.nodeName(a, "input")) {
+ var c = a.value;
+ return a.setAttribute("type", b), c && (a.value = c), b
+ }
+ }}, value: {get: function (a, b) {
+ return L && p.nodeName(a, "button") ? L.get(a, b) : b in a ? a.value : null
+ }, set: function (a, b, c) {
+ if (L && p.nodeName(a, "button"))return L.set(a, b, c);
+ a.value = b
+ }}}, propFix: {tabindex: "tabIndex", readonly: "readOnly", "for": "htmlFor", "class": "className", maxlength: "maxLength", cellspacing: "cellSpacing", cellpadding: "cellPadding", rowspan: "rowSpan", colspan: "colSpan", usemap: "useMap", frameborder: "frameBorder", contenteditable: "contentEditable"}, prop: function (a, c, d) {
+ var e, f, g, h = a.nodeType;
+ if (!a || h === 3 || h === 8 || h === 2)return;
+ return g = h !== 1 || !p.isXMLDoc(a), g && (c = p.propFix[c] || c, f = p.propHooks[c]), d !== b ? f && "set"in f && (e = f.set(a, d, c)) !== b ? e : a[c] = d : f && "get"in f && (e = f.get(a, c)) !== null ? e : a[c]
+ }, propHooks: {tabIndex: {get: function (a) {
+ var c = a.getAttributeNode("tabindex");
+ return c && c.specified ? parseInt(c.value, 10) : R.test(a.nodeName) || S.test(a.nodeName) && a.href ? 0 : b
+ }}}}), M = {get: function (a, c) {
+ var d, e = p.prop(a, c);
+ return e === !0 || typeof e != "boolean" && (d = a.getAttributeNode(c)) && d.nodeValue !== !1 ? c.toLowerCase() : b
+ }, set: function (a, b, c) {
+ var d;
+ return b === !1 ? p.removeAttr(a, c) : (d = p.propFix[c] || c, d in a && (a[d] = !0), a.setAttribute(c, c.toLowerCase())), c
+ }}, U || (N = {name: !0, id: !0, coords: !0}, L = p.valHooks.button = {get: function (a, c) {
+ var d;
+ return d = a.getAttributeNode(c), d && (N[c] ? d.value !== "" : d.specified) ? d.value : b
+ }, set: function (a, b, c) {
+ var d = a.getAttributeNode(c);
+ return d || (d = e.createAttribute(c), a.setAttributeNode(d)), d.value = b + ""
+ }}, p.each(["width", "height"], function (a, b) {
+ p.attrHooks[b] = p.extend(p.attrHooks[b], {set: function (a, c) {
+ if (c === "")return a.setAttribute(b, "auto"), c
+ }})
+ }), p.attrHooks.contenteditable = {get: L.get, set: function (a, b, c) {
+ b === "" && (b = "false"), L.set(a, b, c)
+ }}), p.support.hrefNormalized || p.each(["href", "src", "width", "height"], function (a, c) {
+ p.attrHooks[c] = p.extend(p.attrHooks[c], {get: function (a) {
+ var d = a.getAttribute(c, 2);
+ return d === null ? b : d
+ }})
+ }), p.support.style || (p.attrHooks.style = {get: function (a) {
+ return a.style.cssText.toLowerCase() || b
+ }, set: function (a, b) {
+ return a.style.cssText = "" + b
+ }}), p.support.optSelected || (p.propHooks.selected = p.extend(p.propHooks.selected, {get: function (a) {
+ var b = a.parentNode;
+ return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null
+ }})), p.support.enctype || (p.propFix.enctype = "encoding"), p.support.checkOn || p.each(["radio", "checkbox"], function () {
+ p.valHooks[this] = {get: function (a) {
+ return a.getAttribute("value") === null ? "on" : a.value
+ }}
+ }), p.each(["radio", "checkbox"], function () {
+ p.valHooks[this] = p.extend(p.valHooks[this], {set: function (a, b) {
+ if (p.isArray(b))return a.checked = p.inArray(p(a).val(), b) >= 0
+ }})
+ });
+ var V = /^(?:textarea|input|select)$/i, W = /^([^\.]*|)(?:\.(.+)|)$/, X = /(?:^|\s)hover(\.\S+|)\b/, Y = /^key/, Z = /^(?:mouse|contextmenu)|click/, $ = /^(?:focusinfocus|focusoutblur)$/, _ = function (a) {
+ return p.event.special.hover ? a : a.replace(X, "mouseenter$1 mouseleave$1")
+ };
+ p.event = {add: function (a, c, d, e, f) {
+ var g, h, i, j, k, l, m, n, o, q, r;
+ if (a.nodeType === 3 || a.nodeType === 8 || !c || !d || !(g = p._data(a)))return;
+ d.handler && (o = d, d = o.handler, f = o.selector), d.guid || (d.guid = p.guid++), i = g.events, i || (g.events = i = {}), h = g.handle, h || (g.handle = h = function (a) {
+ return typeof p != "undefined" && (!a || p.event.triggered !== a.type) ? p.event.dispatch.apply(h.elem, arguments) : b
+ }, h.elem = a), c = p.trim(_(c)).split(" ");
+ for (j = 0; j < c.length; j++) {
+ k = W.exec(c[j]) || [], l = k[1], m = (k[2] || "").split(".").sort(), r = p.event.special[l] || {}, l = (f ? r.delegateType : r.bindType) || l, r = p.event.special[l] || {}, n = p.extend({type: l, origType: k[1], data: e, handler: d, guid: d.guid, selector: f, namespace: m.join(".")}, o), q = i[l];
+ if (!q) {
+ q = i[l] = [], q.delegateCount = 0;
+ if (!r.setup || r.setup.call(a, e, m, h) === !1)a.addEventListener ? a.addEventListener(l, h, !1) : a.attachEvent && a.attachEvent("on" + l, h)
+ }
+ r.add && (r.add.call(a, n), n.handler.guid || (n.handler.guid = d.guid)), f ? q.splice(q.delegateCount++, 0, n) : q.push(n), p.event.global[l] = !0
+ }
+ a = null
+ }, global: {}, remove: function (a, b, c, d, e) {
+ var f, g, h, i, j, k, l, m, n, o, q, r = p.hasData(a) && p._data(a);
+ if (!r || !(m = r.events))return;
+ b = p.trim(_(b || "")).split(" ");
+ for (f = 0; f < b.length; f++) {
+ g = W.exec(b[f]) || [], h = i = g[1], j = g[2];
+ if (!h) {
+ for (h in m)p.event.remove(a, h + b[f], c, d, !0);
+ continue
+ }
+ n = p.event.special[h] || {}, h = (d ? n.delegateType : n.bindType) || h, o = m[h] || [], k = o.length, j = j ? new RegExp("(^|\\.)" + j.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
+ for (l = 0; l < o.length; l++)q = o[l], (e || i === q.origType) && (!c || c.guid === q.guid) && (!j || j.test(q.namespace)) && (!d || d === q.selector || d === "**" && q.selector) && (o.splice(l--, 1), q.selector && o.delegateCount--, n.remove && n.remove.call(a, q));
+ o.length === 0 && k !== o.length && ((!n.teardown || n.teardown.call(a, j, r.handle) === !1) && p.removeEvent(a, h, r.handle), delete m[h])
+ }
+ p.isEmptyObject(m) && (delete r.handle, p.removeData(a, "events", !0))
+ }, customEvent: {getData: !0, setData: !0, changeData: !0}, trigger: function (c, d, f, g) {
+ if (!f || f.nodeType !== 3 && f.nodeType !== 8) {
+ var h, i, j, k, l, m, n, o, q, r, s = c.type || c, t = [];
+ if ($.test(s + p.event.triggered))return;
+ s.indexOf("!") >= 0 && (s = s.slice(0, -1), i = !0), s.indexOf(".") >= 0 && (t = s.split("."), s = t.shift(), t.sort());
+ if ((!f || p.event.customEvent[s]) && !p.event.global[s])return;
+ c = typeof c == "object" ? c[p.expando] ? c : new p.Event(s, c) : new p.Event(s), c.type = s, c.isTrigger = !0, c.exclusive = i, c.namespace = t.join("."), c.namespace_re = c.namespace ? new RegExp("(^|\\.)" + t.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, m = s.indexOf(":") < 0 ? "on" + s : "";
+ if (!f) {
+ h = p.cache;
+ for (j in h)h[j].events && h[j].events[s] && p.event.trigger(c, d, h[j].handle.elem, !0);
+ return
+ }
+ c.result = b, c.target || (c.target = f), d = d != null ? p.makeArray(d) : [], d.unshift(c), n = p.event.special[s] || {};
+ if (n.trigger && n.trigger.apply(f, d) === !1)return;
+ q = [
+ [f, n.bindType || s]
+ ];
+ if (!g && !n.noBubble && !p.isWindow(f)) {
+ r = n.delegateType || s, k = $.test(r + s) ? f : f.parentNode;
+ for (l = f; k; k = k.parentNode)q.push([k, r]), l = k;
+ l === (f.ownerDocument || e) && q.push([l.defaultView || l.parentWindow || a, r])
+ }
+ for (j = 0; j < q.length && !c.isPropagationStopped(); j++)k = q[j][0], c.type = q[j][1], o = (p._data(k, "events") || {})[c.type] && p._data(k, "handle"), o && o.apply(k, d), o = m && k[m], o && p.acceptData(k) && o.apply(k, d) === !1 && c.preventDefault();
+ return c.type = s, !g && !c.isDefaultPrevented() && (!n._default || n._default.apply(f.ownerDocument, d) === !1) && (s !== "click" || !p.nodeName(f, "a")) && p.acceptData(f) && m && f[s] && (s !== "focus" && s !== "blur" || c.target.offsetWidth !== 0) && !p.isWindow(f) && (l = f[m], l && (f[m] = null), p.event.triggered = s, f[s](), p.event.triggered = b, l && (f[m] = l)), c.result
+ }
+ return
+ }, dispatch: function (c) {
+ c = p.event.fix(c || a.event);
+ var d, e, f, g, h, i, j, k, l, m, n, o = (p._data(this, "events") || {})[c.type] || [], q = o.delegateCount, r = [].slice.call(arguments), s = !c.exclusive && !c.namespace, t = p.event.special[c.type] || {}, u = [];
+ r[0] = c, c.delegateTarget = this;
+ if (t.preDispatch && t.preDispatch.call(this, c) === !1)return;
+ if (q && (!c.button || c.type !== "click")) {
+ g = p(this), g.context = this;
+ for (f = c.target; f != this; f = f.parentNode || this)if (f.disabled !== !0 || c.type !== "click") {
+ i = {}, k = [], g[0] = f;
+ for (d = 0; d < q; d++)l = o[d], m = l.selector, i[m] === b && (i[m] = g.is(m)), i[m] && k.push(l);
+ k.length && u.push({elem: f, matches: k})
+ }
+ }
+ o.length > q && u.push({elem: this, matches: o.slice(q)});
+ for (d = 0; d < u.length && !c.isPropagationStopped(); d++) {
+ j = u[d], c.currentTarget = j.elem;
+ for (e = 0; e < j.matches.length && !c.isImmediatePropagationStopped(); e++) {
+ l = j.matches[e];
+ if (s || !c.namespace && !l.namespace || c.namespace_re && c.namespace_re.test(l.namespace))c.data = l.data, c.handleObj = l, h = ((p.event.special[l.origType] || {}).handle || l.handler).apply(j.elem, r), h !== b && (c.result = h, h === !1 && (c.preventDefault(), c.stopPropagation()))
+ }
+ }
+ return t.postDispatch && t.postDispatch.call(this, c), c.result
+ }, props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), fixHooks: {}, keyHooks: {props: "char charCode key keyCode".split(" "), filter: function (a, b) {
+ return a.which == null && (a.which = b.charCode != null ? b.charCode : b.keyCode), a
+ }}, mouseHooks: {props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "), filter: function (a, c) {
+ var d, f, g, h = c.button, i = c.fromElement;
+ return a.pageX == null && c.clientX != null && (d = a.target.ownerDocument || e, f = d.documentElement, g = d.body, a.pageX = c.clientX + (f && f.scrollLeft || g && g.scrollLeft || 0) - (f && f.clientLeft || g && g.clientLeft || 0), a.pageY = c.clientY + (f && f.scrollTop || g && g.scrollTop || 0) - (f && f.clientTop || g && g.clientTop || 0)), !a.relatedTarget && i && (a.relatedTarget = i === a.target ? c.toElement : i), !a.which && h !== b && (a.which = h & 1 ? 1 : h & 2 ? 3 : h & 4 ? 2 : 0), a
+ }}, fix: function (a) {
+ if (a[p.expando])return a;
+ var b, c, d = a, f = p.event.fixHooks[a.type] || {}, g = f.props ? this.props.concat(f.props) : this.props;
+ a = p.Event(d);
+ for (b = g.length; b;)c = g[--b], a[c] = d[c];
+ return a.target || (a.target = d.srcElement || e), a.target.nodeType === 3 && (a.target = a.target.parentNode), a.metaKey = !!a.metaKey, f.filter ? f.filter(a, d) : a
+ }, special: {ready: {setup: p.bindReady}, load: {noBubble: !0}, focus: {delegateType: "focusin"}, blur: {delegateType: "focusout"}, beforeunload: {setup: function (a, b, c) {
+ p.isWindow(this) && (this.onbeforeunload = c)
+ }, teardown: function (a, b) {
+ this.onbeforeunload === b && (this.onbeforeunload = null)
+ }}}, simulate: function (a, b, c, d) {
+ var e = p.extend(new p.Event, c, {type: a, isSimulated: !0, originalEvent: {}});
+ d ? p.event.trigger(e, null, b) : p.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault()
+ }}, p.event.handle = p.event.dispatch, p.removeEvent = e.removeEventListener ? function (a, b, c) {
+ a.removeEventListener && a.removeEventListener(b, c, !1)
+ } : function (a, b, c) {
+ var d = "on" + b;
+ a.detachEvent && (typeof a[d] == "undefined" && (a[d] = null), a.detachEvent(d, c))
+ }, p.Event = function (a, b) {
+ if (this instanceof p.Event)a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault() ? bb : ba) : this.type = a, b && p.extend(this, b), this.timeStamp = a && a.timeStamp || p.now(), this[p.expando] = !0; else return new p.Event(a, b)
+ }, p.Event.prototype = {preventDefault: function () {
+ this.isDefaultPrevented = bb;
+ var a = this.originalEvent;
+ if (!a)return;
+ a.preventDefault ? a.preventDefault() : a.returnValue = !1
+ }, stopPropagation: function () {
+ this.isPropagationStopped = bb;
+ var a = this.originalEvent;
+ if (!a)return;
+ a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0
+ }, stopImmediatePropagation: function () {
+ this.isImmediatePropagationStopped = bb, this.stopPropagation()
+ }, isDefaultPrevented: ba, isPropagationStopped: ba, isImmediatePropagationStopped: ba}, p.each({mouseenter: "mouseover", mouseleave: "mouseout"}, function (a, b) {
+ p.event.special[a] = {delegateType: b, bindType: b, handle: function (a) {
+ var c, d = this, e = a.relatedTarget, f = a.handleObj, g = f.selector;
+ if (!e || e !== d && !p.contains(d, e))a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b;
+ return c
+ }}
+ }), p.support.submitBubbles || (p.event.special.submit = {setup: function () {
+ if (p.nodeName(this, "form"))return!1;
+ p.event.add(this, "click._submit keypress._submit", function (a) {
+ var c = a.target, d = p.nodeName(c, "input") || p.nodeName(c, "button") ? c.form : b;
+ d && !p._data(d, "_submit_attached") && (p.event.add(d, "submit._submit", function (a) {
+ a._submit_bubble = !0
+ }), p._data(d, "_submit_attached", !0))
+ })
+ }, postDispatch: function (a) {
+ a._submit_bubble && (delete a._submit_bubble, this.parentNode && !a.isTrigger && p.event.simulate("submit", this.parentNode, a, !0))
+ }, teardown: function () {
+ if (p.nodeName(this, "form"))return!1;
+ p.event.remove(this, "._submit")
+ }}), p.support.changeBubbles || (p.event.special.change = {setup: function () {
+ if (V.test(this.nodeName)) {
+ if (this.type === "checkbox" || this.type === "radio")p.event.add(this, "propertychange._change", function (a) {
+ a.originalEvent.propertyName === "checked" && (this._just_changed = !0)
+ }), p.event.add(this, "click._change", function (a) {
+ this._just_changed && !a.isTrigger && (this._just_changed = !1), p.event.simulate("change", this, a, !0)
+ });
+ return!1
+ }
+ p.event.add(this, "beforeactivate._change", function (a) {
+ var b = a.target;
+ V.test(b.nodeName) && !p._data(b, "_change_attached") && (p.event.add(b, "change._change", function (a) {
+ this.parentNode && !a.isSimulated && !a.isTrigger && p.event.simulate("change", this.parentNode, a, !0)
+ }), p._data(b, "_change_attached", !0))
+ })
+ }, handle: function (a) {
+ var b = a.target;
+ if (this !== b || a.isSimulated || a.isTrigger || b.type !== "radio" && b.type !== "checkbox")return a.handleObj.handler.apply(this, arguments)
+ }, teardown: function () {
+ return p.event.remove(this, "._change"), V.test(this.nodeName)
+ }}), p.support.focusinBubbles || p.each({focus: "focusin", blur: "focusout"}, function (a, b) {
+ var c = 0, d = function (a) {
+ p.event.simulate(b, a.target, p.event.fix(a), !0)
+ };
+ p.event.special[b] = {setup: function () {
+ c++ === 0 && e.addEventListener(a, d, !0)
+ }, teardown: function () {
+ --c === 0 && e.removeEventListener(a, d, !0)
+ }}
+ }), p.fn.extend({on: function (a, c, d, e, f) {
+ var g, h;
+ if (typeof a == "object") {
+ typeof c != "string" && (d = d || c, c = b);
+ for (h in a)this.on(h, c, d, a[h], f);
+ return this
+ }
+ d == null && e == null ? (e = c, d = c = b) : e == null && (typeof c == "string" ? (e = d, d = b) : (e = d, d = c, c = b));
+ if (e === !1)e = ba; else if (!e)return this;
+ return f === 1 && (g = e, e = function (a) {
+ return p().off(a), g.apply(this, arguments)
+ }, e.guid = g.guid || (g.guid = p.guid++)), this.each(function () {
+ p.event.add(this, a, e, d, c)
+ })
+ }, one: function (a, b, c, d) {
+ return this.on(a, b, c, d, 1)
+ }, off: function (a, c, d) {
+ var e, f;
+ if (a && a.preventDefault && a.handleObj)return e = a.handleObj, p(a.delegateTarget).off(e.namespace ? e.origType + "." + e.namespace : e.origType, e.selector, e.handler), this;
+ if (typeof a == "object") {
+ for (f in a)this.off(f, c, a[f]);
+ return this
+ }
+ if (c === !1 || typeof c == "function")d = c, c = b;
+ return d === !1 && (d = ba), this.each(function () {
+ p.event.remove(this, a, d, c)
+ })
+ }, bind: function (a, b, c) {
+ return this.on(a, null, b, c)
+ }, unbind: function (a, b) {
+ return this.off(a, null, b)
+ }, live: function (a, b, c) {
+ return p(this.context).on(a, this.selector, b, c), this
+ }, die: function (a, b) {
+ return p(this.context).off(a, this.selector || "**", b), this
+ }, delegate: function (a, b, c, d) {
+ return this.on(b, a, c, d)
+ }, undelegate: function (a, b, c) {
+ return arguments.length == 1 ? this.off(a, "**") : this.off(b, a || "**", c)
+ }, trigger: function (a, b) {
+ return this.each(function () {
+ p.event.trigger(a, b, this)
+ })
+ }, triggerHandler: function (a, b) {
+ if (this[0])return p.event.trigger(a, b, this[0], !0)
+ }, toggle: function (a) {
+ var b = arguments, c = a.guid || p.guid++, d = 0, e = function (c) {
+ var e = (p._data(this, "lastToggle" + a.guid) || 0) % d;
+ return p._data(this, "lastToggle" + a.guid, e + 1), c.preventDefault(), b[e].apply(this, arguments) || !1
+ };
+ e.guid = c;
+ while (d < b.length)b[d++].guid = c;
+ return this.click(e)
+ }, hover: function (a, b) {
+ return this.mouseenter(a).mouseleave(b || a)
+ }}), p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function (a, b) {
+ p.fn[b] = function (a, c) {
+ return c == null && (c = a, a = null), arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b)
+ }, Y.test(b) && (p.event.fixHooks[b] = p.event.keyHooks), Z.test(b) && (p.event.fixHooks[b] = p.event.mouseHooks)
+ }), function (a, b) {
+ function bd(a, b, c, d) {
+ var e = 0, f = b.length;
+ for (; e < f; e++)Z(a, b[e], c, d)
+ }
+
+ function be(a, b, c, d, e, f) {
+ var g, h = $.setFilters[b.toLowerCase()];
+ return h || Z.error(b), (a || !(g = e)) && bd(a || "*", d, g = [], e), g.length > 0 ? h(g, c, f) : []
+ }
+
+ function bf(a, c, d, e, f) {
+ var g, h, i, j, k, l, m, n, p = 0, q = f.length, s = L.POS, t = new RegExp("^" + s.source + "(?!" + r + ")", "i"), u = function () {
+ var a = 1, c = arguments.length - 2;
+ for (; a < c; a++)arguments[a] === b && (g[a] = b)
+ };
+ for (; p < q; p++) {
+ s.exec(""), a = f[p], j = [], i = 0, k = e;
+ while (g = s.exec(a)) {
+ n = s.lastIndex = g.index + g[0].length;
+ if (n > i) {
+ m = a.slice(i, g.index), i = n, l = [c], B.test(m) && (k && (l = k), k = e);
+ if (h = H.test(m))m = m.slice(0, -5).replace(B, "$&*");
+ g.length > 1 && g[0].replace(t, u), k = be(m, g[1], g[2], l, k, h)
+ }
+ }
+ k ? (j = j.concat(k), (m = a.slice(i)) && m !== ")" ? B.test(m) ? bd(m, j, d, e) : Z(m, c, d, e ? e.concat(k) : k) : o.apply(d, j)) : Z(a, c, d, e)
+ }
+ return q === 1 ? d : Z.uniqueSort(d)
+ }
+
+ function bg(a, b, c) {
+ var d, e, f, g = [], i = 0, j = D.exec(a), k = !j.pop() && !j.pop(), l = k && a.match(C) || [""], m = $.preFilter, n = $.filter, o = !c && b !== h;
+ for (; (e = l[i]) != null && k; i++) {
+ g.push(d = []), o && (e = " " + e);
+ while (e) {
+ k = !1;
+ if (j = B.exec(e))e = e.slice(j[0].length), k = d.push({part: j.pop().replace(A, " "), captures: j});
+ for (f in n)(j = L[f].exec(e)) && (!m[f] || (j = m[f](j, b, c))) && (e = e.slice(j.shift().length), k = d.push({part: f, captures: j}));
+ if (!k)break
+ }
+ }
+ return k || Z.error(a), g
+ }
+
+ function bh(a, b, e) {
+ var f = b.dir, g = m++;
+ return a || (a = function (a) {
+ return a === e
+ }), b.first ? function (b, c) {
+ while (b = b[f])if (b.nodeType === 1)return a(b, c) && b
+ } : function (b, e) {
+ var h, i = g + "." + d, j = i + "." + c;
+ while (b = b[f])if (b.nodeType === 1) {
+ if ((h = b[q]) === j)return b.sizset;
+ if (typeof h == "string" && h.indexOf(i) === 0) {
+ if (b.sizset)return b
+ } else {
+ b[q] = j;
+ if (a(b, e))return b.sizset = !0, b;
+ b.sizset = !1
+ }
+ }
+ }
+ }
+
+ function bi(a, b) {
+ return a ? function (c, d) {
+ var e = b(c, d);
+ return e && a(e === !0 ? c : e, d)
+ } : b
+ }
+
+ function bj(a, b, c) {
+ var d, e, f = 0;
+ for (; d = a[f]; f++)$.relative[d.part] ? e = bh(e, $.relative[d.part], b) : (d.captures.push(b, c), e = bi(e, $.filter[d.part].apply(null, d.captures)));
+ return e
+ }
+
+ function bk(a) {
+ return function (b, c) {
+ var d, e = 0;
+ for (; d = a[e]; e++)if (d(b, c))return!0;
+ return!1
+ }
+ }
+
+ var c, d, e, f, g, h = a.document, i = h.documentElement, j = "undefined", k = !1, l = !0, m = 0, n = [].slice, o = [].push, q = ("sizcache" + Math.random()).replace(".", ""), r = "[\\x20\\t\\r\\n\\f]", s = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+", t = s.replace("w", "w#"), u = "([*^$|!~]?=)", v = "\\[" + r + "*(" + s + ")" + r + "*(?:" + u + r + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + t + ")|)|)" + r + "*\\]", w = ":(" + s + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)", x = ":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)", y = r + "*([\\x20\\t\\r\\n\\f>+~])" + r + "*", z = "(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|" + v + "|" + w.replace(2, 7) + "|[^\\\\(),])+", A = new RegExp("^" + r + "+|((?:^|[^\\\\])(?:\\\\.)*)" + r + "+$", "g"), B = new RegExp("^" + y), C = new RegExp(z + "?(?=" + r + "*,|$)", "g"), D = new RegExp("^(?:(?!,)(?:(?:^|,)" + r + "*" + z + ")*?|" + r + "*(.*?))(\\)|$)"), E = new RegExp(z.slice(19, -6) + "\\x20\\t\\r\\n\\f>+~])+|" + y, "g"), F = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/, G = /[\x20\t\r\n\f]*[+~]/, H = /:not\($/, I = /h\d/i, J = /input|select|textarea|button/i, K = /\\(?!\\)/g, L = {ID: new RegExp("^#(" + s + ")"), CLASS: new RegExp("^\\.(" + s + ")"), NAME: new RegExp("^\\[name=['\"]?(" + s + ")['\"]?\\]"), TAG: new RegExp("^(" + s.replace("[-", "[-\\*") + ")"), ATTR: new RegExp("^" + v), PSEUDO: new RegExp("^" + w), CHILD: new RegExp("^:(only|nth|last|first)-child(?:\\(" + r + "*(even|odd|(([+-]|)(\\d*)n|)" + r + "*(?:([+-]|)" + r + "*(\\d+)|))" + r + "*\\)|)", "i"), POS: new RegExp(x, "ig"), needsContext: new RegExp("^" + r + "*[>+~]|" + x, "i")}, M = {}, N = [], O = {}, P = [], Q = function (a) {
+ return a.sizzleFilter = !0, a
+ }, R = function (a) {
+ return function (b) {
+ return b.nodeName.toLowerCase() === "input" && b.type === a
+ }
+ }, S = function (a) {
+ return function (b) {
+ var c = b.nodeName.toLowerCase();
+ return(c === "input" || c === "button") && b.type === a
+ }
+ }, T = function (a) {
+ var b = !1, c = h.createElement("div");
+ try {
+ b = a(c)
+ } catch (d) {
+ }
+ return c = null, b
+ }, U = T(function (a) {
+ a.innerHTML = "<select></select>";
+ var b = typeof a.lastChild.getAttribute("multiple");
+ return b !== "boolean" && b !== "string"
+ }), V = T(function (a) {
+ a.id = q + 0, a.innerHTML = "<a name='" + q + "'></a><div name='" + q + "'></div>", i.insertBefore(a, i.firstChild);
+ var b = h.getElementsByName && h.getElementsByName(q).length === 2 + h.getElementsByName(q + 0).length;
+ return g = !h.getElementById(q), i.removeChild(a), b
+ }), W = T(function (a) {
+ return a.appendChild(h.createComment("")), a.getElementsByTagName("*").length === 0
+ }), X = T(function (a) {
+ return a.innerHTML = "<a href='#'></a>", a.firstChild && typeof a.firstChild.getAttribute !== j && a.firstChild.getAttribute("href") === "#"
+ }), Y = T(function (a) {
+ return a.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>", !a.getElementsByClassName || a.getElementsByClassName("e").length === 0 ? !1 : (a.lastChild.className = "e", a.getElementsByClassName("e").length !== 1)
+ }), Z = function (a, b, c, d) {
+ c = c || [], b = b || h;
+ var e, f, g, i, j = b.nodeType;
+ if (j !== 1 && j !== 9)return[];
+ if (!a || typeof a != "string")return c;
+ g = ba(b);
+ if (!g && !d)if (e = F.exec(a))if (i = e[1]) {
+ if (j === 9) {
+ f = b.getElementById(i);
+ if (!f || !f.parentNode)return c;
+ if (f.id === i)return c.push(f), c
+ } else if (b.ownerDocument && (f = b.ownerDocument.getElementById(i)) && bb(b, f) && f.id === i)return c.push(f), c
+ } else {
+ if (e[2])return o.apply(c, n.call(b.getElementsByTagName(a), 0)), c;
+ if ((i = e[3]) && Y && b.getElementsByClassName)return o.apply(c, n.call(b.getElementsByClassName(i), 0)), c
+ }
+ return bm(a, b, c, d, g)
+ }, $ = Z.selectors = {cacheLength: 50, match: L, order: ["ID", "TAG"], attrHandle: {}, createPseudo: Q, find: {ID: g ? function (a, b, c) {
+ if (typeof b.getElementById !== j && !c) {
+ var d = b.getElementById(a);
+ return d && d.parentNode ? [d] : []
+ }
+ } : function (a, c, d) {
+ if (typeof c.getElementById !== j && !d) {
+ var e = c.getElementById(a);
+ return e ? e.id === a || typeof e.getAttributeNode !== j && e.getAttributeNode("id").value === a ? [e] : b : []
+ }
+ }, TAG: W ? function (a, b) {
+ if (typeof b.getElementsByTagName !== j)return b.getElementsByTagName(a)
+ } : function (a, b) {
+ var c = b.getElementsByTagName(a);
+ if (a === "*") {
+ var d, e = [], f = 0;
+ for (; d = c[f]; f++)d.nodeType === 1 && e.push(d);
+ return e
+ }
+ return c
+ }}, relative: {">": {dir: "parentNode", first: !0}, " ": {dir: "parentNode"}, "+": {dir: "previousSibling", first: !0}, "~": {dir: "previousSibling"}}, preFilter: {ATTR: function (a) {
+ return a[1] = a[1].replace(K, ""), a[3] = (a[4] || a[5] || "").replace(K, ""), a[2] === "~=" && (a[3] = " " + a[3] + " "), a.slice(0, 4)
+ }, CHILD: function (a) {
+ return a[1] = a[1].toLowerCase(), a[1] === "nth" ? (a[2] || Z.error(a[0]), a[3] = +(a[3] ? a[4] + (a[5] || 1) : 2 * (a[2] === "even" || a[2] === "odd")), a[4] = +(a[6] + a[7] || a[2] === "odd")) : a[2] && Z.error(a[0]), a
+ }, PSEUDO: function (a) {
+ var b, c = a[4];
+ return L.CHILD.test(a[0]) ? null : (c && (b = D.exec(c)) && b.pop() && (a[0] = a[0].slice(0, b[0].length - c.length - 1), c = b[0].slice(0, -1)), a.splice(2, 3, c || a[3]), a)
+ }}, filter: {ID: g ? function (a) {
+ return a = a.replace(K, ""), function (b) {
+ return b.getAttribute("id") === a
+ }
+ } : function (a) {
+ return a = a.replace(K, ""), function (b) {
+ var c = typeof b.getAttributeNode !== j && b.getAttributeNode("id");
+ return c && c.value === a
+ }
+ }, TAG: function (a) {
+ return a === "*" ? function () {
+ return!0
+ } : (a = a.replace(K, "").toLowerCase(), function (b) {
+ return b.nodeName && b.nodeName.toLowerCase() === a
+ })
+ }, CLASS: function (a) {
+ var b = M[a];
+ return b || (b = M[a] = new RegExp("(^|" + r + ")" + a + "(" + r + "|$)"), N.push(a), N.length > $.cacheLength && delete M[N.shift()]), function (a) {
+ return b.test(a.className || typeof a.getAttribute !== j && a.getAttribute("class") || "")
+ }
+ }, ATTR: function (a, b, c) {
+ return b ? function (d) {
+ var e = Z.attr(d, a), f = e + "";
+ if (e == null)return b === "!=";
+ switch (b) {
+ case"=":
+ return f === c;
+ case"!=":
+ return f !== c;
+ case"^=":
+ return c && f.indexOf(c) === 0;
+ case"*=":
+ return c && f.indexOf(c) > -1;
+ case"$=":
+ return c && f.substr(f.length - c.length) === c;
+ case"~=":
+ return(" " + f + " ").indexOf(c) > -1;
+ case"|=":
+ return f === c || f.substr(0, c.length + 1) === c + "-"
+ }
+ } : function (b) {
+ return Z.attr(b, a) != null
+ }
+ }, CHILD: function (a, b, c, d) {
+ if (a === "nth") {
+ var e = m++;
+ return function (a) {
+ var b, f, g = 0, h = a;
+ if (c === 1 && d === 0)return!0;
+ b = a.parentNode;
+ if (b && (b[q] !== e || !a.sizset)) {
+ for (h = b.firstChild; h; h = h.nextSibling)if (h.nodeType === 1) {
+ h.sizset = ++g;
+ if (h === a)break
+ }
+ b[q] = e
+ }
+ return f = a.sizset - d, c === 0 ? f === 0 : f % c === 0 && f / c >= 0
+ }
+ }
+ return function (b) {
+ var c = b;
+ switch (a) {
+ case"only":
+ case"first":
+ while (c = c.previousSibling)if (c.nodeType === 1)return!1;
+ if (a === "first")return!0;
+ c = b;
+ case"last":
+ while (c = c.nextSibling)if (c.nodeType === 1)return!1;
+ return!0
+ }
+ }
+ }, PSEUDO: function (a, b, c, d) {
+ var e = $.pseudos[a] || $.pseudos[a.toLowerCase()];
+ return e || Z.error("unsupported pseudo: " + a), e.sizzleFilter ? e(b, c, d) : e
+ }}, pseudos: {not: Q(function (a, b, c) {
+ var d = bl(a.replace(A, "$1"), b, c);
+ return function (a) {
+ return!d(a)
+ }
+ }), enabled: function (a) {
+ return a.disabled === !1
+ }, disabled: function (a) {
+ return a.disabled === !0
+ }, checked: function (a) {
+ var b = a.nodeName.toLowerCase();
+ return b === "input" && !!a.checked || b === "option" && !!a.selected
+ }, selected: function (a) {
+ return a.parentNode && a.parentNode.selectedIndex, a.selected === !0
+ }, parent: function (a) {
+ return!$.pseudos.empty(a)
+ }, empty: function (a) {
+ var b;
+ a = a.firstChild;
+ while (a) {
+ if (a.nodeName > "@" || (b = a.nodeType) === 3 || b === 4)return!1;
+ a = a.nextSibling
+ }
+ return!0
+ }, contains: Q(function (a) {
+ return function (b) {
+ return(b.textContent || b.innerText || bc(b)).indexOf(a) > -1
+ }
+ }), has: Q(function (a) {
+ return function (b) {
+ return Z(a, b).length > 0
+ }
+ }), header: function (a) {
+ return I.test(a.nodeName)
+ }, text: function (a) {
+ var b, c;
+ return a.nodeName.toLowerCase() === "input" && (b = a.type) === "text" && ((c = a.getAttribute("type")) == null || c.toLowerCase() === b)
+ }, radio: R("radio"), checkbox: R("checkbox"), file: R("file"), password: R("password"), image: R("image"), submit: S("submit"), reset: S("reset"), button: function (a) {
+ var b = a.nodeName.toLowerCase();
+ return b === "input" && a.type === "button" || b === "button"
+ }, input: function (a) {
+ return J.test(a.nodeName)
+ }, focus: function (a) {
+ var b = a.ownerDocument;
+ return a === b.activeElement && (!b.hasFocus || b.hasFocus()) && (!!a.type || !!a.href)
+ }, active: function (a) {
+ return a === a.ownerDocument.activeElement
+ }}, setFilters: {first: function (a, b, c) {
+ return c ? a.slice(1) : [a[0]]
+ }, last: function (a, b, c) {
+ var d = a.pop();
+ return c ? a : [d]
+ }, even: function (a, b, c) {
+ var d = [], e = c ? 1 : 0, f = a.length;
+ for (; e < f; e = e + 2)d.push(a[e]);
+ return d
+ }, odd: function (a, b, c) {
+ var d = [], e = c ? 0 : 1, f = a.length;
+ for (; e < f; e = e + 2)d.push(a[e]);
+ return d
+ }, lt: function (a, b, c) {
+ return c ? a.slice(+b) : a.slice(0, +b)
+ }, gt: function (a, b, c) {
+ return c ? a.slice(0, +b + 1) : a.slice(+b + 1)
+ }, eq: function (a, b, c) {
+ var d = a.splice(+b, 1);
+ return c ? a : d
+ }}};
+ $.setFilters.nth = $.setFilters.eq, $.filters = $.pseudos, X || ($.attrHandle = {href: function (a) {
+ return a.getAttribute("href", 2)
+ }, type: function (a) {
+ return a.getAttribute("type")
+ }}), V && ($.order.push("NAME"), $.find.NAME = function (a, b) {
+ if (typeof b.getElementsByName !== j)return b.getElementsByName(a)
+ }), Y && ($.order.splice(1, 0, "CLASS"), $.find.CLASS = function (a, b, c) {
+ if (typeof b.getElementsByClassName !== j && !c)return b.getElementsByClassName(a)
+ });
+ try {
+ n.call(i.childNodes, 0)[0].nodeType
+ } catch (_) {
+ n = function (a) {
+ var b, c = [];
+ for (; b = this[a]; a++)c.push(b);
+ return c
+ }
+ }
+ var ba = Z.isXML = function (a) {
+ var b = a && (a.ownerDocument || a).documentElement;
+ return b ? b.nodeName !== "HTML" : !1
+ }, bb = Z.contains = i.compareDocumentPosition ? function (a, b) {
+ return!!(a.compareDocumentPosition(b) & 16)
+ } : i.contains ? function (a, b) {
+ var c = a.nodeType === 9 ? a.documentElement : a, d = b.parentNode;
+ return a === d || !!(d && d.nodeType === 1 && c.contains && c.contains(d))
+ } : function (a, b) {
+ while (b = b.parentNode)if (b === a)return!0;
+ return!1
+ }, bc = Z.getText = function (a) {
+ var b, c = "", d = 0, e = a.nodeType;
+ if (e) {
+ if (e === 1 || e === 9 || e === 11) {
+ if (typeof a.textContent == "string")return a.textContent;
+ for (a = a.firstChild; a; a = a.nextSibling)c += bc(a)
+ } else if (e === 3 || e === 4)return a.nodeValue
+ } else for (; b = a[d]; d++)c += bc(b);
+ return c
+ };
+ Z.attr = function (a, b) {
+ var c, d = ba(a);
+ return d || (b = b.toLowerCase()), $.attrHandle[b] ? $.attrHandle[b](a) : U || d ? a.getAttribute(b) : (c = a.getAttributeNode(b), c ? typeof a[b] == "boolean" ? a[b] ? b : null : c.specified ? c.value : null : null)
+ }, Z.error = function (a) {
+ throw new Error("Syntax error, unrecognized expression: " + a)
+ }, [0, 0].sort(function () {
+ return l = 0
+ }), i.compareDocumentPosition ? e = function (a, b) {
+ return a === b ? (k = !0, 0) : (!a.compareDocumentPosition || !b.compareDocumentPosition ? a.compareDocumentPosition : a.compareDocumentPosition(b) & 4) ? -1 : 1
+ } : (e = function (a, b) {
+ if (a === b)return k = !0, 0;
+ if (a.sourceIndex && b.sourceIndex)return a.sourceIndex - b.sourceIndex;
+ var c, d, e = [], g = [], h = a.parentNode, i = b.parentNode, j = h;
+ if (h === i)return f(a, b);
+ if (!h)return-1;
+ if (!i)return 1;
+ while (j)e.unshift(j), j = j.parentNode;
+ j = i;
+ while (j)g.unshift(j), j = j.parentNode;
+ c = e.length, d = g.length;
+ for (var l = 0; l < c && l < d; l++)if (e[l] !== g[l])return f(e[l], g[l]);
+ return l === c ? f(a, g[l], -1) : f(e[l], b, 1)
+ }, f = function (a, b, c) {
+ if (a === b)return c;
+ var d = a.nextSibling;
+ while (d) {
+ if (d === b)return-1;
+ d = d.nextSibling
+ }
+ return 1
+ }), Z.uniqueSort = function (a) {
+ var b, c = 1;
+ if (e) {
+ k = l, a.sort(e);
+ if (k)for (; b = a[c]; c++)b === a[c - 1] && a.splice(c--, 1)
+ }
+ return a
+ };
+ var bl = Z.compile = function (a, b, c) {
+ var d, e, f, g = O[a];
+ if (g && g.context === b)return g;
+ e = bg(a, b, c);
+ for (f = 0; d = e[f]; f++)e[f] = bj(d, b, c);
+ return g = O[a] = bk(e), g.context = b, g.runs = g.dirruns = 0, P.push(a), P.length > $.cacheLength && delete O[P.shift()], g
+ };
+ Z.matches = function (a, b) {
+ return Z(a, null, null, b)
+ }, Z.matchesSelector = function (a, b) {
+ return Z(b, null, null, [a]).length > 0
+ };
+ var bm = function (a, b, e, f, g) {
+ a = a.replace(A, "$1");
+ var h, i, j, k, l, m, p, q, r, s = a.match(C), t = a.match(E), u = b.nodeType;
+ if (L.POS.test(a))return bf(a, b, e, f, s);
+ if (f)h = n.call(f, 0); else if (s && s.length === 1) {
+ if (t.length > 1 && u === 9 && !g && (s = L.ID.exec(t[0]))) {
+ b = $.find.ID(s[1], b, g)[0];
+ if (!b)return e;
+ a = a.slice(t.shift().length)
+ }
+ q = (s = G.exec(t[0])) && !s.index && b.parentNode || b, r = t.pop(), m = r.split(":not")[0];
+ for (j = 0, k = $.order.length; j < k; j++) {
+ p = $.order[j];
+ if (s = L[p].exec(m)) {
+ h = $.find[p]((s[1] || "").replace(K, ""), q, g);
+ if (h == null)continue;
+ m === r && (a = a.slice(0, a.length - r.length) + m.replace(L[p], ""), a || o.apply(e, n.call(h, 0)));
+ break
+ }
+ }
+ }
+ if (a) {
+ i = bl(a, b, g), d = i.dirruns++, h == null && (h = $.find.TAG("*", G.test(a) && b.parentNode || b));
+ for (j = 0; l = h[j]; j++)c = i.runs++, i(l, b) && e.push(l)
+ }
+ return e
+ };
+ h.querySelectorAll && function () {
+ var a, b = bm, c = /'|\\/g, d = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g, e = [], f = [":active"], g = i.matchesSelector || i.mozMatchesSelector || i.webkitMatchesSelector || i.oMatchesSelector || i.msMatchesSelector;
+ T(function (a) {
+ a.innerHTML = "<select><option selected></option></select>", a.querySelectorAll("[selected]").length || e.push("\\[" + r + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)"), a.querySelectorAll(":checked").length || e.push(":checked")
+ }), T(function (a) {
+ a.innerHTML = "<p test=''></p>", a.querySelectorAll("[test^='']").length && e.push("[*^$]=" + r + "*(?:\"\"|'')"), a.innerHTML = "<input type='hidden'>", a.querySelectorAll(":enabled").length || e.push(":enabled", ":disabled")
+ }), e = e.length && new RegExp(e.join("|")), bm = function (a, d, f, g, h) {
+ if (!g && !h && (!e || !e.test(a)))if (d.nodeType === 9)try {
+ return o.apply(f, n.call(d.querySelectorAll(a), 0)), f
+ } catch (i) {
+ } else if (d.nodeType === 1 && d.nodeName.toLowerCase() !== "object") {
+ var j = d.getAttribute("id"), k = j || q, l = G.test(a) && d.parentNode || d;
+ j ? k = k.replace(c, "\\$&") : d.setAttribute("id", k);
+ try {
+ return o.apply(f, n.call(l.querySelectorAll(a.replace(C, "[id='" + k + "'] $&")), 0)), f
+ } catch (i) {
+ } finally {
+ j || d.removeAttribute("id")
+ }
+ }
+ return b(a, d, f, g, h)
+ }, g && (T(function (b) {
+ a = g.call(b, "div");
+ try {
+ g.call(b, "[test!='']:sizzle"), f.push($.match.PSEUDO)
+ } catch (c) {
+ }
+ }), f = new RegExp(f.join("|")), Z.matchesSelector = function (b, c) {
+ c = c.replace(d, "='$1']");
+ if (!ba(b) && !f.test(c) && (!e || !e.test(c)))try {
+ var h = g.call(b, c);
+ if (h || a || b.document && b.document.nodeType !== 11)return h
+ } catch (i) {
+ }
+ return Z(c, null, null, [b]).length > 0
+ })
+ }(), Z.attr = p.attr, p.find = Z, p.expr = Z.selectors, p.expr[":"] = p.expr.pseudos, p.unique = Z.uniqueSort, p.text = Z.getText, p.isXMLDoc = Z.isXML, p.contains = Z.contains
+ }(a);
+ var bc = /Until$/, bd = /^(?:parents|prev(?:Until|All))/, be = /^.[^:#\[\.,]*$/, bf = p.expr.match.needsContext, bg = {children: !0, contents: !0, next: !0, prev: !0};
+ p.fn.extend({find: function (a) {
+ var b, c, d, e, f, g, h = this;
+ if (typeof a != "string")return p(a).filter(function () {
+ for (b = 0, c = h.length; b < c; b++)if (p.contains(h[b], this))return!0
+ });
+ g = this.pushStack("", "find", a);
+ for (b = 0, c = this.length; b < c; b++) {
+ d = g.length, p.find(a, this[b], g);
+ if (b > 0)for (e = d; e < g.length; e++)for (f = 0; f < d; f++)if (g[f] === g[e]) {
+ g.splice(e--, 1);
+ break
+ }
+ }
+ return g
+ }, has: function (a) {
+ var b, c = p(a, this), d = c.length;
+ return this.filter(function () {
+ for (b = 0; b < d; b++)if (p.contains(this, c[b]))return!0
+ })
+ }, not: function (a) {
+ return this.pushStack(bj(this, a, !1), "not", a)
+ }, filter: function (a) {
+ return this.pushStack(bj(this, a, !0), "filter", a)
+ }, is: function (a) {
+ return!!a && (typeof a == "string" ? bf.test(a) ? p(a, this.context).index(this[0]) >= 0 : p.filter(a, this).length > 0 : this.filter(a).length > 0)
+ }, closest: function (a, b) {
+ var c, d = 0, e = this.length, f = [], g = bf.test(a) || typeof a != "string" ? p(a, b || this.context) : 0;
+ for (; d < e; d++) {
+ c = this[d];
+ while (c && c.ownerDocument && c !== b && c.nodeType !== 11) {
+ if (g ? g.index(c) > -1 : p.find.matchesSelector(c, a)) {
+ f.push(c);
+ break
+ }
+ c = c.parentNode
+ }
+ }
+ return f = f.length > 1 ? p.unique(f) : f, this.pushStack(f, "closest", a)
+ }, index: function (a) {
+ return a ? typeof a == "string" ? p.inArray(this[0], p(a)) : p.inArray(a.jquery ? a[0] : a, this) : this[0] && this[0].parentNode ? this.prevAll().length : -1
+ }, add: function (a, b) {
+ var c = typeof a == "string" ? p(a, b) : p.makeArray(a && a.nodeType ? [a] : a), d = p.merge(this.get(), c);
+ return this.pushStack(bh(c[0]) || bh(d[0]) ? d : p.unique(d))
+ }, addBack: function (a) {
+ return this.add(a == null ? this.prevObject : this.prevObject.filter(a))
+ }}), p.fn.andSelf = p.fn.addBack, p.each({parent: function (a) {
+ var b = a.parentNode;
+ return b && b.nodeType !== 11 ? b : null
+ }, parents: function (a) {
+ return p.dir(a, "parentNode")
+ }, parentsUntil: function (a, b, c) {
+ return p.dir(a, "parentNode", c)
+ }, next: function (a) {
+ return bi(a, "nextSibling")
+ }, prev: function (a) {
+ return bi(a, "previousSibling")
+ }, nextAll: function (a) {
+ return p.dir(a, "nextSibling")
+ }, prevAll: function (a) {
+ return p.dir(a, "previousSibling")
+ }, nextUntil: function (a, b, c) {
+ return p.dir(a, "nextSibling", c)
+ }, prevUntil: function (a, b, c) {
+ return p.dir(a, "previousSibling", c)
+ }, siblings: function (a) {
+ return p.sibling((a.parentNode || {}).firstChild, a)
+ }, children: function (a) {
+ return p.sibling(a.firstChild)
+ }, contents: function (a) {
+ return p.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : p.merge([], a.childNodes)
+ }}, function (a, b) {
+ p.fn[a] = function (c, d) {
+ var e = p.map(this, b, c);
+ return bc.test(a) || (d = c), d && typeof d == "string" && (e = p.filter(d, e)), e = this.length > 1 && !bg[a] ? p.unique(e) : e, this.length > 1 && bd.test(a) && (e = e.reverse()), this.pushStack(e, a, k.call(arguments).join(","))
+ }
+ }), p.extend({filter: function (a, b, c) {
+ return c && (a = ":not(" + a + ")"), b.length === 1 ? p.find.matchesSelector(b[0], a) ? [b[0]] : [] : p.find.matches(a, b)
+ }, dir: function (a, c, d) {
+ var e = [], f = a[c];
+ while (f && f.nodeType !== 9 && (d === b || f.nodeType !== 1 || !p(f).is(d)))f.nodeType === 1 && e.push(f), f = f[c];
+ return e
+ }, sibling: function (a, b) {
+ var c = [];
+ for (; a; a = a.nextSibling)a.nodeType === 1 && a !== b && c.push(a);
+ return c
+ }});
+ var bl = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", bm = / jQuery\d+="(?:null|\d+)"/g, bn = /^\s+/, bo = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, bp = /<([\w:]+)/, bq = /<tbody/i, br = /<|&#?\w+;/, bs = /<(?:script|style|link)/i, bt = /<(?:script|object|embed|option|style)/i, bu = new RegExp("<(?:" + bl + ")[\\s/>]", "i"), bv = /^(?:checkbox|radio)$/, bw = /checked\s*(?:[^=]|=\s*.checked.)/i, bx = /\/(java|ecma)script/i, by = /^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g, bz = {option: [1, "<select multiple='multiple'>", "</select>"], legend: [1, "<fieldset>", "</fieldset>"], thead: [1, "<table>", "</table>"], tr: [2, "<table><tbody>", "</tbody></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], area: [1, "<map>", "</map>"], _default: [0, "", ""]}, bA = bk(e), bB = bA.appendChild(e.createElement("div"));
+ bz.optgroup = bz.option, bz.tbody = bz.tfoot = bz.colgroup = bz.caption = bz.thead, bz.th = bz.td, p.support.htmlSerialize || (bz._default = [1, "X<div>", "</div>"]), p.fn.extend({text: function (a) {
+ return p.access(this, function (a) {
+ return a === b ? p.text(this) : this.empty().append((this[0] && this[0].ownerDocument || e).createTextNode(a))
+ }, null, a, arguments.length)
+ }, wrapAll: function (a) {
+ if (p.isFunction(a))return this.each(function (b) {
+ p(this).wrapAll(a.call(this, b))
+ });
+ if (this[0]) {
+ var b = p(a, this[0].ownerDocument).eq(0).clone(!0);
+ this[0].parentNode && b.insertBefore(this[0]), b.map(function () {
+ var a = this;
+ while (a.firstChild && a.firstChild.nodeType === 1)a = a.firstChild;
+ return a
+ }).append(this)
+ }
+ return this
+ }, wrapInner: function (a) {
+ return p.isFunction(a) ? this.each(function (b) {
+ p(this).wrapInner(a.call(this, b))
+ }) : this.each(function () {
+ var b = p(this), c = b.contents();
+ c.length ? c.wrapAll(a) : b.append(a)
+ })
+ }, wrap: function (a) {
+ var b = p.isFunction(a);
+ return this.each(function (c) {
+ p(this).wrapAll(b ? a.call(this, c) : a)
+ })
+ }, unwrap: function () {
+ return this.parent().each(function () {
+ p.nodeName(this, "body") || p(this).replaceWith(this.childNodes)
+ }).end()
+ }, append: function () {
+ return this.domManip(arguments, !0, function (a) {
+ (this.nodeType === 1 || this.nodeType === 11) && this.appendChild(a)
+ })
+ }, prepend: function () {
+ return this.domManip(arguments, !0, function (a) {
+ (this.nodeType === 1 || this.nodeType === 11) && this.insertBefore(a, this.firstChild)
+ })
+ }, before: function () {
+ if (!bh(this[0]))return this.domManip(arguments, !1, function (a) {
+ this.parentNode.insertBefore(a, this)
+ });
+ if (arguments.length) {
+ var a = p.clean(arguments);
+ return this.pushStack(p.merge(a, this), "before", this.selector)
+ }
+ }, after: function () {
+ if (!bh(this[0]))return this.domManip(arguments, !1, function (a) {
+ this.parentNode.insertBefore(a, this.nextSibling)
+ });
+ if (arguments.length) {
+ var a = p.clean(arguments);
+ return this.pushStack(p.merge(this, a), "after", this.selector)
+ }
+ }, remove: function (a, b) {
+ var c, d = 0;
+ for (; (c = this[d]) != null; d++)if (!a || p.filter(a, [c]).length)!b && c.nodeType === 1 && (p.cleanData(c.getElementsByTagName("*")), p.cleanData([c])), c.parentNode && c.parentNode.removeChild(c);
+ return this
+ }, empty: function () {
+ var a, b = 0;
+ for (; (a = this[b]) != null; b++) {
+ a.nodeType === 1 && p.cleanData(a.getElementsByTagName("*"));
+ while (a.firstChild)a.removeChild(a.firstChild)
+ }
+ return this
+ }, clone: function (a, b) {
+ return a = a == null ? !1 : a, b = b == null ? a : b, this.map(function () {
+ return p.clone(this, a, b)
+ })
+ }, html: function (a) {
+ return p.access(this, function (a) {
+ var c = this[0] || {}, d = 0, e = this.length;
+ if (a === b)return c.nodeType === 1 ? c.innerHTML.replace(bm, "") : b;
+ if (typeof a == "string" && !bs.test(a) && (p.support.htmlSerialize || !bu.test(a)) && (p.support.leadingWhitespace || !bn.test(a)) && !bz[(bp.exec(a) || ["", ""])[1].toLowerCase()]) {
+ a = a.replace(bo, "<$1></$2>");
+ try {
+ for (; d < e; d++)c = this[d] || {}, c.nodeType === 1 && (p.cleanData(c.getElementsByTagName("*")), c.innerHTML = a);
+ c = 0
+ } catch (f) {
+ }
+ }
+ c && this.empty().append(a)
+ }, null, a, arguments.length)
+ }, replaceWith: function (a) {
+ return bh(this[0]) ? this.length ? this.pushStack(p(p.isFunction(a) ? a() : a), "replaceWith", a) : this : p.isFunction(a) ? this.each(function (b) {
+ var c = p(this), d = c.html();
+ c.replaceWith(a.call(this, b, d))
+ }) : (typeof a != "string" && (a = p(a).detach()), this.each(function () {
+ var b = this.nextSibling, c = this.parentNode;
+ p(this).remove(), b ? p(b).before(a) : p(c).append(a)
+ }))
+ }, detach: function (a) {
+ return this.remove(a, !0)
+ }, domManip: function (a, c, d) {
+ a = [].concat.apply([], a);
+ var e, f, g, h, i = 0, j = a[0], k = [], l = this.length;
+ if (!p.support.checkClone && l > 1 && typeof j == "string" && bw.test(j))return this.each(function () {
+ p(this).domManip(a, c, d)
+ });
+ if (p.isFunction(j))return this.each(function (e) {
+ var f = p(this);
+ a[0] = j.call(this, e, c ? f.html() : b), f.domManip(a, c, d)
+ });
+ if (this[0]) {
+ e = p.buildFragment(a, this, k), g = e.fragment, f = g.firstChild, g.childNodes.length === 1 && (g = f);
+ if (f) {
+ c = c && p.nodeName(f, "tr");
+ for (h = e.cacheable || l - 1; i < l; i++)d.call(c && p.nodeName(this[i], "table") ? bC(this[i], "tbody") : this[i], i === h ? g : p.clone(g, !0, !0))
+ }
+ g = f = null, k.length && p.each(k, function (a, b) {
+ b.src ? p.ajax ? p.ajax({url: b.src, type: "GET", dataType: "script", async: !1, global: !1, "throws": !0}) : p.error("no ajax") : p.globalEval((b.text || b.textContent || b.innerHTML || "").replace(by, "")), b.parentNode && b.parentNode.removeChild(b)
+ })
+ }
+ return this
+ }}), p.buildFragment = function (a, c, d) {
+ var f, g, h, i = a[0];
+ return c = c || e, c = (c[0] || c).ownerDocument || c[0] || c, typeof c.createDocumentFragment == "undefined" && (c = e), a.length === 1 && typeof i == "string" && i.length < 512 && c === e && i.charAt(0) === "<" && !bt.test(i) && (p.support.checkClone || !bw.test(i)) && (p.support.html5Clone || !bu.test(i)) && (g = !0, f = p.fragments[i], h = f !== b), f || (f = c.createDocumentFragment(), p.clean(a, c, f, d), g && (p.fragments[i] = h && f)), {fragment: f, cacheable: g}
+ }, p.fragments = {}, p.each({appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith"}, function (a, b) {
+ p.fn[a] = function (c) {
+ var d, e = 0, f = [], g = p(c), h = g.length, i = this.length === 1 && this[0].parentNode;
+ if ((i == null || i && i.nodeType === 11 && i.childNodes.length === 1) && h === 1)return g[b](this[0]), this;
+ for (; e < h; e++)d = (e > 0 ? this.clone(!0) : this).get(), p(g[e])[b](d), f = f.concat(d);
+ return this.pushStack(f, a, g.selector)
+ }
+ }), p.extend({clone: function (a, b, c) {
+ var d, e, f, g;
+ p.support.html5Clone || p.isXMLDoc(a) || !bu.test("<" + a.nodeName + ">") ? g = a.cloneNode(!0) : (bB.innerHTML = a.outerHTML, bB.removeChild(g = bB.firstChild));
+ if ((!p.support.noCloneEvent || !p.support.noCloneChecked) && (a.nodeType === 1 || a.nodeType === 11) && !p.isXMLDoc(a)) {
+ bE(a, g), d = bF(a), e = bF(g);
+ for (f = 0; d[f]; ++f)e[f] && bE(d[f], e[f])
+ }
+ if (b) {
+ bD(a, g);
+ if (c) {
+ d = bF(a), e = bF(g);
+ for (f = 0; d[f]; ++f)bD(d[f], e[f])
+ }
+ }
+ return d = e = null, g
+ }, clean: function (a, b, c, d) {
+ var f, g, h, i, j, k, l, m, n, o, q, r, s = 0, t = [];
+ if (!b || typeof b.createDocumentFragment == "undefined")b = e;
+ for (g = b === e && bA; (h = a[s]) != null; s++) {
+ typeof h == "number" && (h += "");
+ if (!h)continue;
+ if (typeof h == "string")if (!br.test(h))h = b.createTextNode(h); else {
+ g = g || bk(b), l = l || g.appendChild(b.createElement("div")), h = h.replace(bo, "<$1></$2>"), i = (bp.exec(h) || ["", ""])[1].toLowerCase(), j = bz[i] || bz._default, k = j[0], l.innerHTML = j[1] + h + j[2];
+ while (k--)l = l.lastChild;
+ if (!p.support.tbody) {
+ m = bq.test(h), n = i === "table" && !m ? l.firstChild && l.firstChild.childNodes : j[1] === "<table>" && !m ? l.childNodes : [];
+ for (f = n.length - 1; f >= 0; --f)p.nodeName(n[f], "tbody") && !n[f].childNodes.length && n[f].parentNode.removeChild(n[f])
+ }
+ !p.support.leadingWhitespace && bn.test(h) && l.insertBefore(b.createTextNode(bn.exec(h)[0]), l.firstChild), h = l.childNodes, l = g.lastChild
+ }
+ h.nodeType ? t.push(h) : t = p.merge(t, h)
+ }
+ l && (g.removeChild(l), h = l = g = null);
+ if (!p.support.appendChecked)for (s = 0; (h = t[s]) != null; s++)p.nodeName(h, "input") ? bG(h) : typeof h.getElementsByTagName != "undefined" && p.grep(h.getElementsByTagName("input"), bG);
+ if (c) {
+ q = function (a) {
+ if (!a.type || bx.test(a.type))return d ? d.push(a.parentNode ? a.parentNode.removeChild(a) : a) : c.appendChild(a)
+ };
+ for (s = 0; (h = t[s]) != null; s++)if (!p.nodeName(h, "script") || !q(h))c.appendChild(h), typeof h.getElementsByTagName != "undefined" && (r = p.grep(p.merge([], h.getElementsByTagName("script")), q), t.splice.apply(t, [s + 1, 0].concat(r)), s += r.length)
+ }
+ return t
+ }, cleanData: function (a, b) {
+ var c, d, e, f, g = 0, h = p.expando, i = p.cache, j = p.support.deleteExpando, k = p.event.special;
+ for (; (e = a[g]) != null; g++)if (b || p.acceptData(e)) {
+ d = e[h], c = d && i[d];
+ if (c) {
+ if (c.events)for (f in c.events)k[f] ? p.event.remove(e, f) : p.removeEvent(e, f, c.handle);
+ i[d] && (delete i[d], j ? delete e[h] : e.removeAttribute ? e.removeAttribute(h) : e[h] = null, p.deletedIds.push(d))
+ }
+ }
+ }}), function () {
+ var a, b;
+ p.uaMatch = function (a) {
+ a = a.toLowerCase();
+ var b = /(chrome)[ \/]([\w.]+)/.exec(a) || /(webkit)[ \/]([\w.]+)/.exec(a) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a) || /(msie) ([\w.]+)/.exec(a) || a.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a) || [];
+ return{browser: b[1] || "", version: b[2] || "0"}
+ }, a = p.uaMatch(g.userAgent), b = {}, a.browser && (b[a.browser] = !0, b.version = a.version), b.webkit && (b.safari = !0), p.browser = b, p.sub = function () {
+ function a(b, c) {
+ return new a.fn.init(b, c)
+ }
+
+ p.extend(!0, a, this), a.superclass = this, a.fn = a.prototype = this(), a.fn.constructor = a, a.sub = this.sub, a.fn.init = function c(c, d) {
+ return d && d instanceof p && !(d instanceof a) && (d = a(d)), p.fn.init.call(this, c, d, b)
+ }, a.fn.init.prototype = a.fn;
+ var b = a(e);
+ return a
+ }
+ }();
+ var bH, bI, bJ, bK = /alpha\([^)]*\)/i, bL = /opacity=([^)]*)/, bM = /^(top|right|bottom|left)$/, bN = /^margin/, bO = new RegExp("^(" + q + ")(.*)$", "i"), bP = new RegExp("^(" + q + ")(?!px)[a-z%]+$", "i"), bQ = new RegExp("^([-+])=(" + q + ")", "i"), bR = {}, bS = {position: "absolute", visibility: "hidden", display: "block"}, bT = {letterSpacing: 0, fontWeight: 400, lineHeight: 1}, bU = ["Top", "Right", "Bottom", "Left"], bV = ["Webkit", "O", "Moz", "ms"], bW = p.fn.toggle;
+ p.fn.extend({css: function (a, c) {
+ return p.access(this, function (a, c, d) {
+ return d !== b ? p.style(a, c, d) : p.css(a, c)
+ }, a, c, arguments.length > 1)
+ }, show: function () {
+ return bZ(this, !0)
+ }, hide: function () {
+ return bZ(this)
+ }, toggle: function (a, b) {
+ var c = typeof a == "boolean";
+ return p.isFunction(a) && p.isFunction(b) ? bW.apply(this, arguments) : this.each(function () {
+ (c ? a : bY(this)) ? p(this).show() : p(this).hide()
+ })
+ }}), p.extend({cssHooks: {opacity: {get: function (a, b) {
+ if (b) {
+ var c = bH(a, "opacity");
+ return c === "" ? "1" : c
+ }
+ }}}, cssNumber: {fillOpacity: !0, fontWeight: !0, lineHeight: !0, opacity: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0}, cssProps: {"float": p.support.cssFloat ? "cssFloat" : "styleFloat"}, style: function (a, c, d, e) {
+ if (!a || a.nodeType === 3 || a.nodeType === 8 || !a.style)return;
+ var f, g, h, i = p.camelCase(c), j = a.style;
+ c = p.cssProps[i] || (p.cssProps[i] = bX(j, i)), h = p.cssHooks[c] || p.cssHooks[i];
+ if (d === b)return h && "get"in h && (f = h.get(a, !1, e)) !== b ? f : j[c];
+ g = typeof d, g === "string" && (f = bQ.exec(d)) && (d = (f[1] + 1) * f[2] + parseFloat(p.css(a, c)), g = "number");
+ if (d == null || g === "number" && isNaN(d))return;
+ g === "number" && !p.cssNumber[i] && (d += "px");
+ if (!h || !("set"in h) || (d = h.set(a, d, e)) !== b)try {
+ j[c] = d
+ } catch (k) {
+ }
+ }, css: function (a, c, d, e) {
+ var f, g, h, i = p.camelCase(c);
+ return c = p.cssProps[i] || (p.cssProps[i] = bX(a.style, i)), h = p.cssHooks[c] || p.cssHooks[i], h && "get"in h && (f = h.get(a, !0, e)), f === b && (f = bH(a, c)), f === "normal" && c in bT && (f = bT[c]), d || e !== b ? (g = parseFloat(f), d || p.isNumeric(g) ? g || 0 : f) : f
+ }, swap: function (a, b, c) {
+ var d, e, f = {};
+ for (e in b)f[e] = a.style[e], a.style[e] = b[e];
+ d = c.call(a);
+ for (e in b)a.style[e] = f[e];
+ return d
+ }}), a.getComputedStyle ? bH = function (a, b) {
+ var c, d, e, f, g = getComputedStyle(a, null), h = a.style;
+ return g && (c = g[b], c === "" && !p.contains(a.ownerDocument.documentElement, a) && (c = p.style(a, b)), bP.test(c) && bN.test(b) && (d = h.width, e = h.minWidth, f = h.maxWidth, h.minWidth = h.maxWidth = h.width = c, c = g.width, h.width = d, h.minWidth = e, h.maxWidth = f)), c
+ } : e.documentElement.currentStyle && (bH = function (a, b) {
+ var c, d, e = a.currentStyle && a.currentStyle[b], f = a.style;
+ return e == null && f && f[b] && (e = f[b]), bP.test(e) && !bM.test(b) && (c = f.left, d = a.runtimeStyle && a.runtimeStyle.left, d && (a.runtimeStyle.left = a.currentStyle.left), f.left = b === "fontSize" ? "1em" : e, e = f.pixelLeft + "px", f.left = c, d && (a.runtimeStyle.left = d)), e === "" ? "auto" : e
+ }), p.each(["height", "width"], function (a, b) {
+ p.cssHooks[b] = {get: function (a, c, d) {
+ if (c)return a.offsetWidth !== 0 || bH(a, "display") !== "none" ? ca(a, b, d) : p.swap(a, bS, function () {
+ return ca(a, b, d)
+ })
+ }, set: function (a, c, d) {
+ return b$(a, c, d ? b_(a, b, d, p.support.boxSizing && p.css(a, "boxSizing") === "border-box") : 0)
+ }}
+ }), p.support.opacity || (p.cssHooks.opacity = {get: function (a, b) {
+ return bL.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : b ? "1" : ""
+ }, set: function (a, b) {
+ var c = a.style, d = a.currentStyle, e = p.isNumeric(b) ? "alpha(opacity=" + b * 100 + ")" : "", f = d && d.filter || c.filter || "";
+ c.zoom = 1;
+ if (b >= 1 && p.trim(f.replace(bK, "")) === "" && c.removeAttribute) {
+ c.removeAttribute("filter");
+ if (d && !d.filter)return
+ }
+ c.filter = bK.test(f) ? f.replace(bK, e) : f + " " + e
+ }}), p(function () {
+ p.support.reliableMarginRight || (p.cssHooks.marginRight = {get: function (a, b) {
+ return p.swap(a, {display: "inline-block"}, function () {
+ if (b)return bH(a, "marginRight")
+ })
+ }}), !p.support.pixelPosition && p.fn.position && p.each(["top", "left"], function (a, b) {
+ p.cssHooks[b] = {get: function (a, c) {
+ if (c) {
+ var d = bH(a, b);
+ return bP.test(d) ? p(a).position()[b] + "px" : d
+ }
+ }}
+ })
+ }), p.expr && p.expr.filters && (p.expr.filters.hidden = function (a) {
+ return a.offsetWidth === 0 && a.offsetHeight === 0 || !p.support.reliableHiddenOffsets && (a.style && a.style.display || bH(a, "display")) === "none"
+ }, p.expr.filters.visible = function (a) {
+ return!p.expr.filters.hidden(a)
+ }), p.each({margin: "", padding: "", border: "Width"}, function (a, b) {
+ p.cssHooks[a + b] = {expand: function (c) {
+ var d, e = typeof c == "string" ? c.split(" ") : [c], f = {};
+ for (d = 0; d < 4; d++)f[a + bU[d] + b] = e[d] || e[d - 2] || e[0];
+ return f
+ }}, bN.test(a) || (p.cssHooks[a + b].set = b$)
+ });
+ var cc = /%20/g, cd = /\[\]$/, ce = /\r?\n/g, cf = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, cg = /^(?:select|textarea)/i;
+ p.fn.extend({serialize: function () {
+ return p.param(this.serializeArray())
+ }, serializeArray: function () {
+ return this.map(function () {
+ return this.elements ? p.makeArray(this.elements) : this
+ }).filter(function () {
+ return this.name && !this.disabled && (this.checked || cg.test(this.nodeName) || cf.test(this.type))
+ }).map(function (a, b) {
+ var c = p(this).val();
+ return c == null ? null : p.isArray(c) ? p.map(c, function (a, c) {
+ return{name: b.name, value: a.replace(ce, "\r\n")}
+ }) : {name: b.name, value: c.replace(ce, "\r\n")}
+ }).get()
+ }}), p.param = function (a, c) {
+ var d, e = [], f = function (a, b) {
+ b = p.isFunction(b) ? b() : b == null ? "" : b, e[e.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
+ };
+ c === b && (c = p.ajaxSettings && p.ajaxSettings.traditional);
+ if (p.isArray(a) || a.jquery && !p.isPlainObject(a))p.each(a, function () {
+ f(this.name, this.value)
+ }); else for (d in a)ch(d, a[d], c, f);
+ return e.join("&").replace(cc, "+")
+ };
+ var ci, cj, ck = /#.*$/, cl = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, cm = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/, cn = /^(?:GET|HEAD)$/, co = /^\/\//, cp = /\?/, cq = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, cr = /([?&])_=[^&]*/, cs = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, ct = p.fn.load, cu = {}, cv = {}, cw = ["*/"] + ["*"];
+ try {
+ ci = f.href
+ } catch (cx) {
+ ci = e.createElement("a"), ci.href = "", ci = ci.href
+ }
+ cj = cs.exec(ci.toLowerCase()) || [], p.fn.load = function (a, c, d) {
+ if (typeof a != "string" && ct)return ct.apply(this, arguments);
+ if (!this.length)return this;
+ var e, f, g, h = this, i = a.indexOf(" ");
+ return i >= 0 && (e = a.slice(i, a.length), a = a.slice(0, i)), p.isFunction(c) ? (d = c, c = b) : typeof c == "object" && (f = "POST"), p.ajax({url: a, type: f, dataType: "html", data: c, complete: function (a, b) {
+ d && h.each(d, g || [a.responseText, b, a])
+ }}).done(function (a) {
+ g = arguments, h.html(e ? p("<div>").append(a.replace(cq, "")).find(e) : a)
+ }), this
+ }, p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function (a, b) {
+ p.fn[b] = function (a) {
+ return this.on(b, a)
+ }
+ }), p.each(["get", "post"], function (a, c) {
+ p[c] = function (a, d, e, f) {
+ return p.isFunction(d) && (f = f || e, e = d, d = b), p.ajax({type: c, url: a, data: d, success: e, dataType: f})
+ }
+ }), p.extend({getScript: function (a, c) {
+ return p.get(a, b, c, "script")
+ }, getJSON: function (a, b, c) {
+ return p.get(a, b, c, "json")
+ }, ajaxSetup: function (a, b) {
+ return b ? cA(a, p.ajaxSettings) : (b = a, a = p.ajaxSettings), cA(a, b), a
+ }, ajaxSettings: {url: ci, isLocal: cm.test(cj[1]), global: !0, type: "GET", contentType: "application/x-www-form-urlencoded; charset=UTF-8", processData: !0, async: !0, accepts: {xml: "application/xml, text/xml", html: "text/html", text: "text/plain", json: "application/json, text/javascript", "*": cw}, contents: {xml: /xml/, html: /html/, json: /json/}, responseFields: {xml: "responseXML", text: "responseText"}, converters: {"* text": a.String, "text html": !0, "text json": p.parseJSON, "text xml": p.parseXML}, flatOptions: {context: !0, url: !0}}, ajaxPrefilter: cy(cu), ajaxTransport: cy(cv), ajax: function (a, c) {
+ function y(a, c, f, i) {
+ var k, s, t, u, w, y = c;
+ if (v === 2)return;
+ v = 2, h && clearTimeout(h), g = b, e = i || "", x.readyState = a > 0 ? 4 : 0, f && (u = cB(l, x, f));
+ if (a >= 200 && a < 300 || a === 304)l.ifModified && (w = x.getResponseHeader("Last-Modified"), w && (p.lastModified[d] = w), w = x.getResponseHeader("Etag"), w && (p.etag[d] = w)), a === 304 ? (y = "notmodified", k = !0) : (k = cC(l, u), y = k.state, s = k.data, t = k.error, k = !t); else {
+ t = y;
+ if (!y || a)y = "error", a < 0 && (a = 0)
+ }
+ x.status = a, x.statusText = "" + (c || y), k ? o.resolveWith(m, [s, y, x]) : o.rejectWith(m, [x, y, t]), x.statusCode(r), r = b, j && n.trigger("ajax" + (k ? "Success" : "Error"), [x, l, k ? s : t]), q.fireWith(m, [x, y]), j && (n.trigger("ajaxComplete", [x, l]), --p.active || p.event.trigger("ajaxStop"))
+ }
+
+ typeof a == "object" && (c = a, a = b), c = c || {};
+ var d, e, f, g, h, i, j, k, l = p.ajaxSetup({}, c), m = l.context || l, n = m !== l && (m.nodeType || m instanceof p) ? p(m) : p.event, o = p.Deferred(), q = p.Callbacks("once memory"), r = l.statusCode || {}, t = {}, u = {}, v = 0, w = "canceled", x = {readyState: 0, setRequestHeader: function (a, b) {
+ if (!v) {
+ var c = a.toLowerCase();
+ a = u[c] = u[c] || a, t[a] = b
+ }
+ return this
+ }, getAllResponseHeaders: function () {
+ return v === 2 ? e : null
+ }, getResponseHeader: function (a) {
+ var c;
+ if (v === 2) {
+ if (!f) {
+ f = {};
+ while (c = cl.exec(e))f[c[1].toLowerCase()] = c[2]
+ }
+ c = f[a.toLowerCase()]
+ }
+ return c === b ? null : c
+ }, overrideMimeType: function (a) {
+ return v || (l.mimeType = a), this
+ }, abort: function (a) {
+ return a = a || w, g && g.abort(a), y(0, a), this
+ }};
+ o.promise(x), x.success = x.done, x.error = x.fail, x.complete = q.add, x.statusCode = function (a) {
+ if (a) {
+ var b;
+ if (v < 2)for (b in a)r[b] = [r[b], a[b]]; else b = a[x.status], x.always(b)
+ }
+ return this
+ }, l.url = ((a || l.url) + "").replace(ck, "").replace(co, cj[1] + "//"), l.dataTypes = p.trim(l.dataType || "*").toLowerCase().split(s), l.crossDomain == null && (i = cs.exec(l.url.toLowerCase()), l.crossDomain = !(!i || i[1] == cj[1] && i[2] == cj[2] && (i[3] || (i[1] === "http:" ? 80 : 443)) == (cj[3] || (cj[1] === "http:" ? 80 : 443)))), l.data && l.processData && typeof l.data != "string" && (l.data = p.param(l.data, l.traditional)), cz(cu, l, c, x);
+ if (v === 2)return x;
+ j = l.global, l.type = l.type.toUpperCase(), l.hasContent = !cn.test(l.type), j && p.active++ === 0 && p.event.trigger("ajaxStart");
+ if (!l.hasContent) {
+ l.data && (l.url += (cp.test(l.url) ? "&" : "?") + l.data, delete l.data), d = l.url;
+ if (l.cache === !1) {
+ var z = p.now(), A = l.url.replace(cr, "$1_=" + z);
+ l.url = A + (A === l.url ? (cp.test(l.url) ? "&" : "?") + "_=" + z : "")
+ }
+ }
+ (l.data && l.hasContent && l.contentType !== !1 || c.contentType) && x.setRequestHeader("Content-Type", l.contentType), l.ifModified && (d = d || l.url, p.lastModified[d] && x.setRequestHeader("If-Modified-Since", p.lastModified[d]), p.etag[d] && x.setRequestHeader("If-None-Match", p.etag[d])), x.setRequestHeader("Accept", l.dataTypes[0] && l.accepts[l.dataTypes[0]] ? l.accepts[l.dataTypes[0]] + (l.dataTypes[0] !== "*" ? ", " + cw + "; q=0.01" : "") : l.accepts["*"]);
+ for (k in l.headers)x.setRequestHeader(k, l.headers[k]);
+ if (!l.beforeSend || l.beforeSend.call(m, x, l) !== !1 && v !== 2) {
+ w = "abort";
+ for (k in{success: 1, error: 1, complete: 1})x[k](l[k]);
+ g = cz(cv, l, c, x);
+ if (!g)y(-1, "No Transport"); else {
+ x.readyState = 1, j && n.trigger("ajaxSend", [x, l]), l.async && l.timeout > 0 && (h = setTimeout(function () {
+ x.abort("timeout")
+ }, l.timeout));
+ try {
+ v = 1, g.send(t, y)
+ } catch (B) {
+ if (v < 2)y(-1, B); else throw B
+ }
+ }
+ return x
+ }
+ return x.abort()
+ }, active: 0, lastModified: {}, etag: {}});
+ var cD = [], cE = /\?/, cF = /(=)\?(?=&|$)|\?\?/, cG = p.now();
+ p.ajaxSetup({jsonp: "callback", jsonpCallback: function () {
+ var a = cD.pop() || p.expando + "_" + cG++;
+ return this[a] = !0, a
+ }}), p.ajaxPrefilter("json jsonp", function (c, d, e) {
+ var f, g, h, i = c.data, j = c.url, k = c.jsonp !== !1, l = k && cF.test(j), m = k && !l && typeof i == "string" && !(c.contentType || "").indexOf("application/x-www-form-urlencoded") && cF.test(i);
+ if (c.dataTypes[0] === "jsonp" || l || m)return f = c.jsonpCallback = p.isFunction(c.jsonpCallback) ? c.jsonpCallback() : c.jsonpCallback, g = a[f], l ? c.url = j.replace(cF, "$1" + f) : m ? c.data = i.replace(cF, "$1" + f) : k && (c.url += (cE.test(j) ? "&" : "?") + c.jsonp + "=" + f), c.converters["script json"] = function () {
+ return h || p.error(f + " was not called"), h[0]
+ }, c.dataTypes[0] = "json", a[f] = function () {
+ h = arguments
+ }, e.always(function () {
+ a[f] = g, c[f] && (c.jsonpCallback = d.jsonpCallback, cD.push(f)), h && p.isFunction(g) && g(h[0]), h = g = b
+ }), "script"
+ }), p.ajaxSetup({accepts: {script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"}, contents: {script: /javascript|ecmascript/}, converters: {"text script": function (a) {
+ return p.globalEval(a), a
+ }}}), p.ajaxPrefilter("script", function (a) {
+ a.cache === b && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1)
+ }), p.ajaxTransport("script", function (a) {
+ if (a.crossDomain) {
+ var c, d = e.head || e.getElementsByTagName("head")[0] || e.documentElement;
+ return{send: function (f, g) {
+ c = e.createElement("script"), c.async = "async", a.scriptCharset && (c.charset = a.scriptCharset), c.src = a.url, c.onload = c.onreadystatechange = function (a, e) {
+ if (e || !c.readyState || /loaded|complete/.test(c.readyState))c.onload = c.onreadystatechange = null, d && c.parentNode && d.removeChild(c), c = b, e || g(200, "success")
+ }, d.insertBefore(c, d.firstChild)
+ }, abort: function () {
+ c && c.onload(0, 1)
+ }}
+ }
+ });
+ var cH, cI = a.ActiveXObject ? function () {
+ for (var a in cH)cH[a](0, 1)
+ } : !1, cJ = 0;
+ p.ajaxSettings.xhr = a.ActiveXObject ? function () {
+ return!this.isLocal && cK() || cL()
+ } : cK, function (a) {
+ p.extend(p.support, {ajax: !!a, cors: !!a && "withCredentials"in a})
+ }(p.ajaxSettings.xhr()), p.support.ajax && p.ajaxTransport(function (c) {
+ if (!c.crossDomain || p.support.cors) {
+ var d;
+ return{send: function (e, f) {
+ var g, h, i = c.xhr();
+ c.username ? i.open(c.type, c.url, c.async, c.username, c.password) : i.open(c.type, c.url, c.async);
+ if (c.xhrFields)for (h in c.xhrFields)i[h] = c.xhrFields[h];
+ c.mimeType && i.overrideMimeType && i.overrideMimeType(c.mimeType), !c.crossDomain && !e["X-Requested-With"] && (e["X-Requested-With"] = "XMLHttpRequest");
+ try {
+ for (h in e)i.setRequestHeader(h, e[h])
+ } catch (j) {
+ }
+ i.send(c.hasContent && c.data || null), d = function (a, e) {
+ var h, j, k, l, m;
+ try {
+ if (d && (e || i.readyState === 4)) {
+ d = b, g && (i.onreadystatechange = p.noop, cI && delete cH[g]);
+ if (e)i.readyState !== 4 && i.abort(); else {
+ h = i.status, k = i.getAllResponseHeaders(), l = {}, m = i.responseXML, m && m.documentElement && (l.xml = m);
+ try {
+ l.text = i.responseText
+ } catch (a) {
+ }
+ try {
+ j = i.statusText
+ } catch (n) {
+ j = ""
+ }
+ !h && c.isLocal && !c.crossDomain ? h = l.text ? 200 : 404 : h === 1223 && (h = 204)
+ }
+ }
+ } catch (o) {
+ e || f(-1, o)
+ }
+ l && f(h, j, l, k)
+ }, c.async ? i.readyState === 4 ? setTimeout(d, 0) : (g = ++cJ, cI && (cH || (cH = {}, p(a).unload(cI)), cH[g] = d), i.onreadystatechange = d) : d()
+ }, abort: function () {
+ d && d(0, 1)
+ }}
+ }
+ });
+ var cM, cN, cO = /^(?:toggle|show|hide)$/, cP = new RegExp("^(?:([-+])=|)(" + q + ")([a-z%]*)$", "i"), cQ = /queueHooks$/, cR = [cX], cS = {"*": [function (a, b) {
+ var c, d, e, f = this.createTween(a, b), g = cP.exec(b), h = f.cur(), i = +h || 0, j = 1;
+ if (g) {
+ c = +g[2], d = g[3] || (p.cssNumber[a] ? "" : "px");
+ if (d !== "px" && i) {
+ i = p.css(f.elem, a, !0) || c || 1;
+ do e = j = j || ".5", i = i / j, p.style(f.elem, a, i + d), j = f.cur() / h; while (j !== 1 && j !== e)
+ }
+ f.unit = d, f.start = i, f.end = g[1] ? i + (g[1] + 1) * c : c
+ }
+ return f
+ }]};
+ p.Animation = p.extend(cV, {tweener: function (a, b) {
+ p.isFunction(a) ? (b = a, a = ["*"]) : a = a.split(" ");
+ var c, d = 0, e = a.length;
+ for (; d < e; d++)c = a[d], cS[c] = cS[c] || [], cS[c].unshift(b)
+ }, prefilter: function (a, b) {
+ b ? cR.unshift(a) : cR.push(a)
+ }}), p.Tween = cY, cY.prototype = {constructor: cY, init: function (a, b, c, d, e, f) {
+ this.elem = a, this.prop = c, this.easing = e || "swing", this.options = b, this.start = this.now = this.cur(), this.end = d, this.unit = f || (p.cssNumber[c] ? "" : "px")
+ }, cur: function () {
+ var a = cY.propHooks[this.prop];
+ return a && a.get ? a.get(this) : cY.propHooks._default.get(this)
+ }, run: function (a) {
+ var b, c = cY.propHooks[this.prop];
+ return this.pos = b = p.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration), this.now = (this.end - this.start) * b + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), c && c.set ? c.set(this) : cY.propHooks._default.set(this), this
+ }}, cY.prototype.init.prototype = cY.prototype, cY.propHooks = {_default: {get: function (a) {
+ var b;
+ return a.elem[a.prop] == null || !!a.elem.style && a.elem.style[a.prop] != null ? (b = p.css(a.elem, a.prop, !1, ""), !b || b === "auto" ? 0 : b) : a.elem[a.prop]
+ }, set: function (a) {
+ p.fx.step[a.prop] ? p.fx.step[a.prop](a) : a.elem.style && (a.elem.style[p.cssProps[a.prop]] != null || p.cssHooks[a.prop]) ? p.style(a.elem, a.prop, a.now + a.unit) : a.elem[a.prop] = a.now
+ }}}, cY.propHooks.scrollTop = cY.propHooks.scrollLeft = {set: function (a) {
+ a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now)
+ }}, p.each(["toggle", "show", "hide"], function (a, b) {
+ var c = p.fn[b];
+ p.fn[b] = function (d, e, f) {
+ return d == null || typeof d == "boolean" || !a && p.isFunction(d) && p.isFunction(e) ? c.apply(this, arguments) : this.animate(cZ(b, !0), d, e, f)
+ }
+ }), p.fn.extend({fadeTo: function (a, b, c, d) {
+ return this.filter(bY).css("opacity", 0).show().end().animate({opacity: b}, a, c, d)
+ }, animate: function (a, b, c, d) {
+ var e = p.isEmptyObject(a), f = p.speed(b, c, d), g = function () {
+ var b = cV(this, p.extend({}, a), f);
+ e && b.stop(!0)
+ };
+ return e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g)
+ }, stop: function (a, c, d) {
+ var e = function (a) {
+ var b = a.stop;
+ delete a.stop, b(d)
+ };
+ return typeof a != "string" && (d = c, c = a, a = b), c && a !== !1 && this.queue(a || "fx", []), this.each(function () {
+ var b = !0, c = a != null && a + "queueHooks", f = p.timers, g = p._data(this);
+ if (c)g[c] && g[c].stop && e(g[c]); else for (c in g)g[c] && g[c].stop && cQ.test(c) && e(g[c]);
+ for (c = f.length; c--;)f[c].elem === this && (a == null || f[c].queue === a) && (f[c].anim.stop(d), b = !1, f.splice(c, 1));
+ (b || !d) && p.dequeue(this, a)
+ })
+ }}), p.each({slideDown: cZ("show"), slideUp: cZ("hide"), slideToggle: cZ("toggle"), fadeIn: {opacity: "show"}, fadeOut: {opacity: "hide"}, fadeToggle: {opacity: "toggle"}}, function (a, b) {
+ p.fn[a] = function (a, c, d) {
+ return this.animate(b, a, c, d)
+ }
+ }), p.speed = function (a, b, c) {
+ var d = a && typeof a == "object" ? p.extend({}, a) : {complete: c || !c && b || p.isFunction(a) && a, duration: a, easing: c && b || b && !p.isFunction(b) && b};
+ d.duration = p.fx.off ? 0 : typeof d.duration == "number" ? d.duration : d.duration in p.fx.speeds ? p.fx.speeds[d.duration] : p.fx.speeds._default;
+ if (d.queue == null || d.queue === !0)d.queue = "fx";
+ return d.old = d.complete, d.complete = function () {
+ p.isFunction(d.old) && d.old.call(this), d.queue && p.dequeue(this, d.queue)
+ }, d
+ }, p.easing = {linear: function (a) {
+ return a
+ }, swing: function (a) {
+ return.5 - Math.cos(a * Math.PI) / 2
+ }}, p.timers = [], p.fx = cY.prototype.init, p.fx.tick = function () {
+ var a, b = p.timers, c = 0;
+ for (; c < b.length; c++)a = b[c], !a() && b[c] === a && b.splice(c--, 1);
+ b.length || p.fx.stop()
+ }, p.fx.timer = function (a) {
+ a() && p.timers.push(a) && !cN && (cN = setInterval(p.fx.tick, p.fx.interval))
+ }, p.fx.interval = 13, p.fx.stop = function () {
+ clearInterval(cN), cN = null
+ }, p.fx.speeds = {slow: 600, fast: 200, _default: 400}, p.fx.step = {}, p.expr && p.expr.filters && (p.expr.filters.animated = function (a) {
+ return p.grep(p.timers,function (b) {
+ return a === b.elem
+ }).length
+ });
+ var c$ = /^(?:body|html)$/i;
+ p.fn.offset = function (a) {
+ if (arguments.length)return a === b ? this : this.each(function (b) {
+ p.offset.setOffset(this, a, b)
+ });
+ var c, d, e, f, g, h, i, j, k, l, m = this[0], n = m && m.ownerDocument;
+ if (!n)return;
+ return(e = n.body) === m ? p.offset.bodyOffset(m) : (d = n.documentElement, p.contains(d, m) ? (c = m.getBoundingClientRect(), f = c_(n), g = d.clientTop || e.clientTop || 0, h = d.clientLeft || e.clientLeft || 0, i = f.pageYOffset || d.scrollTop, j = f.pageXOffset || d.scrollLeft, k = c.top + i - g, l = c.left + j - h, {top: k, left: l}) : {top: 0, left: 0})
+ }, p.offset = {bodyOffset: function (a) {
+ var b = a.offsetTop, c = a.offsetLeft;
+ return p.support.doesNotIncludeMarginInBodyOffset && (b += parseFloat(p.css(a, "marginTop")) || 0, c += parseFloat(p.css(a, "marginLeft")) || 0), {top: b, left: c}
+ }, setOffset: function (a, b, c) {
+ var d = p.css(a, "position");
+ d === "static" && (a.style.position = "relative");
+ var e = p(a), f = e.offset(), g = p.css(a, "top"), h = p.css(a, "left"), i = (d === "absolute" || d === "fixed") && p.inArray("auto", [g, h]) > -1, j = {}, k = {}, l, m;
+ i ? (k = e.position(), l = k.top, m = k.left) : (l = parseFloat(g) || 0, m = parseFloat(h) || 0), p.isFunction(b) && (b = b.call(a, c, f)), b.top != null && (j.top = b.top - f.top + l), b.left != null && (j.left = b.left - f.left + m), "using"in b ? b.using.call(a, j) : e.css(j)
+ }}, p.fn.extend({position: function () {
+ if (!this[0])return;
+ var a = this[0], b = this.offsetParent(), c = this.offset(), d = c$.test(b[0].nodeName) ? {top: 0, left: 0} : b.offset();
+ return c.top -= parseFloat(p.css(a, "marginTop")) || 0, c.left -= parseFloat(p.css(a, "marginLeft")) || 0, d.top += parseFloat(p.css(b[0], "borderTopWidth")) || 0, d.left += parseFloat(p.css(b[0], "borderLeftWidth")) || 0, {top: c.top - d.top, left: c.left - d.left}
+ }, offsetParent: function () {
+ return this.map(function () {
+ var a = this.offsetParent || e.body;
+ while (a && !c$.test(a.nodeName) && p.css(a, "position") === "static")a = a.offsetParent;
+ return a || e.body
+ })
+ }}), p.each({scrollLeft: "pageXOffset", scrollTop: "pageYOffset"}, function (a, c) {
+ var d = /Y/.test(c);
+ p.fn[a] = function (e) {
+ return p.access(this, function (a, e, f) {
+ var g = c_(a);
+ if (f === b)return g ? c in g ? g[c] : g.document.documentElement[e] : a[e];
+ g ? g.scrollTo(d ? p(g).scrollLeft() : f, d ? f : p(g).scrollTop()) : a[e] = f
+ }, a, e, arguments.length, null)
+ }
+ }), p.each({Height: "height", Width: "width"}, function (a, c) {
+ p.each({padding: "inner" + a, content: c, "": "outer" + a}, function (d, e) {
+ p.fn[e] = function (e, f) {
+ var g = arguments.length && (d || typeof e != "boolean"), h = d || (e === !0 || f === !0 ? "margin" : "border");
+ return p.access(this, function (c, d, e) {
+ var f;
+ return p.isWindow(c) ? c.document.documentElement["client" + a] : c.nodeType === 9 ? (f = c.documentElement, Math.max(c.body["scroll" + a], f["scroll" + a], c.body["offset" + a], f["offset" + a], f["client" + a])) : e === b ? p.css(c, d, e, h) : p.style(c, d, e, h)
+ }, c, g ? e : b, g)
+ }
+ })
+ }), a.jQuery = a.$ = p, typeof define == "function" && define.amd && define.amd.jQuery && define("jquery", [], function () {
+ return p
+ })
+})(window);
+
--- a/js/vendor/modernizr-2.6.1.min.js
+++ b/js/vendor/modernizr-2.6.1.min.js
@@ -1,5 +1,405 @@
/* Modernizr 2.6.1 (Custom Build) | MIT & BSD
* Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
*/
-;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.6.1",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k=b.createElement("div"),l=b.body,m=l?l:b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),k.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),k.id=h,(l?k:m).innerHTML+=f,m.appendChild(k),l||(m.style.background="",g.appendChild(m)),i=c(k,a),l?k.parentNode.removeChild(k):m.parentNode.removeChild(m),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(['#modernizr:after{content:"',l,'";visibility:hidden}'].join(""),function(b){a=b.offsetHeight>=1}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));var g;return f.cache[a]?g=f.cache[a].cloneNode():e.test(a)?g=(f.cache[a]=f.createElem(a)).cloneNode():g=f.createElem(a),g.canHaveChildren&&!d.test(a)?f.frag.appendChild(g):g}function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a);var d=c.frag.cloneNode(),e=0,f=l(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?n(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+l().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.hasCSS=!!k(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),j||p(a,c),a}var c=a.html5||{},d=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i,f,g="_html5shiv",h=0,i={},j;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",f="hidden"in a,j=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){f=!0,j=!0}})();var r={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,supportsUnknownElements:j,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:q,createElement:n,createDocumentFragment:o};a.html5=r,q(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return o.call(a)=="[object Function]"}function e(a){return typeof a=="string"}function f(){}function g(a){return!a||a=="loaded"||a=="complete"||a=="uninitialized"}function h(){var a=p.shift();q=1,a?a.t?m(function(){(a.t=="c"?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){a!="img"&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l={},o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};y[c]===1&&(r=1,y[c]=[],l=b.createElement(a)),a=="object"?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),a!="img"&&(r||y[c]===2?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i(b=="c"?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),p.length==1&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&o.call(a.opera)=="[object Opera]",l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return o.call(a)=="[object Array]"},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,i){var j=b(a),l=j.autoCallback;j.url.split(".").pop().split("?").shift(),j.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]||h),j.instead?j.instead(a,e,f,g,i):(y[j.url]?j.noexec=!0:y[j.url]=1,f.load(j.url,j.forceCSS||!j.forceJS&&"css"==j.url.split(".").pop().split("?").shift()?"c":c,j.noexec,j.attrs,j.timeout),(d(e)||d(l))&&f.load(function(){k(),e&&e(j.origUrl,i,g),l&&l(j.origUrl,i,g),y[j.url]=2})))}function i(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var j,l,m=this.yepnope.loader;if(e(a))g(a,0,m,0);else if(w(a))for(j=0;j<a.length;j++)l=a[j],e(l)?g(l,0,m,0):w(l)?B(l):Object(l)===l&&i(l,m);else Object(a)===a&&i(a,m)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,b.readyState==null&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};
-
+;
+window.Modernizr = function (a, b, c) {
+ function D(a) {
+ j.cssText = a
+ }
+
+ function E(a, b) {
+ return D(n.join(a + ";") + (b || ""))
+ }
+
+ function F(a, b) {
+ return typeof a === b
+ }
+
+ function G(a, b) {
+ return!!~("" + a).indexOf(b)
+ }
+
+ function H(a, b) {
+ for (var d in a) {
+ var e = a[d];
+ if (!G(e, "-") && j[e] !== c)return b == "pfx" ? e : !0
+ }
+ return!1
+ }
+
+ function I(a, b, d) {
+ for (var e in a) {
+ var f = b[a[e]];
+ if (f !== c)return d === !1 ? a[e] : F(f, "function") ? f.bind(d || b) : f
+ }
+ return!1
+ }
+
+ function J(a, b, c) {
+ var d = a.charAt(0).toUpperCase() + a.slice(1), e = (a + " " + p.join(d + " ") + d).split(" ");
+ return F(b, "string") || F(b, "undefined") ? H(e, b) : (e = (a + " " + q.join(d + " ") + d).split(" "), I(e, b, c))
+ }
+
+ function K() {
+ e.input = function (c) {
+ for (var d = 0, e = c.length; d < e; d++)u[c[d]] = c[d]in k;
+ return u.list && (u.list = !!b.createElement("datalist") && !!a.HTMLDataListElement), u
+ }("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")), e.inputtypes = function (a) {
+ for (var d = 0, e, f, h, i = a.length; d < i; d++)k.setAttribute("type", f = a[d]), e = k.type !== "text", e && (k.value = l, k.style.cssText = "position:absolute;visibility:hidden;", /^range$/.test(f) && k.style.WebkitAppearance !== c ? (g.appendChild(k), h = b.defaultView, e = h.getComputedStyle && h.getComputedStyle(k, null).WebkitAppearance !== "textfield" && k.offsetHeight !== 0, g.removeChild(k)) : /^(search|tel)$/.test(f) || (/^(url|email)$/.test(f) ? e = k.checkValidity && k.checkValidity() === !1 : e = k.value != l)), t[a[d]] = !!e;
+ return t
+ }("search tel url email datetime date month week time datetime-local number range color".split(" "))
+ }
+
+ var d = "2.6.1", e = {}, f = !0, g = b.documentElement, h = "modernizr", i = b.createElement(h), j = i.style, k = b.createElement("input"), l = ":)", m = {}.toString, n = " -webkit- -moz- -o- -ms- ".split(" "), o = "Webkit Moz O ms", p = o.split(" "), q = o.toLowerCase().split(" "), r = {svg: "http://www.w3.org/2000/svg"}, s = {}, t = {}, u = {}, v = [], w = v.slice, x, y = function (a, c, d, e) {
+ var f, i, j, k = b.createElement("div"), l = b.body, m = l ? l : b.createElement("body");
+ if (parseInt(d, 10))while (d--)j = b.createElement("div"), j.id = e ? e[d] : h + (d + 1), k.appendChild(j);
+ return f = ["­", '<style id="s', h, '">', a, "</style>"].join(""), k.id = h, (l ? k : m).innerHTML += f, m.appendChild(k), l || (m.style.background = "", g.appendChild(m)), i = c(k, a), l ? k.parentNode.removeChild(k) : m.parentNode.removeChild(m), !!i
+ }, z = function (b) {
+ var c = a.matchMedia || a.msMatchMedia;
+ if (c)return c(b).matches;
+ var d;
+ return y("@media " + b + " { #" + h + " { position: absolute; } }", function (b) {
+ d = (a.getComputedStyle ? getComputedStyle(b, null) : b.currentStyle)["position"] == "absolute"
+ }), d
+ }, A = function () {
+ function d(d, e) {
+ e = e || b.createElement(a[d] || "div"), d = "on" + d;
+ var f = d in e;
+ return f || (e.setAttribute || (e = b.createElement("div")), e.setAttribute && e.removeAttribute && (e.setAttribute(d, ""), f = F(e[d], "function"), F(e[d], "undefined") || (e[d] = c), e.removeAttribute(d))), e = null, f
+ }
+
+ var a = {select: "input", change: "input", submit: "form", reset: "form", error: "img", load: "img", abort: "img"};
+ return d
+ }(), B = {}.hasOwnProperty, C;
+ !F(B, "undefined") && !F(B.call, "undefined") ? C = function (a, b) {
+ return B.call(a, b)
+ } : C = function (a, b) {
+ return b in a && F(a.constructor.prototype[b], "undefined")
+ }, Function.prototype.bind || (Function.prototype.bind = function (b) {
+ var c = this;
+ if (typeof c != "function")throw new TypeError;
+ var d = w.call(arguments, 1), e = function () {
+ if (this instanceof e) {
+ var a = function () {
+ };
+ a.prototype = c.prototype;
+ var f = new a, g = c.apply(f, d.concat(w.call(arguments)));
+ return Object(g) === g ? g : f
+ }
+ return c.apply(b, d.concat(w.call(arguments)))
+ };
+ return e
+ }), s.flexbox = function () {
+ return J("flexWrap")
+ }, s.canvas = function () {
+ var a = b.createElement("canvas");
+ return!!a.getContext && !!a.getContext("2d")
+ }, s.canvastext = function () {
+ return!!e.canvas && !!F(b.createElement("canvas").getContext("2d").fillText, "function")
+ }, s.webgl = function () {
+ return!!a.WebGLRenderingContext
+ }, s.touch = function () {
+ var c;
+ return"ontouchstart"in a || a.DocumentTouch && b instanceof DocumentTouch ? c = !0 : y(["@media (", n.join("touch-enabled),("), h, ")", "{#modernizr{top:9px;position:absolute}}"].join(""), function (a) {
+ c = a.offsetTop === 9
+ }), c
+ }, s.geolocation = function () {
+ return"geolocation"in navigator
+ }, s.postmessage = function () {
+ return!!a.postMessage
+ }, s.websqldatabase = function () {
+ return!!a.openDatabase
+ }, s.indexedDB = function () {
+ return!!J("indexedDB", a)
+ }, s.hashchange = function () {
+ return A("hashchange", a) && (b.documentMode === c || b.documentMode > 7)
+ }, s.history = function () {
+ return!!a.history && !!history.pushState
+ }, s.draganddrop = function () {
+ var a = b.createElement("div");
+ return"draggable"in a || "ondragstart"in a && "ondrop"in a
+ }, s.websockets = function () {
+ return"WebSocket"in a || "MozWebSocket"in a
+ }, s.rgba = function () {
+ return D("background-color:rgba(150,255,150,.5)"), G(j.backgroundColor, "rgba")
+ }, s.hsla = function () {
+ return D("background-color:hsla(120,40%,100%,.5)"), G(j.backgroundColor, "rgba") || G(j.backgroundColor, "hsla")
+ }, s.multiplebgs = function () {
+ return D("background:url(https://),url(https://),red url(https://)"), /(url\s*\(.*?){3}/.test(j.background)
+ }, s.backgroundsize = function () {
+ return J("backgroundSize")
+ }, s.borderimage = function () {
+ return J("borderImage")
+ }, s.borderradius = function () {
+ return J("borderRadius")
+ }, s.boxshadow = function () {
+ return J("boxShadow")
+ }, s.textshadow = function () {
+ return b.createElement("div").style.textShadow === ""
+ }, s.opacity = function () {
+ return E("opacity:.55"), /^0.55$/.test(j.opacity)
+ }, s.cssanimations = function () {
+ return J("animationName")
+ }, s.csscolumns = function () {
+ return J("columnCount")
+ }, s.cssgradients = function () {
+ var a = "background-image:", b = "gradient(linear,left top,right bottom,from(#9f9),to(white));", c = "linear-gradient(left top,#9f9, white);";
+ return D((a + "-webkit- ".split(" ").join(b + a) + n.join(c + a)).slice(0, -a.length)), G(j.backgroundImage, "gradient")
+ }, s.cssreflections = function () {
+ return J("boxReflect")
+ }, s.csstransforms = function () {
+ return!!J("transform")
+ }, s.csstransforms3d = function () {
+ var a = !!J("perspective");
+ return a && "webkitPerspective"in g.style && y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}", function (b, c) {
+ a = b.offsetLeft === 9 && b.offsetHeight === 3
+ }), a
+ }, s.csstransitions = function () {
+ return J("transition")
+ }, s.fontface = function () {
+ var a;
+ return y('@font-face {font-family:"font";src:url("https://")}', function (c, d) {
+ var e = b.getElementById("smodernizr"), f = e.sheet || e.styleSheet, g = f ? f.cssRules && f.cssRules[0] ? f.cssRules[0].cssText : f.cssText || "" : "";
+ a = /src/i.test(g) && g.indexOf(d.split(" ")[0]) === 0
+ }), a
+ }, s.generatedcontent = function () {
+ var a;
+ return y(['#modernizr:after{content:"', l, '";visibility:hidden}'].join(""), function (b) {
+ a = b.offsetHeight >= 1
+ }), a
+ }, s.video = function () {
+ var a = b.createElement("video"), c = !1;
+ try {
+ if (c = !!a.canPlayType)c = new Boolean(c), c.ogg = a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/, ""), c.h264 = a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/, ""), c.webm = a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/, "")
+ } catch (d) {
+ }
+ return c
+ }, s.audio = function () {
+ var a = b.createElement("audio"), c = !1;
+ try {
+ if (c = !!a.canPlayType)c = new Boolean(c), c.ogg = a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""), c.mp3 = a.canPlayType("audio/mpeg;").replace(/^no$/, ""), c.wav = a.canPlayType('audio/wav; codecs="1"').replace(/^no$/, ""), c.m4a = (a.canPlayType("audio/x-m4a;") || a.canPlayType("audio/aac;")).replace(/^no$/, "")
+ } catch (d) {
+ }
+ return c
+ }, s.localstorage = function () {
+ try {
+ return localStorage.setItem(h, h), localStorage.removeItem(h), !0
+ } catch (a) {
+ return!1
+ }
+ }, s.sessionstorage = function () {
+ try {
+ return sessionStorage.setItem(h, h), sessionStorage.removeItem(h), !0
+ } catch (a) {
+ return!1
+ }
+ }, s.webworkers = function () {
+ return!!a.Worker
+ }, s.applicationcache = function () {
+ return!!a.applicationCache
+ }, s.svg = function () {
+ return!!b.createElementNS && !!b.createElementNS(r.svg, "svg").createSVGRect
+ }, s.inlinesvg = function () {
+ var a = b.createElement("div");
+ return a.innerHTML = "<svg/>", (a.firstChild && a.firstChild.namespaceURI) == r.svg
+ }, s.smil = function () {
+ return!!b.createElementNS && /SVGAnimate/.test(m.call(b.createElementNS(r.svg, "animate")))
+ }, s.svgclippaths = function () {
+ return!!b.createElementNS && /SVGClipPath/.test(m.call(b.createElementNS(r.svg, "clipPath")))
+ };
+ for (var L in s)C(s, L) && (x = L.toLowerCase(), e[x] = s[L](), v.push((e[x] ? "" : "no-") + x));
+ return e.input || K(), e.addTest = function (a, b) {
+ if (typeof a == "object")for (var d in a)C(a, d) && e.addTest(d, a[d]); else {
+ a = a.toLowerCase();
+ if (e[a] !== c)return e;
+ b = typeof b == "function" ? b() : b, f && (g.className += " " + (b ? "" : "no-") + a), e[a] = b
+ }
+ return e
+ }, D(""), i = k = null, function (a, b) {
+ function k(a, b) {
+ var c = a.createElement("p"), d = a.getElementsByTagName("head")[0] || a.documentElement;
+ return c.innerHTML = "x<style>" + b + "</style>", d.insertBefore(c.lastChild, d.firstChild)
+ }
+
+ function l() {
+ var a = r.elements;
+ return typeof a == "string" ? a.split(" ") : a
+ }
+
+ function m(a) {
+ var b = i[a[g]];
+ return b || (b = {}, h++, a[g] = h, i[h] = b), b
+ }
+
+ function n(a, c, f) {
+ c || (c = b);
+ if (j)return c.createElement(a);
+ f || (f = m(c));
+ var g;
+ return f.cache[a] ? g = f.cache[a].cloneNode() : e.test(a) ? g = (f.cache[a] = f.createElem(a)).cloneNode() : g = f.createElem(a), g.canHaveChildren && !d.test(a) ? f.frag.appendChild(g) : g
+ }
+
+ function o(a, c) {
+ a || (a = b);
+ if (j)return a.createDocumentFragment();
+ c = c || m(a);
+ var d = c.frag.cloneNode(), e = 0, f = l(), g = f.length;
+ for (; e < g; e++)d.createElement(f[e]);
+ return d
+ }
+
+ function p(a, b) {
+ b.cache || (b.cache = {}, b.createElem = a.createElement, b.createFrag = a.createDocumentFragment, b.frag = b.createFrag()), a.createElement = function (c) {
+ return r.shivMethods ? n(c, a, b) : b.createElem(c)
+ }, a.createDocumentFragment = Function("h,f", "return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&(" + l().join().replace(/\w+/g, function (a) {
+ return b.createElem(a), b.frag.createElement(a), 'c("' + a + '")'
+ }) + ");return n}")(r, b.frag)
+ }
+
+ function q(a) {
+ a || (a = b);
+ var c = m(a);
+ return r.shivCSS && !f && !c.hasCSS && (c.hasCSS = !!k(a, "article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")), j || p(a, c), a
+ }
+
+ var c = a.html5 || {}, d = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i, e = /^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i, f, g = "_html5shiv", h = 0, i = {}, j;
+ (function () {
+ try {
+ var a = b.createElement("a");
+ a.innerHTML = "<xyz></xyz>", f = "hidden"in a, j = a.childNodes.length == 1 || function () {
+ b.createElement("a");
+ var a = b.createDocumentFragment();
+ return typeof a.cloneNode == "undefined" || typeof a.createDocumentFragment == "undefined" || typeof a.createElement == "undefined"
+ }()
+ } catch (c) {
+ f = !0, j = !0
+ }
+ })();
+ var r = {elements: c.elements || "abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video", shivCSS: c.shivCSS !== !1, supportsUnknownElements: j, shivMethods: c.shivMethods !== !1, type: "default", shivDocument: q, createElement: n, createDocumentFragment: o};
+ a.html5 = r, q(b)
+ }(this, b), e._version = d, e._prefixes = n, e._domPrefixes = q, e._cssomPrefixes = p, e.mq = z, e.hasEvent = A, e.testProp = function (a) {
+ return H([a])
+ }, e.testAllProps = J, e.testStyles = y, e.prefixed = function (a, b, c) {
+ return b ? J(a, b, c) : J(a, "pfx")
+ }, g.className = g.className.replace(/(^|\s)no-js(\s|$)/, "$1$2") + (f ? " js " + v.join(" ") : ""), e
+}(this, this.document), function (a, b, c) {
+ function d(a) {
+ return o.call(a) == "[object Function]"
+ }
+
+ function e(a) {
+ return typeof a == "string"
+ }
+
+ function f() {
+ }
+
+ function g(a) {
+ return!a || a == "loaded" || a == "complete" || a == "uninitialized"
+ }
+
+ function h() {
+ var a = p.shift();
+ q = 1, a ? a.t ? m(function () {
+ (a.t == "c" ? B.injectCss : B.injectJs)(a.s, 0, a.a, a.x, a.e, 1)
+ }, 0) : (a(), h()) : q = 0
+ }
+
+ function i(a, c, d, e, f, i, j) {
+ function k(b) {
+ if (!o && g(l.readyState) && (u.r = o = 1, !q && h(), l.onload = l.onreadystatechange = null, b)) {
+ a != "img" && m(function () {
+ t.removeChild(l)
+ }, 50);
+ for (var d in y[c])y[c].hasOwnProperty(d) && y[c][d].onload()
+ }
+ }
+
+ var j = j || B.errorTimeout, l = {}, o = 0, r = 0, u = {t: d, s: c, e: f, a: i, x: j};
+ y[c] === 1 && (r = 1, y[c] = [], l = b.createElement(a)), a == "object" ? l.data = c : (l.src = c, l.type = a), l.width = l.height = "0", l.onerror = l.onload = l.onreadystatechange = function () {
+ k.call(this, r)
+ }, p.splice(e, 0, u), a != "img" && (r || y[c] === 2 ? (t.insertBefore(l, s ? null : n), m(k, j)) : y[c].push(l))
+ }
+
+ function j(a, b, c, d, f) {
+ return q = 0, b = b || "j", e(a) ? i(b == "c" ? v : u, a, b, this.i++, c, d, f) : (p.splice(this.i++, 0, a), p.length == 1 && h()), this
+ }
+
+ function k() {
+ var a = B;
+ return a.loader = {load: j, i: 0}, a
+ }
+
+ var l = b.documentElement, m = a.setTimeout, n = b.getElementsByTagName("script")[0], o = {}.toString, p = [], q = 0, r = "MozAppearance"in l.style, s = r && !!b.createRange().compareNode, t = s ? l : n.parentNode, l = a.opera && o.call(a.opera) == "[object Opera]", l = !!b.attachEvent && !l, u = r ? "object" : l ? "script" : "img", v = l ? "script" : u, w = Array.isArray || function (a) {
+ return o.call(a) == "[object Array]"
+ }, x = [], y = {}, z = {timeout: function (a, b) {
+ return b.length && (a.timeout = b[0]), a
+ }}, A, B;
+ B = function (a) {
+ function b(a) {
+ var a = a.split("!"), b = x.length, c = a.pop(), d = a.length, c = {url: c, origUrl: c, prefixes: a}, e, f, g;
+ for (f = 0; f < d; f++)g = a[f].split("="), (e = z[g.shift()]) && (c = e(c, g));
+ for (f = 0; f < b; f++)c = x[f](c);
+ return c
+ }
+
+ function g(a, e, f, g, i) {
+ var j = b(a), l = j.autoCallback;
+ j.url.split(".").pop().split("?").shift(), j.bypass || (e && (e = d(e) ? e : e[a] || e[g] || e[a.split("/").pop().split("?")[0]] || h), j.instead ? j.instead(a, e, f, g, i) : (y[j.url] ? j.noexec = !0 : y[j.url] = 1, f.load(j.url, j.forceCSS || !j.forceJS && "css" == j.url.split(".").pop().split("?").shift() ? "c" : c, j.noexec, j.attrs, j.timeout), (d(e) || d(l)) && f.load(function () {
+ k(), e && e(j.origUrl, i, g), l && l(j.origUrl, i, g), y[j.url] = 2
+ })))
+ }
+
+ function i(a, b) {
+ function c(a, c) {
+ if (a) {
+ if (e(a))c || (j = function () {
+ var a = [].slice.call(arguments);
+ k.apply(this, a), l()
+ }), g(a, j, b, 0, h); else if (Object(a) === a)for (n in m = function () {
+ var b = 0, c;
+ for (c in a)a.hasOwnProperty(c) && b++;
+ return b
+ }(), a)a.hasOwnProperty(n) && (!c && !--m && (d(j) ? j = function () {
+ var a = [].slice.call(arguments);
+ k.apply(this, a), l()
+ } : j[n] = function (a) {
+ return function () {
+ var b = [].slice.call(arguments);
+ a && a.apply(this, b), l()
+ }
+ }(k[n])), g(a[n], j, b, n, h))
+ } else!c && l()
+ }
+
+ var h = !!a.test, i = a.load || a.both, j = a.callback || f, k = j, l = a.complete || f, m, n;
+ c(h ? a.yep : a.nope, !!i), i && c(i)
+ }
+
+ var j, l, m = this.yepnope.loader;
+ if (e(a))g(a, 0, m, 0); else if (w(a))for (j = 0; j < a.length; j++)l = a[j], e(l) ? g(l, 0, m, 0) : w(l) ? B(l) : Object(l) === l && i(l, m); else Object(a) === a && i(a, m)
+ }, B.addPrefix = function (a, b) {
+ z[a] = b
+ }, B.addFilter = function (a) {
+ x.push(a)
+ }, B.errorTimeout = 1e4, b.readyState == null && b.addEventListener && (b.readyState = "loading", b.addEventListener("DOMContentLoaded", A = function () {
+ b.removeEventListener("DOMContentLoaded", A, 0), b.readyState = "complete"
+ }, 0)), a.yepnope = k(), a.yepnope.executeStack = h, a.yepnope.injectJs = function (a, c, d, e, i, j) {
+ var k = b.createElement("script"), l, o, e = e || B.errorTimeout;
+ k.src = a;
+ for (o in d)k.setAttribute(o, d[o]);
+ c = j ? h : c || f, k.onreadystatechange = k.onload = function () {
+ !l && g(k.readyState) && (l = 1, c(), k.onload = k.onreadystatechange = null)
+ }, m(function () {
+ l || (l = 1, c(1))
+ }, e), i ? k.onload() : n.parentNode.insertBefore(k, n)
+ }, a.yepnope.injectCss = function (a, c, d, e, g, i) {
+ var e = b.createElement("link"), j, c = i ? h : c || f;
+ e.href = a, e.rel = "stylesheet", e.type = "text/css";
+ for (j in d)e.setAttribute(j, d[j]);
+ g || (n.parentNode.insertBefore(e, n), m(c, 0))
+ }
+}(this, document), Modernizr.load = function () {
+ yepnope.apply(window, [].slice.call(arguments, 0))
+};
+
--- a/nbproject/project.xml
+++ b/nbproject/project.xml
@@ -1,4 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://www.netbeans.org/ns/project/1">
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.php.project</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/php-project/1">
--- a/output.txt
+++ /dev/null
@@ -1,69060 +1,1 @@
-Opening serial port...
-Loading notifymyandroid...
-Connecting database...
-Scannr started.
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104431
-Worker for 2012-10-12-1350001603.48-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 208862 frames written to 2012-10-12-1350001603.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-539716
-Worker for 2012-10-12-1350001607.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001607.25-demo.wav has no TGID
-done - result 1079432 frames written to 2012-10-12-1350001607.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350001620.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001620.32-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350001620.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104922
-Worker for 2012-10-12-1350001629.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 209844 frames written to 2012-10-12-1350001629.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146619
-Worker for 2012-10-12-1350001633.44-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 293238 frames written to 2012-10-12-1350001633.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249924
-Worker for 2012-10-12-1350001637.17-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 499848 frames written to 2012-10-12-1350001637.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1676614
-Worker for 2012-10-12-1350001643.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001643.71-demo.wav has no TGID
-done - result 3353228 frames written to 2012-10-12-1350001643.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103409
-Worker for 2012-10-12-1350001687.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001687.19-demo.wav has no TGID
-done - result 206818 frames written to 2012-10-12-1350001687.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350001690.07-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001690.07-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350001690.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75976
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-124189
-Worker for 2012-10-12-1350001790.54-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 248378 frames written to 2012-10-12-1350001790.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-585796
-Worker for 2012-10-12-1350001795.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001795.16-demo.wav has no TGID
-done - result 1171592 frames written to 2012-10-12-1350001795.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350001809.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001809.26-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350001809.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350001811.92-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001811.92-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350001811.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104600
-Worker for 2012-10-12-1350001858.18-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 209200 frames written to 2012-10-12-1350001858.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75423
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-634948
-Worker for 2012-10-12-1350001864.05-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001864.05-demo.wav has no TGID
-done - result 1269896 frames written to 2012-10-12-1350001864.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350001879.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001879.27-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350001879.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-119601
-Worker for 2012-10-12-1350001941.43-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 239202 frames written to 2012-10-12-1350001941.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-125808
-Worker for 2012-10-12-1350001945.62-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 251616 frames written to 2012-10-12-1350001945.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1544360
-Worker for 2012-10-12-1350001948.95-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001948.95-demo.wav has no TGID
-done - result 3088720 frames written to 2012-10-12-1350001948.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350001990.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350001990.55-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350001990.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-129707
-Worker for 2012-10-12-1350002030.02-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 259414 frames written to 2012-10-12-1350002030.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141380
-Worker for 2012-10-12-1350002033.49-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 282760 frames written to 2012-10-12-1350002033.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-943172
-Worker for 2012-10-12-1350002037.23-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1886344 frames written to 2012-10-12-1350002037.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-787524
-Worker for 2012-10-12-1350002060.63-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002060.63-demo.wav has no TGID
-done - result 1575048 frames written to 2012-10-12-1350002060.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350002079.66-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002079.66-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350002079.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-186054
-Worker for 2012-10-12-1350002102.47-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 372108 frames written to 2012-10-12-1350002102.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74889
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-640068
-Worker for 2012-10-12-1350002108.8-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002108.8-demo.wav has no TGID
-done - result 1280136 frames written to 2012-10-12-1350002108.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350002124.31-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002124.31-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350002124.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350002126.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002126.91-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350002126.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-164504
-Worker for 2012-10-12-1350002133.88-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 329008 frames written to 2012-10-12-1350002133.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75598
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-334916
-Worker for 2012-10-12-1350002139.31-demo.wav
-GLG,40068,NFM,0,0,CanberraMtAinsli,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 669832 frames written to 2012-10-12-1350002139.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-685124
-Worker for 2012-10-12-1350002148.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002148.33-demo.wav has no TGID
-done - result 1370248 frames written to 2012-10-12-1350002148.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350002164.92-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002164.92-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350002164.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350002167.48-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002167.48-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350002167.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97750
-Worker for 2012-10-12-1350002176.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002176.08-demo.wav has no TGID
-done - result 195500 frames written to 2012-10-12-1350002176.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350002178.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002178.72-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350002178.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350002181.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002181.35-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350002181.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350002183.84-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 209032 frames written to 2012-10-12-1350002183.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-210368
-Worker for 2012-10-12-1350002187.39-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 420736 frames written to 2012-10-12-1350002187.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2772036
-Worker for 2012-10-12-1350002192.83-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 5544072 frames written to 2012-10-12-1350002192.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350002259.17-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 188552 frames written to 2012-10-12-1350002259.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-751684
-Worker for 2012-10-12-1350002262.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002262.3-demo.wav has no TGID
-done - result 1503368 frames written to 2012-10-12-1350002262.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350002280.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002280.47-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350002280.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105189
-Worker for 2012-10-12-1350002314.42-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 210378 frames written to 2012-10-12-1350002314.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-532548
-Worker for 2012-10-12-1350002318.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002318.25-demo.wav has no TGID
-done - result 1065096 frames written to 2012-10-12-1350002318.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350002331.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002331.2-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350002331.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350002333.8-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002333.8-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350002333.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-161666
-Worker for 2012-10-12-1350002377.18-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 323332 frames written to 2012-10-12-1350002377.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-659524
-Worker for 2012-10-12-1350002382.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002382.98-demo.wav has no TGID
-done - result 1319048 frames written to 2012-10-12-1350002382.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350002399.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002399.17-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350002399.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-277168
-Worker for 2012-10-12-1350002471.86-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 554336 frames written to 2012-10-12-1350002471.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-703556
-Worker for 2012-10-12-1350002479.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002479.47-demo.wav has no TGID
-done - result 1407112 frames written to 2012-10-12-1350002479.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350002496.48-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002496.48-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350002496.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350002499.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002499.01-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350002499.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104391
-Worker for 2012-10-12-1350002606.55-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 208782 frames written to 2012-10-12-1350002606.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-596036
-Worker for 2012-10-12-1350002611.05-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002611.05-demo.wav has no TGID
-done - result 1192072 frames written to 2012-10-12-1350002611.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350002625.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002625.39-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350002625.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112989
-Worker for 2012-10-12-1350002813.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 225978 frames written to 2012-10-12-1350002813.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-474382
-Worker for 2012-10-12-1350002817.13-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 948764 frames written to 2012-10-12-1350002817.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-713544
-Worker for 2012-10-12-1350002829.48-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1427088 frames written to 2012-10-12-1350002829.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-220927
-Worker for 2012-10-12-1350002847.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 441854 frames written to 2012-10-12-1350002847.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-256911
-Worker for 2012-10-12-1350002854.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 513822 frames written to 2012-10-12-1350002854.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-382787
-Worker for 2012-10-12-1350002861.19-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 765574 frames written to 2012-10-12-1350002861.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-156699
-Worker for 2012-10-12-1350002870.78-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 313398 frames written to 2012-10-12-1350002870.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-603315
-Worker for 2012-10-12-1350002874.82-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002874.82-demo.wav has no TGID
-done - result 1206630 frames written to 2012-10-12-1350002874.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350002894.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002894.1-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350002894.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350002896.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002896.75-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350002896.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-118975
-Worker for 2012-10-12-1350002901.2-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 237950 frames written to 2012-10-12-1350002901.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-160836
-Worker for 2012-10-12-1350002904.27-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 321672 frames written to 2012-10-12-1350002904.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-189508
-Worker for 2012-10-12-1350002910.45-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 379016 frames written to 2012-10-12-1350002910.45-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1001540
-Worker for 2012-10-12-1350002915.23-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 2003080 frames written to 2012-10-12-1350002915.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-222273
-Worker for 2012-10-12-1350002939.38-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,1,NONE,NONE,NONE
-done - result 444546 frames written to 2012-10-12-1350002939.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-714684
-Worker for 2012-10-12-1350002945.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002945.47-demo.wav has no TGID
-done - result 1429368 frames written to 2012-10-12-1350002945.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350002962.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002962.75-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350002962.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350002965.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350002965.7-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350002965.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-181887
-Worker for 2012-10-12-1350002985.98-demo.wav
-GLG,40078,NFM,0,0,CanberraMtAinsli,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 363774 frames written to 2012-10-12-1350002985.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-228145
-Worker for 2012-10-12-1350002992.23-demo.wav
-GLG,40078,NFM,0,0,CanberraMtAinsli,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 456290 frames written to 2012-10-12-1350002992.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-212036
-Worker for 2012-10-12-1350002998.49-demo.wav
-GLG,40078,NFM,0,0,CanberraMtAinsli,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 424072 frames written to 2012-10-12-1350002998.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-215090
-Worker for 2012-10-12-1350003004.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003004.47-demo.wav has no TGID
-done - result 430180 frames written to 2012-10-12-1350003004.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-702526
-Worker for 2012-10-12-1350003009.83-demo.wav
-GLG,40083,NFM,0,0,CanberraMtAinsli,AustralianCapita,SES Ops 6,1,0,NONE,NONE,NONE
-done - result 1405052 frames written to 2012-10-12-1350003009.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1322052
-Worker for 2012-10-12-1350003027.34-demo.wav
-GLG,40083,NFM,0,0,CanberraMtAinsli,AustralianCapita,SES Ops 6,1,0,NONE,NONE,NONE
-done - result 2644104 frames written to 2012-10-12-1350003027.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-530794
-Worker for 2012-10-12-1350003059.62-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003059.62-demo.wav has no TGID
-done - result 1061588 frames written to 2012-10-12-1350003059.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-470084
-Worker for 2012-10-12-1350003073.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003073.39-demo.wav has no TGID
-done - result 940168 frames written to 2012-10-12-1350003073.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350003084.74-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003084.74-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350003084.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-203860
-Worker for 2012-10-12-1350003311.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 407720 frames written to 2012-10-12-1350003311.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155716
-Worker for 2012-10-12-1350003316.69-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 311432 frames written to 2012-10-12-1350003316.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1326148
-Worker for 2012-10-12-1350003320.67-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 2652296 frames written to 2012-10-12-1350003320.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-267313
-Worker for 2012-10-12-1350003353.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 534626 frames written to 2012-10-12-1350003353.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-184388
-Worker for 2012-10-12-1350003361.2-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 368776 frames written to 2012-10-12-1350003361.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-331844
-Worker for 2012-10-12-1350003366.53-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 663688 frames written to 2012-10-12-1350003366.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-199748
-Worker for 2012-10-12-1350003376.05-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 399496 frames written to 2012-10-12-1350003376.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127983
-Worker for 2012-10-12-1350003381.63-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 255966 frames written to 2012-10-12-1350003381.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1385536
-Worker for 2012-10-12-1350003385.26-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2771072 frames written to 2012-10-12-1350003385.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110269
-Worker for 2012-10-12-1350003419.17-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 220538 frames written to 2012-10-12-1350003419.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-304882
-Worker for 2012-10-12-1350003422.64-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 609764 frames written to 2012-10-12-1350003422.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-979868
-Worker for 2012-10-12-1350003430.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003430.26-demo.wav has no TGID
-done - result 1959736 frames written to 2012-10-12-1350003430.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350003457.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003457.26-demo.wav has no TGID
-done - result 215176 frames written to 2012-10-12-1350003457.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350003459.92-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003459.92-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350003459.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350003462.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003462.19-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350003462.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-81988
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-61141
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-124822
-Worker for 2012-10-12-1350003884.8-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 249644 frames written to 2012-10-12-1350003884.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76644
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-576580
-Worker for 2012-10-12-1350003889.22-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003889.22-demo.wav has no TGID
-done - result 1153160 frames written to 2012-10-12-1350003889.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350003903.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003903.24-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350003903.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173321
-Worker for 2012-10-12-1350003950.57-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 346642 frames written to 2012-10-12-1350003950.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-237636
-Worker for 2012-10-12-1350003955.31-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 475272 frames written to 2012-10-12-1350003955.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-137284
-Worker for 2012-10-12-1350003963.39-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 274568 frames written to 2012-10-12-1350003963.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-260164
-Worker for 2012-10-12-1350003967.09-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 520328 frames written to 2012-10-12-1350003967.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-294517
-Worker for 2012-10-12-1350003974.21-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 589034 frames written to 2012-10-12-1350003974.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-305220
-Worker for 2012-10-12-1350003981.71-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 610440 frames written to 2012-10-12-1350003981.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108612
-Worker for 2012-10-12-1350003989.26-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 217224 frames written to 2012-10-12-1350003989.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141373
-Worker for 2012-10-12-1350003992.46-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 282746 frames written to 2012-10-12-1350003992.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-763670
-Worker for 2012-10-12-1350003999.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350003999.38-demo.wav has no TGID
-done - result 1527340 frames written to 2012-10-12-1350003999.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350004017.85-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004017.85-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350004017.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155785
-Worker for 2012-10-12-1350004056.08-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 311570 frames written to 2012-10-12-1350004056.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-487073
-Worker for 2012-10-12-1350004061.42-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 974146 frames written to 2012-10-12-1350004061.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-194628
-Worker for 2012-10-12-1350004073.32-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 389256 frames written to 2012-10-12-1350004073.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-409668
-Worker for 2012-10-12-1350004078.29-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004078.29-demo.wav has no TGID
-done - result 819336 frames written to 2012-10-12-1350004078.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-234564
-Worker for 2012-10-12-1350004088.31-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 469128 frames written to 2012-10-12-1350004088.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-603094
-Worker for 2012-10-12-1350004094.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004094.33-demo.wav has no TGID
-done - result 1206188 frames written to 2012-10-12-1350004094.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350004112.57-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004112.57-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350004112.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350004115.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004115.5-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350004115.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112814
-Worker for 2012-10-12-1350004175.23-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 225628 frames written to 2012-10-12-1350004175.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350004178.33-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 211080 frames written to 2012-10-12-1350004178.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-419646
-Worker for 2012-10-12-1350004181.13-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 839292 frames written to 2012-10-12-1350004181.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1174171
-Worker for 2012-10-12-1350004191.51-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004191.51-demo.wav has no TGID
-done - result 2348342 frames written to 2012-10-12-1350004191.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350004224.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004224.08-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350004224.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350004226.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004226.72-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350004226.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-172049
-Worker for 2012-10-12-1350004247.0-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 344098 frames written to 2012-10-12-1350004247.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75288
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-592919
-Worker for 2012-10-12-1350004253.28-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1185838 frames written to 2012-10-12-1350004253.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1015458
-Worker for 2012-10-12-1350004267.74-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004267.74-demo.wav has no TGID
-done - result 2030916 frames written to 2012-10-12-1350004267.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-117828
-Worker for 2012-10-12-1350004292.19-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 235656 frames written to 2012-10-12-1350004292.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-203907
-Worker for 2012-10-12-1350004295.95-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 407814 frames written to 2012-10-12-1350004295.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-683003
-Worker for 2012-10-12-1350004301.78-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1366006 frames written to 2012-10-12-1350004301.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350004318.32-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 209032 frames written to 2012-10-12-1350004318.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-641092
-Worker for 2012-10-12-1350004321.76-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004321.76-demo.wav has no TGID
-done - result 1282184 frames written to 2012-10-12-1350004321.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350004337.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004337.33-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350004337.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350004339.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004339.94-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350004339.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-205636
-Worker for 2012-10-12-1350004343.77-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 411272 frames written to 2012-10-12-1350004343.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350004348.83-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 198792 frames written to 2012-10-12-1350004348.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-522308
-Worker for 2012-10-12-1350004354.52-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004354.52-demo.wav has no TGID
-done - result 1044616 frames written to 2012-10-12-1350004354.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-528474
-Worker for 2012-10-12-1350004367.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004367.24-demo.wav has no TGID
-done - result 1056948 frames written to 2012-10-12-1350004367.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350004385.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004385.35-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350004385.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-289385
-Worker for 2012-10-12-1350004428.28-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 578770 frames written to 2012-10-12-1350004428.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-220216
-Worker for 2012-10-12-1350004435.33-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 440432 frames written to 2012-10-12-1350004435.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-515436
-Worker for 2012-10-12-1350004442.38-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1030872 frames written to 2012-10-12-1350004442.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-131140
-Worker for 2012-10-12-1350004454.96-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 262280 frames written to 2012-10-12-1350004454.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-309316
-Worker for 2012-10-12-1350004458.74-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 618632 frames written to 2012-10-12-1350004458.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-115780
-Worker for 2012-10-12-1350004467.58-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 231560 frames written to 2012-10-12-1350004467.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-232516
-Worker for 2012-10-12-1350004472.07-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 465032 frames written to 2012-10-12-1350004472.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123972
-Worker for 2012-10-12-1350004478.68-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 247944 frames written to 2012-10-12-1350004478.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1652804
-Worker for 2012-10-12-1350004482.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004482.16-demo.wav has no TGID
-done - result 3305608 frames written to 2012-10-12-1350004482.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123972
-Worker for 2012-10-12-1350004521.92-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 247944 frames written to 2012-10-12-1350004521.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-664644
-Worker for 2012-10-12-1350004526.31-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1329288 frames written to 2012-10-12-1350004526.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-241702
-Worker for 2012-10-12-1350004542.36-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 483404 frames written to 2012-10-12-1350004542.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-200707
-Worker for 2012-10-12-1350004549.76-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 401414 frames written to 2012-10-12-1350004549.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2696911
-Worker for 2012-10-12-1350004554.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004554.81-demo.wav has no TGID
-done - result 5393822 frames written to 2012-10-12-1350004554.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103285
-Worker for 2012-10-12-1350004622.62-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004622.62-demo.wav has no TGID
-done - result 206570 frames written to 2012-10-12-1350004622.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350004625.49-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004625.49-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350004625.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132700
-Worker for 2012-10-12-1350004684.22-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 265400 frames written to 2012-10-12-1350004684.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76375
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-384068
-Worker for 2012-10-12-1350004689.16-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 768136 frames written to 2012-10-12-1350004689.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-236612
-Worker for 2012-10-12-1350004699.36-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 473224 frames written to 2012-10-12-1350004699.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1338436
-Worker for 2012-10-12-1350004705.59-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004705.59-demo.wav has no TGID
-done - result 2676872 frames written to 2012-10-12-1350004705.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-489862
-Worker for 2012-10-12-1350004737.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004737.71-demo.wav has no TGID
-done - result 979724 frames written to 2012-10-12-1350004737.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153668
-Worker for 2012-10-12-1350004755.17-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 307336 frames written to 2012-10-12-1350004755.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-384562
-Worker for 2012-10-12-1350004760.18-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 769124 frames written to 2012-10-12-1350004760.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350004769.62-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 211080 frames written to 2012-10-12-1350004769.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1716116
-Worker for 2012-10-12-1350004773.18-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 3432232 frames written to 2012-10-12-1350004773.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1743170
-Worker for 2012-10-12-1350004814.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004814.7-demo.wav has no TGID
-done - result 3486340 frames written to 2012-10-12-1350004814.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102349
-Worker for 2012-10-12-1350004861.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004861.25-demo.wav has no TGID
-done - result 204698 frames written to 2012-10-12-1350004861.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107229
-Worker for 2012-10-12-1350004922.22-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 214458 frames written to 2012-10-12-1350004922.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350004928.13-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 229512 frames written to 2012-10-12-1350004928.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-270404
-Worker for 2012-10-12-1350004931.17-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 540808 frames written to 2012-10-12-1350004931.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-806620
-Worker for 2012-10-12-1350004938.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004938.55-demo.wav has no TGID
-done - result 1613240 frames written to 2012-10-12-1350004938.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350004957.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004957.93-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350004957.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106662
-Worker for 2012-10-12-1350004964.82-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 213324 frames written to 2012-10-12-1350004964.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75154
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-640068
-Worker for 2012-10-12-1350004970.82-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004970.82-demo.wav has no TGID
-done - result 1280136 frames written to 2012-10-12-1350004970.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350004986.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004986.3-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350004986.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350004988.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350004988.9-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350004988.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105946
-Worker for 2012-10-12-1350005001.05-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 211892 frames written to 2012-10-12-1350005001.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-170052
-Worker for 2012-10-12-1350005003.96-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 340104 frames written to 2012-10-12-1350005003.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350005012.37-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 213128 frames written to 2012-10-12-1350005012.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1860570
-Worker for 2012-10-12-1350005015.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005015.27-demo.wav has no TGID
-done - result 3721140 frames written to 2012-10-12-1350005015.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105539
-Worker for 2012-10-12-1350005064.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005064.54-demo.wav has no TGID
-done - result 211078 frames written to 2012-10-12-1350005064.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-194025
-Worker for 2012-10-12-1350005118.04-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 388050 frames written to 2012-10-12-1350005118.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-355396
-Worker for 2012-10-12-1350005124.06-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 710792 frames written to 2012-10-12-1350005124.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-470084
-Worker for 2012-10-12-1350005132.8-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 940168 frames written to 2012-10-12-1350005132.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-352312
-Worker for 2012-10-12-1350005144.79-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 704624 frames written to 2012-10-12-1350005144.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139331
-Worker for 2012-10-12-1350005154.87-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 278662 frames written to 2012-10-12-1350005154.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-149429
-Worker for 2012-10-12-1350005160.19-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 298858 frames written to 2012-10-12-1350005160.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109634
-Worker for 2012-10-12-1350005163.87-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 219268 frames written to 2012-10-12-1350005163.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1417281
-Worker for 2012-10-12-1350005168.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005168.89-demo.wav has no TGID
-done - result 2834562 frames written to 2012-10-12-1350005168.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-727108
-Worker for 2012-10-12-1350005202.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005202.89-demo.wav has no TGID
-done - result 1454216 frames written to 2012-10-12-1350005202.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350005220.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005220.5-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350005220.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350005223.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005223.08-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350005223.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106338
-Worker for 2012-10-12-1350005268.48-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 212676 frames written to 2012-10-12-1350005268.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76291
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-424004
-Worker for 2012-10-12-1350005273.18-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 848008 frames written to 2012-10-12-1350005273.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-320580
-Worker for 2012-10-12-1350005283.75-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 641160 frames written to 2012-10-12-1350005283.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-588868
-Worker for 2012-10-12-1350005291.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005291.93-demo.wav has no TGID
-done - result 1177736 frames written to 2012-10-12-1350005291.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-534506
-Worker for 2012-10-12-1350005306.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005306.16-demo.wav has no TGID
-done - result 1069012 frames written to 2012-10-12-1350005306.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350005324.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005324.03-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350005324.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350005326.63-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005326.63-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350005326.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151256
-Worker for 2012-10-12-1350005337.27-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 302512 frames written to 2012-10-12-1350005337.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-685937
-Worker for 2012-10-12-1350005344.35-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1371874 frames written to 2012-10-12-1350005344.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173124
-Worker for 2012-10-12-1350005360.99-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 346248 frames written to 2012-10-12-1350005360.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-267332
-Worker for 2012-10-12-1350005365.3-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 534664 frames written to 2012-10-12-1350005365.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-869444
-Worker for 2012-10-12-1350005371.9-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1738888 frames written to 2012-10-12-1350005371.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-776260
-Worker for 2012-10-12-1350005393.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005393.55-demo.wav has no TGID
-done - result 1552520 frames written to 2012-10-12-1350005393.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350005412.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005412.3-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350005412.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-302423
-Worker for 2012-10-12-1350005461.61-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 604846 frames written to 2012-10-12-1350005461.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-708676
-Worker for 2012-10-12-1350005469.95-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005469.95-demo.wav has no TGID
-done - result 1417352 frames written to 2012-10-12-1350005469.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350005487.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005487.08-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350005487.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350005489.66-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005489.66-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350005489.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-228761
-Worker for 2012-10-12-1350005591.37-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 457522 frames written to 2012-10-12-1350005591.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74644
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-326724
-Worker for 2012-10-12-1350005598.31-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 653448 frames written to 2012-10-12-1350005598.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-202820
-Worker for 2012-10-12-1350005606.57-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 405640 frames written to 2012-10-12-1350005606.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-231492
-Worker for 2012-10-12-1350005612.06-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 462984 frames written to 2012-10-12-1350005612.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-254013
-Worker for 2012-10-12-1350005618.25-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 508026 frames written to 2012-10-12-1350005618.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-144452
-Worker for 2012-10-12-1350005624.72-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 288904 frames written to 2012-10-12-1350005624.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-225581
-Worker for 2012-10-12-1350005629.32-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 451162 frames written to 2012-10-12-1350005629.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96321
-Worker for 2012-10-12-1350005634.92-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 192642 frames written to 2012-10-12-1350005634.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-342084
-Worker for 2012-10-12-1350005637.69-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 684168 frames written to 2012-10-12-1350005637.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-170052
-Worker for 2012-10-12-1350005647.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 340104 frames written to 2012-10-12-1350005647.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-207940
-Worker for 2012-10-12-1350005652.13-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 415880 frames written to 2012-10-12-1350005652.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-185412
-Worker for 2012-10-12-1350005658.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 370824 frames written to 2012-10-12-1350005658.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-608324
-Worker for 2012-10-12-1350005663.88-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1216648 frames written to 2012-10-12-1350005663.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108612
-Worker for 2012-10-12-1350005678.58-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 217224 frames written to 2012-10-12-1350005678.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-218180
-Worker for 2012-10-12-1350005681.36-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 436360 frames written to 2012-10-12-1350005681.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-244462
-Worker for 2012-10-12-1350005686.71-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 488924 frames written to 2012-10-12-1350005686.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-691254
-Worker for 2012-10-12-1350005692.82-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1382508 frames written to 2012-10-12-1350005692.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350005709.58-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 204936 frames written to 2012-10-12-1350005709.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147524
-Worker for 2012-10-12-1350005713.04-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 295048 frames written to 2012-10-12-1350005713.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-129061
-Worker for 2012-10-12-1350005717.44-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 258122 frames written to 2012-10-12-1350005717.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-361540
-Worker for 2012-10-12-1350005720.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005720.84-demo.wav has no TGID
-done - result 723080 frames written to 2012-10-12-1350005720.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-699460
-Worker for 2012-10-12-1350005729.68-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1398920 frames written to 2012-10-12-1350005729.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-115780
-Worker for 2012-10-12-1350005746.54-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 231560 frames written to 2012-10-12-1350005746.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-115780
-Worker for 2012-10-12-1350005751.33-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 231560 frames written to 2012-10-12-1350005751.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-473156
-Worker for 2012-10-12-1350005754.95-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005754.95-demo.wav has no TGID
-done - result 946312 frames written to 2012-10-12-1350005754.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-772164
-Worker for 2012-10-12-1350005766.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005766.46-demo.wav has no TGID
-done - result 1544328 frames written to 2012-10-12-1350005766.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350005785.0-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005785.0-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350005785.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350005787.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005787.56-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350005787.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-82903
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155380
-Worker for 2012-10-12-1350005799.66-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 310760 frames written to 2012-10-12-1350005799.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-117828
-Worker for 2012-10-12-1350005803.74-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 235656 frames written to 2012-10-12-1350005803.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-676932
-Worker for 2012-10-12-1350005806.77-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005806.77-demo.wav has no TGID
-done - result 1353864 frames written to 2012-10-12-1350005806.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-509400
-Worker for 2012-10-12-1350005823.15-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005823.15-demo.wav has no TGID
-done - result 1018800 frames written to 2012-10-12-1350005823.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350005841.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005841.47-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350005841.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-174902
-Worker for 2012-10-12-1350005910.5-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 349804 frames written to 2012-10-12-1350005910.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-277474
-Worker for 2012-10-12-1350005916.83-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 554948 frames written to 2012-10-12-1350005916.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-760900
-Worker for 2012-10-12-1350005927.48-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1521800 frames written to 2012-10-12-1350005927.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75830
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-419908
-Worker for 2012-10-12-1350005948.06-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 839816 frames written to 2012-10-12-1350005948.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-247876
-Worker for 2012-10-12-1350005959.37-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 495752 frames written to 2012-10-12-1350005959.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-794692
-Worker for 2012-10-12-1350005965.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350005965.91-demo.wav has no TGID
-done - result 1589384 frames written to 2012-10-12-1350005965.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-119876
-Worker for 2012-10-12-1350005985.1-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 239752 frames written to 2012-10-12-1350005985.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-137205
-Worker for 2012-10-12-1350005988.25-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 274410 frames written to 2012-10-12-1350005988.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-363564
-Worker for 2012-10-12-1350005992.18-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 727128 frames written to 2012-10-12-1350005992.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1370180
-Worker for 2012-10-12-1350006002.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006002.96-demo.wav has no TGID
-done - result 2740360 frames written to 2012-10-12-1350006002.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-718742
-Worker for 2012-10-12-1350006036.36-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006036.36-demo.wav has no TGID
-done - result 1437484 frames written to 2012-10-12-1350006036.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350006053.97-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006053.97-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350006053.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350006056.57-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006056.57-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350006056.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-83012
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105739
-Worker for 2012-10-12-1350006069.79-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 211478 frames written to 2012-10-12-1350006069.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-277572
-Worker for 2012-10-12-1350006075.58-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 555144 frames written to 2012-10-12-1350006075.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188484
-Worker for 2012-10-12-1350006082.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 376968 frames written to 2012-10-12-1350006082.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-195652
-Worker for 2012-10-12-1350006088.72-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 391304 frames written to 2012-10-12-1350006088.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-78916
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175171
-Worker for 2012-10-12-1350006094.64-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 350342 frames written to 2012-10-12-1350006094.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1023519
-Worker for 2012-10-12-1350006099.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006099.24-demo.wav has no TGID
-done - result 2047038 frames written to 2012-10-12-1350006099.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350006127.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006127.98-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350006127.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173124
-Worker for 2012-10-12-1350006130.67-demo.wav
-GLG,40091,NFM,0,0,CanberraMtAinsli,AustralianCapita,Fire Mgt,1,0,NONE,NONE,NONE
-done - result 346248 frames written to 2012-10-12-1350006130.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74606
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-145476
-Worker for 2012-10-12-1350006136.33-demo.wav
-GLG,40091,NFM,0,0,CanberraMtAinsli,AustralianCapita,Fire Mgt,1,0,NONE,NONE,NONE
-done - result 290952 frames written to 2012-10-12-1350006136.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-639044
-Worker for 2012-10-12-1350006140.0-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006140.0-demo.wav has no TGID
-done - result 1278088 frames written to 2012-10-12-1350006140.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-713796
-Worker for 2012-10-12-1350006155.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006155.89-demo.wav has no TGID
-done - result 1427592 frames written to 2012-10-12-1350006155.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350006173.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006173.17-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350006173.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-228941
-Worker for 2012-10-12-1350006240.76-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 457882 frames written to 2012-10-12-1350006240.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-680004
-Worker for 2012-10-12-1350006247.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006247.86-demo.wav has no TGID
-done - result 1360008 frames written to 2012-10-12-1350006247.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350006264.41-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006264.41-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350006264.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350006266.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006266.93-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350006266.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105244
-Worker for 2012-10-12-1350006496.45-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 210488 frames written to 2012-10-12-1350006496.45-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-529476
-Worker for 2012-10-12-1350006500.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006500.39-demo.wav has no TGID
-done - result 1058952 frames written to 2012-10-12-1350006500.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350006513.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006513.23-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350006513.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-210173
-Worker for 2012-10-12-1350006535.4-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 420346 frames written to 2012-10-12-1350006535.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74947
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-796738
-Worker for 2012-10-12-1350006542.33-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1593476 frames written to 2012-10-12-1350006542.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-477252
-Worker for 2012-10-12-1350006561.62-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 954504 frames written to 2012-10-12-1350006561.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-140356
-Worker for 2012-10-12-1350006573.3-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 280712 frames written to 2012-10-12-1350006573.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112672
-Worker for 2012-10-12-1350006578.24-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 225344 frames written to 2012-10-12-1350006578.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-457796
-Worker for 2012-10-12-1350006581.06-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 915592 frames written to 2012-10-12-1350006581.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-130116
-Worker for 2012-10-12-1350006592.2-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 260232 frames written to 2012-10-12-1350006592.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-286788
-Worker for 2012-10-12-1350006595.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 573576 frames written to 2012-10-12-1350006595.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-192533
-Worker for 2012-10-12-1350006604.87-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 385066 frames written to 2012-10-12-1350006604.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93224
-Worker for 2012-10-12-1350006609.93-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 186448 frames written to 2012-10-12-1350006609.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-822340
-Worker for 2012-10-12-1350006612.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006612.38-demo.wav has no TGID
-done - result 1644680 frames written to 2012-10-12-1350006612.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-769092
-Worker for 2012-10-12-1350006632.07-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1538184 frames written to 2012-10-12-1350006632.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141330
-Worker for 2012-10-12-1350006651.39-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 282660 frames written to 2012-10-12-1350006651.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127044
-Worker for 2012-10-12-1350006655.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 254088 frames written to 2012-10-12-1350006655.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-324676
-Worker for 2012-10-12-1350006658.7-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 649352 frames written to 2012-10-12-1350006658.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-273446
-Worker for 2012-10-12-1350006667.81-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 546892 frames written to 2012-10-12-1350006667.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-154691
-Worker for 2012-10-12-1350006674.74-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 309382 frames written to 2012-10-12-1350006674.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1934404
-Worker for 2012-10-12-1350006678.97-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 3868808 frames written to 2012-10-12-1350006678.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-298052
-Worker for 2012-10-12-1350006726.92-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 596104 frames written to 2012-10-12-1350006726.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-640068
-Worker for 2012-10-12-1350006737.09-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1280136 frames written to 2012-10-12-1350006737.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-542512
-Worker for 2012-10-12-1350006754.59-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1085024 frames written to 2012-10-12-1350006754.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350006767.78-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 206984 frames written to 2012-10-12-1350006767.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-473156
-Worker for 2012-10-12-1350006771.93-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 946312 frames written to 2012-10-12-1350006771.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1155140
-Worker for 2012-10-12-1350006784.49-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006784.49-demo.wav has no TGID
-done - result 2310280 frames written to 2012-10-12-1350006784.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-209988
-Worker for 2012-10-12-1350006812.17-demo.wav
-GLG,40091,NFM,0,0,CanberraMtAinsli,AustralianCapita,Fire Mgt,1,0,NONE,NONE,NONE
-done - result 419976 frames written to 2012-10-12-1350006812.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-122948
-Worker for 2012-10-12-1350006817.6-demo.wav
-GLG,40091,NFM,0,0,CanberraMtAinsli,AustralianCapita,Fire Mgt,1,0,NONE,NONE,NONE
-done - result 245896 frames written to 2012-10-12-1350006817.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-602534
-Worker for 2012-10-12-1350006821.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006821.03-demo.wav has no TGID
-done - result 1205068 frames written to 2012-10-12-1350006821.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350006838.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006838.73-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350006838.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350006841.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006841.34-demo.wav has no TGID
-done - result 188552 frames written to 2012-10-12-1350006841.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139452
-Worker for 2012-10-12-1350006889.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 278904 frames written to 2012-10-12-1350006889.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-260164
-Worker for 2012-10-12-1350006894.8-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 520328 frames written to 2012-10-12-1350006894.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173123
-Worker for 2012-10-12-1350006901.3-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 346246 frames written to 2012-10-12-1350006901.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-717235
-Worker for 2012-10-12-1350006906.27-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1434470 frames written to 2012-10-12-1350006906.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1595460
-Worker for 2012-10-12-1350006923.5-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 3190920 frames written to 2012-10-12-1350006923.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-741444
-Worker for 2012-10-12-1350006962.68-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006962.68-demo.wav has no TGID
-done - result 1482888 frames written to 2012-10-12-1350006962.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350006980.63-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350006980.63-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350006980.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151392
-Worker for 2012-10-12-1350006986.7-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 302784 frames written to 2012-10-12-1350006986.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75257
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-130116
-Worker for 2012-10-12-1350006992.48-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 260232 frames written to 2012-10-12-1350006992.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-142398
-Worker for 2012-10-12-1350006997.31-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 284796 frames written to 2012-10-12-1350006997.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188427
-Worker for 2012-10-12-1350007002.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 376854 frames written to 2012-10-12-1350007002.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-206916
-Worker for 2012-10-12-1350007007.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 413832 frames written to 2012-10-12-1350007007.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350007013.34-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 186504 frames written to 2012-10-12-1350007013.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-976964
-Worker for 2012-10-12-1350007016.41-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007016.41-demo.wav has no TGID
-done - result 1953928 frames written to 2012-10-12-1350007016.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-257092
-Worker for 2012-10-12-1350007039.84-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 514184 frames written to 2012-10-12-1350007039.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350007046.21-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 215176 frames written to 2012-10-12-1350007046.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-192557
-Worker for 2012-10-12-1350007049.32-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 385114 frames written to 2012-10-12-1350007049.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1728580
-Worker for 2012-10-12-1350007054.07-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 3457160 frames written to 2012-10-12-1350007054.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-340690
-Worker for 2012-10-12-1350007095.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007095.72-demo.wav has no TGID
-done - result 681380 frames written to 2012-10-12-1350007095.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-389188
-Worker for 2012-10-12-1350007104.13-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 778376 frames written to 2012-10-12-1350007104.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1120324
-Worker for 2012-10-12-1350007113.66-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 2240648 frames written to 2012-10-12-1350007113.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-252099
-Worker for 2012-10-12-1350007141.29-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 504198 frames written to 2012-10-12-1350007141.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-241732
-Worker for 2012-10-12-1350007149.29-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 483464 frames written to 2012-10-12-1350007149.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-195652
-Worker for 2012-10-12-1350007156.12-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 391304 frames written to 2012-10-12-1350007156.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-229441
-Worker for 2012-10-12-1350007161.02-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 458882 frames written to 2012-10-12-1350007161.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-177220
-Worker for 2012-10-12-1350007166.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007166.75-demo.wav has no TGID
-done - result 354440 frames written to 2012-10-12-1350007166.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-389669
-Worker for 2012-10-12-1350007171.19-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 779338 frames written to 2012-10-12-1350007171.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350007181.17-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 202888 frames written to 2012-10-12-1350007181.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138308
-Worker for 2012-10-12-1350007183.83-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 276616 frames written to 2012-10-12-1350007183.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-592221
-Worker for 2012-10-12-1350007187.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007187.93-demo.wav has no TGID
-done - result 1184442 frames written to 2012-10-12-1350007187.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350007206.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007206.32-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350007206.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350007208.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007208.96-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350007208.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350007211.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007211.35-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350007211.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188325
-Worker for 2012-10-12-1350007266.07-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 376650 frames written to 2012-10-12-1350007266.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123972
-Worker for 2012-10-12-1350007271.44-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 247944 frames written to 2012-10-12-1350007271.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-335940
-Worker for 2012-10-12-1350007275.04-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 671880 frames written to 2012-10-12-1350007275.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-479207
-Worker for 2012-10-12-1350007285.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007285.4-demo.wav has no TGID
-done - result 958414 frames written to 2012-10-12-1350007285.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350007301.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007301.38-demo.wav has no TGID
-done - result 213128 frames written to 2012-10-12-1350007301.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350007304.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007304.06-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350007304.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-118852
-Worker for 2012-10-12-1350007306.58-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 237704 frames written to 2012-10-12-1350007306.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-116804
-Worker for 2012-10-12-1350007309.77-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 233608 frames written to 2012-10-12-1350007309.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-543812
-Worker for 2012-10-12-1350007312.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007312.81-demo.wav has no TGID
-done - result 1087624 frames written to 2012-10-12-1350007312.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1365925
-Worker for 2012-10-12-1350007326.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007326.03-demo.wav has no TGID
-done - result 2731850 frames written to 2012-10-12-1350007326.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-481989
-Worker for 2012-10-12-1350007359.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007359.1-demo.wav has no TGID
-done - result 963978 frames written to 2012-10-12-1350007359.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350007375.29-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007375.29-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350007375.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350007377.87-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007377.87-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350007377.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-162581
-Worker for 2012-10-12-1350007424.39-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 325162 frames written to 2012-10-12-1350007424.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1275972
-Worker for 2012-10-12-1350007430.39-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 2551944 frames written to 2012-10-12-1350007430.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-300907
-Worker for 2012-10-12-1350007461.78-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 601814 frames written to 2012-10-12-1350007461.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350007469.45-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 204936 frames written to 2012-10-12-1350007469.45-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-609348
-Worker for 2012-10-12-1350007472.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007472.1-demo.wav has no TGID
-done - result 1218696 frames written to 2012-10-12-1350007472.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-183364
-Worker for 2012-10-12-1350007486.88-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 366728 frames written to 2012-10-12-1350007486.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1292325
-Worker for 2012-10-12-1350007492.26-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2584650 frames written to 2012-10-12-1350007492.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75045
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-369732
-Worker for 2012-10-12-1350007524.69-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 739464 frames written to 2012-10-12-1350007524.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-293956
-Worker for 2012-10-12-1350007534.22-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 587912 frames written to 2012-10-12-1350007534.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-219023
-Worker for 2012-10-12-1350007541.52-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007541.52-demo.wav has no TGID
-done - result 438046 frames written to 2012-10-12-1350007541.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-517940
-Worker for 2012-10-12-1350007547.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007547.09-demo.wav has no TGID
-done - result 1035880 frames written to 2012-10-12-1350007547.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350007564.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007564.98-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350007564.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-44109
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-220546
-Worker for 2012-10-12-1350007611.42-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 441092 frames written to 2012-10-12-1350007611.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-149572
-Worker for 2012-10-12-1350007617.06-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 299144 frames written to 2012-10-12-1350007617.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2512666
-Worker for 2012-10-12-1350007621.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007621.4-demo.wav has no TGID
-done - result 5025332 frames written to 2012-10-12-1350007621.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-521284
-Worker for 2012-10-12-1350007681.79-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1042568 frames written to 2012-10-12-1350007681.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350007696.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 202888 frames written to 2012-10-12-1350007696.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1494084
-Worker for 2012-10-12-1350007699.01-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2988168 frames written to 2012-10-12-1350007699.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-177066
-Worker for 2012-10-12-1350007734.76-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 354132 frames written to 2012-10-12-1350007734.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1182031
-Worker for 2012-10-12-1350007739.44-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007739.44-demo.wav has no TGID
-done - result 2364062 frames written to 2012-10-12-1350007739.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350007771.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007771.89-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350007771.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350007774.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007774.47-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350007774.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107891
-Worker for 2012-10-12-1350007778.74-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 215782 frames written to 2012-10-12-1350007778.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75645
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-605252
-Worker for 2012-10-12-1350007783.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007783.93-demo.wav has no TGID
-done - result 1210504 frames written to 2012-10-12-1350007783.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350007798.57-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007798.57-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350007798.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-130072
-Worker for 2012-10-12-1350007879.76-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 260144 frames written to 2012-10-12-1350007879.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-168004
-Worker for 2012-10-12-1350007883.4-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 336008 frames written to 2012-10-12-1350007883.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1062980
-Worker for 2012-10-12-1350007887.69-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007887.69-demo.wav has no TGID
-done - result 2125960 frames written to 2012-10-12-1350007887.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-316484
-Worker for 2012-10-12-1350007913.25-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 632968 frames written to 2012-10-12-1350007913.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-290840
-Worker for 2012-10-12-1350007921.5-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 581680 frames written to 2012-10-12-1350007921.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-597060
-Worker for 2012-10-12-1350007928.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1194120 frames written to 2012-10-12-1350007928.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1114178
-Worker for 2012-10-12-1350007944.41-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350007944.41-demo.wav has no TGID
-done - result 2228356 frames written to 2012-10-12-1350007944.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1082415
-Worker for 2012-10-12-1350007971.23-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2164830 frames written to 2012-10-12-1350007971.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-283129
-Worker for 2012-10-12-1350007997.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 566258 frames written to 2012-10-12-1350007997.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153668
-Worker for 2012-10-12-1350008004.9-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 307336 frames written to 2012-10-12-1350008004.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175172
-Worker for 2012-10-12-1350008008.76-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 350344 frames written to 2012-10-12-1350008008.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-329447
-Worker for 2012-10-12-1350008013.86-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 658894 frames written to 2012-10-12-1350008013.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-538608
-Worker for 2012-10-12-1350008022.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008022.37-demo.wav has no TGID
-done - result 1077216 frames written to 2012-10-12-1350008022.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350008038.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008038.93-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350008038.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350008041.59-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008041.59-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350008041.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108339
-Worker for 2012-10-12-1350008064.25-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 216678 frames written to 2012-10-12-1350008064.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-182340
-Worker for 2012-10-12-1350008067.86-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 364680 frames written to 2012-10-12-1350008067.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-174148
-Worker for 2012-10-12-1350008072.58-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 348296 frames written to 2012-10-12-1350008072.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-777284
-Worker for 2012-10-12-1350008077.66-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008077.66-demo.wav has no TGID
-done - result 1554568 frames written to 2012-10-12-1350008077.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350008096.42-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008096.42-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350008096.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350008099.21-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008099.21-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350008099.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105548
-Worker for 2012-10-12-1350008106.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 211096 frames written to 2012-10-12-1350008106.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76474
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-286788
-Worker for 2012-10-12-1350008111.72-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 573576 frames written to 2012-10-12-1350008111.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75013
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-547908
-Worker for 2012-10-12-1350008120.08-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1095816 frames written to 2012-10-12-1350008120.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350008133.67-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 209032 frames written to 2012-10-12-1350008133.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-425028
-Worker for 2012-10-12-1350008136.93-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 850056 frames written to 2012-10-12-1350008136.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-133188
-Worker for 2012-10-12-1350008147.23-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 266376 frames written to 2012-10-12-1350008147.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-160836
-Worker for 2012-10-12-1350008150.6-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 321672 frames written to 2012-10-12-1350008150.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-409629
-Worker for 2012-10-12-1350008155.15-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 819258 frames written to 2012-10-12-1350008155.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-161860
-Worker for 2012-10-12-1350008166.12-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 323720 frames written to 2012-10-12-1350008166.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-754756
-Worker for 2012-10-12-1350008171.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008171.12-demo.wav has no TGID
-done - result 1509512 frames written to 2012-10-12-1350008171.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350008189.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008189.26-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350008189.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175344
-Worker for 2012-10-12-1350008197.9-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 350688 frames written to 2012-10-12-1350008197.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-776260
-Worker for 2012-10-12-1350008202.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008202.9-demo.wav has no TGID
-done - result 1552520 frames written to 2012-10-12-1350008202.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-315460
-Worker for 2012-10-12-1350008221.61-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 630920 frames written to 2012-10-12-1350008221.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-78916
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-701425
-Worker for 2012-10-12-1350008232.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008232.27-demo.wav has no TGID
-done - result 1402850 frames written to 2012-10-12-1350008232.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350008249.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008249.17-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350008249.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350008251.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008251.7-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350008251.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113336
-Worker for 2012-10-12-1350008263.67-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 226672 frames written to 2012-10-12-1350008263.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188484
-Worker for 2012-10-12-1350008268.87-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 376968 frames written to 2012-10-12-1350008268.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-163871
-Worker for 2012-10-12-1350008273.57-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 327742 frames written to 2012-10-12-1350008273.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-597127
-Worker for 2012-10-12-1350008278.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008278.24-demo.wav has no TGID
-done - result 1194254 frames written to 2012-10-12-1350008278.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350008296.65-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008296.65-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350008296.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350008299.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008299.32-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350008299.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-265067
-Worker for 2012-10-12-1350008355.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 530134 frames written to 2012-10-12-1350008355.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-187425
-Worker for 2012-10-12-1350008362.95-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 374850 frames written to 2012-10-12-1350008362.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-587257
-Worker for 2012-10-12-1350008368.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008368.55-demo.wav has no TGID
-done - result 1174514 frames written to 2012-10-12-1350008368.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350008386.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008386.88-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350008386.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-228033
-Worker for 2012-10-12-1350008396.34-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 456066 frames written to 2012-10-12-1350008396.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350008402.09-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 192648 frames written to 2012-10-12-1350008402.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151620
-Worker for 2012-10-12-1350008404.59-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 303240 frames written to 2012-10-12-1350008404.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77882
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1679428
-Worker for 2012-10-12-1350008410.08-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 3358856 frames written to 2012-10-12-1350008410.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-240850
-Worker for 2012-10-12-1350008451.13-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 481700 frames written to 2012-10-12-1350008451.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-283716
-Worker for 2012-10-12-1350008457.26-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 567432 frames written to 2012-10-12-1350008457.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-280627
-Worker for 2012-10-12-1350008464.27-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 561254 frames written to 2012-10-12-1350008464.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-432178
-Worker for 2012-10-12-1350008471.44-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 864356 frames written to 2012-10-12-1350008471.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1291667
-Worker for 2012-10-12-1350008482.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008482.01-demo.wav has no TGID
-done - result 2583334 frames written to 2012-10-12-1350008482.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350008516.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008516.37-demo.wav has no TGID
-done - result 213128 frames written to 2012-10-12-1350008516.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350008519.07-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008519.07-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350008519.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105889
-Worker for 2012-10-12-1350008583.0-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 211778 frames written to 2012-10-12-1350008583.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-644164
-Worker for 2012-10-12-1350008589.07-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008589.07-demo.wav has no TGID
-done - result 1288328 frames written to 2012-10-12-1350008589.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350008604.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008604.7-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350008604.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114488
-Worker for 2012-10-12-1350008678.61-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 228976 frames written to 2012-10-12-1350008678.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350008681.95-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350008681.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-133188
-Worker for 2012-10-12-1350008684.85-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 266376 frames written to 2012-10-12-1350008684.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-168004
-Worker for 2012-10-12-1350008688.32-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 336008 frames written to 2012-10-12-1350008688.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-592964
-Worker for 2012-10-12-1350008692.6-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1185928 frames written to 2012-10-12-1350008692.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-240708
-Worker for 2012-10-12-1350008707.59-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008707.59-demo.wav has no TGID
-done - result 481416 frames written to 2012-10-12-1350008707.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-721988
-Worker for 2012-10-12-1350008713.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008713.78-demo.wav has no TGID
-done - result 1443976 frames written to 2012-10-12-1350008713.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350008731.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008731.16-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350008731.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-130980
-Worker for 2012-10-12-1350008746.58-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 261960 frames written to 2012-10-12-1350008746.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151248
-Worker for 2012-10-12-1350008750.99-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 302496 frames written to 2012-10-12-1350008750.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-365622
-Worker for 2012-10-12-1350008755.64-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 731244 frames written to 2012-10-12-1350008755.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147491
-Worker for 2012-10-12-1350008764.85-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 294982 frames written to 2012-10-12-1350008764.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-568956
-Worker for 2012-10-12-1350008769.66-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008769.66-demo.wav has no TGID
-done - result 1137912 frames written to 2012-10-12-1350008769.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106035
-Worker for 2012-10-12-1350008787.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008787.25-demo.wav has no TGID
-done - result 212070 frames written to 2012-10-12-1350008787.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350008790.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008790.09-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350008790.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-213161
-Worker for 2012-10-12-1350008809.01-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 426322 frames written to 2012-10-12-1350008809.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-286782
-Worker for 2012-10-12-1350008816.47-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 573564 frames written to 2012-10-12-1350008816.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-783428
-Worker for 2012-10-12-1350008824.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008824.25-demo.wav has no TGID
-done - result 1566856 frames written to 2012-10-12-1350008824.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350008843.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008843.35-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350008843.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-190296
-Worker for 2012-10-12-1350008933.78-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 380592 frames written to 2012-10-12-1350008933.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-480425
-Worker for 2012-10-12-1350008940.5-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 960850 frames written to 2012-10-12-1350008940.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-124996
-Worker for 2012-10-12-1350008956.35-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 249992 frames written to 2012-10-12-1350008956.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-131140
-Worker for 2012-10-12-1350008959.9-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 262280 frames written to 2012-10-12-1350008959.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-424004
-Worker for 2012-10-12-1350008963.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350008963.38-demo.wav has no TGID
-done - result 848008 frames written to 2012-10-12-1350008963.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-181316
-Worker for 2012-10-12-1350008973.75-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 362632 frames written to 2012-10-12-1350008973.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-290884
-Worker for 2012-10-12-1350008981.34-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 581768 frames written to 2012-10-12-1350008981.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350008988.62-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 194696 frames written to 2012-10-12-1350008988.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146451
-Worker for 2012-10-12-1350008991.84-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 292902 frames written to 2012-10-12-1350008991.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1150020
-Worker for 2012-10-12-1350008996.11-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 2300040 frames written to 2012-10-12-1350008996.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-685880
-Worker for 2012-10-12-1350009024.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009024.39-demo.wav has no TGID
-done - result 1371760 frames written to 2012-10-12-1350009024.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350009040.99-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009040.99-demo.wav has no TGID
-done - result 215176 frames written to 2012-10-12-1350009040.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350009043.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009043.84-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350009043.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-116065
-Worker for 2012-10-12-1350009048.42-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 232130 frames written to 2012-10-12-1350009048.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-564292
-Worker for 2012-10-12-1350009052.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009052.7-demo.wav has no TGID
-done - result 1128584 frames written to 2012-10-12-1350009052.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350009066.65-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009066.65-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350009066.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350009069.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009069.24-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350009069.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108612
-Worker for 2012-10-12-1350009071.65-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 217224 frames written to 2012-10-12-1350009071.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-527068
-Worker for 2012-10-12-1350009075.37-demo.wav
-GLG,44036,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1054136 frames written to 2012-10-12-1350009075.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350009089.76-demo.wav
-GLG,44036,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350009089.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-263072
-Worker for 2012-10-12-1350009093.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009093.94-demo.wav has no TGID
-done - result 526144 frames written to 2012-10-12-1350009093.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-245828
-Worker for 2012-10-12-1350009100.32-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 491656 frames written to 2012-10-12-1350009100.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-255044
-Worker for 2012-10-12-1350009108.36-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 510088 frames written to 2012-10-12-1350009108.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-591940
-Worker for 2012-10-12-1350009115.76-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1183880 frames written to 2012-10-12-1350009115.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-462916
-Worker for 2012-10-12-1350009130.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009130.93-demo.wav has no TGID
-done - result 925832 frames written to 2012-10-12-1350009130.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350009142.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009142.14-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350009142.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105241
-Worker for 2012-10-12-1350009148.27-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 210482 frames written to 2012-10-12-1350009148.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74970
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-636996
-Worker for 2012-10-12-1350009154.13-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009154.13-demo.wav has no TGID
-done - result 1273992 frames written to 2012-10-12-1350009154.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350009169.43-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009169.43-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350009169.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350009171.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009171.91-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350009171.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-81988
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105689
-Worker for 2012-10-12-1350009304.87-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 211378 frames written to 2012-10-12-1350009304.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-490564
-Worker for 2012-10-12-1350009308.52-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009308.52-demo.wav has no TGID
-done - result 981128 frames written to 2012-10-12-1350009308.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350009320.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009320.38-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350009320.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-122948
-Worker for 2012-10-12-1350009322.88-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 245896 frames written to 2012-10-12-1350009322.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-216132
-Worker for 2012-10-12-1350009326.09-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 432264 frames written to 2012-10-12-1350009326.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-143428
-Worker for 2012-10-12-1350009331.57-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 286856 frames written to 2012-10-12-1350009331.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1027140
-Worker for 2012-10-12-1350009335.66-demo.wav
-GLG,40068,NFM,0,0,CanberraMtAinsli,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 2054280 frames written to 2012-10-12-1350009335.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350009360.31-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009360.31-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350009360.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-232841
-Worker for 2012-10-12-1350009363.47-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 465682 frames written to 2012-10-12-1350009363.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1822788
-Worker for 2012-10-12-1350009369.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009369.37-demo.wav has no TGID
-done - result 3645576 frames written to 2012-10-12-1350009369.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-654404
-Worker for 2012-10-12-1350009413.02-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1308808 frames written to 2012-10-12-1350009413.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-707652
-Worker for 2012-10-12-1350009429.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009429.54-demo.wav has no TGID
-done - result 1415304 frames written to 2012-10-12-1350009429.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350009446.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009446.55-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350009446.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350009449.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009449.09-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350009449.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112294
-Worker for 2012-10-12-1350009453.37-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 224588 frames written to 2012-10-12-1350009453.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350009456.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 196744 frames written to 2012-10-12-1350009456.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-142404
-Worker for 2012-10-12-1350009458.84-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 284808 frames written to 2012-10-12-1350009458.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173198
-Worker for 2012-10-12-1350009463.3-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 346396 frames written to 2012-10-12-1350009463.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-728132
-Worker for 2012-10-12-1350009469.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009469.34-demo.wav has no TGID
-done - result 1456264 frames written to 2012-10-12-1350009469.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350009487.13-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009487.13-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350009487.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-61648
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-199619
-Worker for 2012-10-12-1350009620.62-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 399238 frames written to 2012-10-12-1350009620.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-581034
-Worker for 2012-10-12-1350009626.83-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1162068 frames written to 2012-10-12-1350009626.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350009640.97-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 184456 frames written to 2012-10-12-1350009640.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350009643.34-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 192648 frames written to 2012-10-12-1350009643.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-176196
-Worker for 2012-10-12-1350009645.88-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 352392 frames written to 2012-10-12-1350009645.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-812653
-Worker for 2012-10-12-1350009650.33-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1625306 frames written to 2012-10-12-1350009650.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350009673.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009673.5-demo.wav has no TGID
-done - result 215176 frames written to 2012-10-12-1350009673.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350009676.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009676.27-demo.wav has no TGID
-done - result 188552 frames written to 2012-10-12-1350009676.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-117828
-Worker for 2012-10-12-1350009678.66-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 235656 frames written to 2012-10-12-1350009678.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-120900
-Worker for 2012-10-12-1350009681.75-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 241800 frames written to 2012-10-12-1350009681.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-200772
-Worker for 2012-10-12-1350009685.49-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 401544 frames written to 2012-10-12-1350009685.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350009690.75-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 188552 frames written to 2012-10-12-1350009690.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1042660
-Worker for 2012-10-12-1350009693.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009693.19-demo.wav has no TGID
-done - result 2085320 frames written to 2012-10-12-1350009693.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109636
-Worker for 2012-10-12-1350009721.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009721.4-demo.wav has no TGID
-done - result 219272 frames written to 2012-10-12-1350009721.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350009724.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009724.37-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350009724.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-295118
-Worker for 2012-10-12-1350009777.33-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 590236 frames written to 2012-10-12-1350009777.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-335940
-Worker for 2012-10-12-1350009785.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 671880 frames written to 2012-10-12-1350009785.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-635972
-Worker for 2012-10-12-1350009795.23-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1271944 frames written to 2012-10-12-1350009795.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-156740
-Worker for 2012-10-12-1350009811.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 313480 frames written to 2012-10-12-1350009811.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-218180
-Worker for 2012-10-12-1350009815.75-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 436360 frames written to 2012-10-12-1350009815.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-775236
-Worker for 2012-10-12-1350009821.41-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1550472 frames written to 2012-10-12-1350009821.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1937476
-Worker for 2012-10-12-1350009841.62-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 3874952 frames written to 2012-10-12-1350009841.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-156740
-Worker for 2012-10-12-1350009887.98-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 313480 frames written to 2012-10-12-1350009887.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-283716
-Worker for 2012-10-12-1350009892.01-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 567432 frames written to 2012-10-12-1350009892.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-306244
-Worker for 2012-10-12-1350009898.97-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009898.97-demo.wav has no TGID
-done - result 612488 frames written to 2012-10-12-1350009898.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-168004
-Worker for 2012-10-12-1350009906.54-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 336008 frames written to 2012-10-12-1350009906.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132108
-Worker for 2012-10-12-1350009913.3-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 264216 frames written to 2012-10-12-1350009913.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84631
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-484755
-Worker for 2012-10-12-1350009918.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009918.09-demo.wav has no TGID
-done - result 969510 frames written to 2012-10-12-1350009918.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-506214
-Worker for 2012-10-12-1350009929.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009929.93-demo.wav has no TGID
-done - result 1012428 frames written to 2012-10-12-1350009929.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350009947.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009947.84-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350009947.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350009950.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350009950.32-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350009950.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-176598
-Worker for 2012-10-12-1350010124.15-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 353196 frames written to 2012-10-12-1350010124.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75279
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-451652
-Worker for 2012-10-12-1350010130.44-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 903304 frames written to 2012-10-12-1350010130.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-343864
-Worker for 2012-10-12-1350010142.33-demo.wav
-GLG,40068,NFM,0,0,CanberraMtAinsli,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 687728 frames written to 2012-10-12-1350010142.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-405572
-Worker for 2012-10-12-1350010150.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010150.75-demo.wav has no TGID
-done - result 811144 frames written to 2012-10-12-1350010150.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-379051
-Worker for 2012-10-12-1350010161.06-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 758102 frames written to 2012-10-12-1350010161.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-489315
-Worker for 2012-10-12-1350010171.16-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 978630 frames written to 2012-10-12-1350010171.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-220199
-Worker for 2012-10-12-1350010185.29-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 440398 frames written to 2012-10-12-1350010185.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-82920
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-374020
-Worker for 2012-10-12-1350010192.77-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 748040 frames written to 2012-10-12-1350010192.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-743131
-Worker for 2012-10-12-1350010202.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010202.89-demo.wav has no TGID
-done - result 1486262 frames written to 2012-10-12-1350010202.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350010220.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010220.86-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350010220.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-120485
-Worker for 2012-10-12-1350010242.42-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 240970 frames written to 2012-10-12-1350010242.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75643
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-441412
-Worker for 2012-10-12-1350010247.31-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 882824 frames written to 2012-10-12-1350010247.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1685572
-Worker for 2012-10-12-1350010258.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010258.39-demo.wav has no TGID
-done - result 3371144 frames written to 2012-10-12-1350010258.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-221252
-Worker for 2012-10-12-1350010298.71-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 442504 frames written to 2012-10-12-1350010298.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350010305.06-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 202888 frames written to 2012-10-12-1350010305.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-115730
-Worker for 2012-10-12-1350010307.96-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 231460 frames written to 2012-10-12-1350010307.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-343776
-Worker for 2012-10-12-1350010311.62-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 687552 frames written to 2012-10-12-1350010311.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-582724
-Worker for 2012-10-12-1350010321.16-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 1165448 frames written to 2012-10-12-1350010321.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-149572
-Worker for 2012-10-12-1350010336.58-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 299144 frames written to 2012-10-12-1350010336.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1968542
-Worker for 2012-10-12-1350010340.42-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010340.42-demo.wav has no TGID
-done - result 3937084 frames written to 2012-10-12-1350010340.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101310
-Worker for 2012-10-12-1350010392.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010392.72-demo.wav has no TGID
-done - result 202620 frames written to 2012-10-12-1350010392.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152235
-Worker for 2012-10-12-1350010468.9-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 304470 frames written to 2012-10-12-1350010468.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-355197
-Worker for 2012-10-12-1350010473.8-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 710394 frames written to 2012-10-12-1350010473.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74830
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-396356
-Worker for 2012-10-12-1350010483.92-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 792712 frames written to 2012-10-12-1350010483.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112708
-Worker for 2012-10-12-1350010494.11-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 225416 frames written to 2012-10-12-1350010494.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147524
-Worker for 2012-10-12-1350010497.06-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 295048 frames written to 2012-10-12-1350010497.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-3864644
-Worker for 2012-10-12-1350010500.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010500.79-demo.wav has no TGID
-done - result 7729288 frames written to 2012-10-12-1350010500.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-762948
-Worker for 2012-10-12-1350010593.4-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 1525896 frames written to 2012-10-12-1350010593.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-527428
-Worker for 2012-10-12-1350010611.83-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010611.83-demo.wav has no TGID
-done - result 1054856 frames written to 2012-10-12-1350010611.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-496433
-Worker for 2012-10-12-1350010624.49-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010624.49-demo.wav has no TGID
-done - result 992866 frames written to 2012-10-12-1350010624.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350010642.22-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010642.22-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350010642.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-160128
-Worker for 2012-10-12-1350010660.35-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 320256 frames written to 2012-10-12-1350010660.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350010665.63-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 190600 frames written to 2012-10-12-1350010665.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-286768
-Worker for 2012-10-12-1350010668.76-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,1,NONE,NONE,NONE
-done - result 573536 frames written to 2012-10-12-1350010668.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1068182
-Worker for 2012-10-12-1350010675.85-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010675.85-demo.wav has no TGID
-done - result 2136364 frames written to 2012-10-12-1350010675.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350010705.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010705.4-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350010705.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-122782
-Worker for 2012-10-12-1350010787.04-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 245564 frames written to 2012-10-12-1350010787.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113732
-Worker for 2012-10-12-1350010790.85-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 227464 frames written to 2012-10-12-1350010790.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249924
-Worker for 2012-10-12-1350010794.23-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 499848 frames written to 2012-10-12-1350010794.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1051024
-Worker for 2012-10-12-1350010800.53-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010800.53-demo.wav has no TGID
-done - result 2102048 frames written to 2012-10-12-1350010800.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350010829.67-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010829.67-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350010829.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350010832.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010832.33-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350010832.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151232
-Worker for 2012-10-12-1350010942.63-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 302464 frames written to 2012-10-12-1350010942.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350010947.04-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 209032 frames written to 2012-10-12-1350010947.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2061380
-Worker for 2012-10-12-1350010950.2-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 4122760 frames written to 2012-10-12-1350010950.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-649627
-Worker for 2012-10-12-1350010999.58-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350010999.58-demo.wav has no TGID
-done - result 1299254 frames written to 2012-10-12-1350010999.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350011019.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011019.94-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350011019.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350011022.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011022.56-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350011022.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107818
-Worker for 2012-10-12-1350011028.18-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 215636 frames written to 2012-10-12-1350011028.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110660
-Worker for 2012-10-12-1350011031.16-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 221320 frames written to 2012-10-12-1350011031.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-216132
-Worker for 2012-10-12-1350011034.06-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 432264 frames written to 2012-10-12-1350011034.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-187460
-Worker for 2012-10-12-1350011039.61-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 374920 frames written to 2012-10-12-1350011039.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-825412
-Worker for 2012-10-12-1350011044.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011044.26-demo.wav has no TGID
-done - result 1650824 frames written to 2012-10-12-1350011044.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-329796
-Worker for 2012-10-12-1350011064.07-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 659592 frames written to 2012-10-12-1350011064.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-169015
-Worker for 2012-10-12-1350011072.2-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 338030 frames written to 2012-10-12-1350011072.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-156367
-Worker for 2012-10-12-1350011076.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 312734 frames written to 2012-10-12-1350011076.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-772162
-Worker for 2012-10-12-1350011081.0-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011081.0-demo.wav has no TGID
-done - result 1544324 frames written to 2012-10-12-1350011081.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350011099.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011099.75-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350011099.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350011102.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011102.3-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350011102.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350011104.58-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 215176 frames written to 2012-10-12-1350011104.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249061
-Worker for 2012-10-12-1350011110.59-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 498122 frames written to 2012-10-12-1350011110.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-217115
-Worker for 2012-10-12-1350011119.42-demo.wav
-GLG,44010,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 434230 frames written to 2012-10-12-1350011119.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-209250
-Worker for 2012-10-12-1350011125.47-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 418500 frames written to 2012-10-12-1350011125.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-691268
-Worker for 2012-10-12-1350011131.49-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011131.49-demo.wav has no TGID
-done - result 1382536 frames written to 2012-10-12-1350011131.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350011148.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011148.23-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350011148.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127259
-Worker for 2012-10-12-1350011162.09-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 254518 frames written to 2012-10-12-1350011162.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-485432
-Worker for 2012-10-12-1350011166.77-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 970864 frames written to 2012-10-12-1350011166.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-198669
-Worker for 2012-10-12-1350011178.62-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 397338 frames written to 2012-10-12-1350011178.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-767044
-Worker for 2012-10-12-1350011187.22-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011187.22-demo.wav has no TGID
-done - result 1534088 frames written to 2012-10-12-1350011187.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350011205.68-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011205.68-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350011205.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-241284
-Worker for 2012-10-12-1350011225.79-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 482568 frames written to 2012-10-12-1350011225.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350011231.86-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 188552 frames written to 2012-10-12-1350011231.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-195652
-Worker for 2012-10-12-1350011234.29-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 391304 frames written to 2012-10-12-1350011234.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-308292
-Worker for 2012-10-12-1350011239.55-demo.wav
-GLG,44010,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 616584 frames written to 2012-10-12-1350011239.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93251
-Worker for 2012-10-12-1350011247.21-demo.wav
-GLG,44010,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 186502 frames written to 2012-10-12-1350011247.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-131128
-Worker for 2012-10-12-1350011249.69-demo.wav
-GLG,44010,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 262256 frames written to 2012-10-12-1350011249.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-799812
-Worker for 2012-10-12-1350011253.04-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1599624 frames written to 2012-10-12-1350011253.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350011272.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 215176 frames written to 2012-10-12-1350011272.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-747586
-Worker for 2012-10-12-1350011275.65-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 1495172 frames written to 2012-10-12-1350011275.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-297975
-Worker for 2012-10-12-1350011294.37-demo.wav
-GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
-done - result 595950 frames written to 2012-10-12-1350011294.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-434951
-Worker for 2012-10-12-1350011301.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011301.88-demo.wav has no TGID
-done - result 869902 frames written to 2012-10-12-1350011301.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-522248
-Worker for 2012-10-12-1350011312.41-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011312.41-demo.wav has no TGID
-done - result 1044496 frames written to 2012-10-12-1350011312.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350011330.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011330.78-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350011330.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-220765
-Worker for 2012-10-12-1350011358.28-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 441530 frames written to 2012-10-12-1350011358.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-498034
-Worker for 2012-10-12-1350011365.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011365.37-demo.wav has no TGID
-done - result 996068 frames written to 2012-10-12-1350011365.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109636
-Worker for 2012-10-12-1350011380.85-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011380.85-demo.wav has no TGID
-done - result 219272 frames written to 2012-10-12-1350011380.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350011383.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011383.73-demo.wav has no TGID
-done - result 188552 frames written to 2012-10-12-1350011383.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112970
-Worker for 2012-10-12-1350011402.9-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 225940 frames written to 2012-10-12-1350011402.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-144452
-Worker for 2012-10-12-1350011406.78-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 288904 frames written to 2012-10-12-1350011406.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-144452
-Worker for 2012-10-12-1350011412.68-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 288904 frames written to 2012-10-12-1350011412.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138308
-Worker for 2012-10-12-1350011416.43-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 276616 frames written to 2012-10-12-1350011416.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-723012
-Worker for 2012-10-12-1350011419.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011419.96-demo.wav has no TGID
-done - result 1446024 frames written to 2012-10-12-1350011419.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-266308
-Worker for 2012-10-12-1350011437.46-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 532616 frames written to 2012-10-12-1350011437.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-766020
-Worker for 2012-10-12-1350011445.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011445.09-demo.wav has no TGID
-done - result 1532040 frames written to 2012-10-12-1350011445.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350011463.63-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011463.63-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350011463.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-44106
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105734
-Worker for 2012-10-12-1350011512.91-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 211468 frames written to 2012-10-12-1350011512.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-514116
-Worker for 2012-10-12-1350011516.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011516.73-demo.wav has no TGID
-done - result 1028232 frames written to 2012-10-12-1350011516.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350011529.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011529.38-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350011529.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106128
-Worker for 2012-10-12-1350011542.49-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 212256 frames written to 2012-10-12-1350011542.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132164
-Worker for 2012-10-12-1350011545.47-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 264328 frames written to 2012-10-12-1350011545.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-358468
-Worker for 2012-10-12-1350011548.91-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 716936 frames written to 2012-10-12-1350011548.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-434244
-Worker for 2012-10-12-1350011558.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 868488 frames written to 2012-10-12-1350011558.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74661
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-678980
-Worker for 2012-10-12-1350011570.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011570.19-demo.wav has no TGID
-done - result 1357960 frames written to 2012-10-12-1350011570.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350011586.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011586.75-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350011586.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350011589.31-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011589.31-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350011589.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-81988
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-187357
-Worker for 2012-10-12-1350011707.77-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 374714 frames written to 2012-10-12-1350011707.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1121563
-Worker for 2012-10-12-1350011713.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2243126 frames written to 2012-10-12-1350011713.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-740359
-Worker for 2012-10-12-1350011741.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011741.33-demo.wav has no TGID
-done - result 1480718 frames written to 2012-10-12-1350011741.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-238660
-Worker for 2012-10-12-1350011759.23-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 477320 frames written to 2012-10-12-1350011759.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113716
-Worker for 2012-10-12-1350011765.65-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 227432 frames written to 2012-10-12-1350011765.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-547908
-Worker for 2012-10-12-1350011768.62-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011768.62-demo.wav has no TGID
-done - result 1095816 frames written to 2012-10-12-1350011768.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-515799
-Worker for 2012-10-12-1350011781.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011781.88-demo.wav has no TGID
-done - result 1031598 frames written to 2012-10-12-1350011781.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350011799.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011799.89-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350011799.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350011802.51-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011802.51-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350011802.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108315
-Worker for 2012-10-12-1350011822.87-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 216630 frames written to 2012-10-12-1350011822.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138110
-Worker for 2012-10-12-1350011827.01-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 276220 frames written to 2012-10-12-1350011827.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1620036
-Worker for 2012-10-12-1350011831.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011831.4-demo.wav has no TGID
-done - result 3240072 frames written to 2012-10-12-1350011831.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-625732
-Worker for 2012-10-12-1350011870.29-demo.wav
-GLG,44027,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1251464 frames written to 2012-10-12-1350011870.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-300855
-Worker for 2012-10-12-1350011886.49-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 601710 frames written to 2012-10-12-1350011886.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-579996
-Worker for 2012-10-12-1350011894.65-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1159992 frames written to 2012-10-12-1350011894.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-136985
-Worker for 2012-10-12-1350011909.66-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 273970 frames written to 2012-10-12-1350011909.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-176196
-Worker for 2012-10-12-1350011913.55-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 352392 frames written to 2012-10-12-1350011913.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-555978
-Worker for 2012-10-12-1350011918.03-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1111956 frames written to 2012-10-12-1350011918.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-166980
-Worker for 2012-10-12-1350011931.55-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,1,NONE,NONE,NONE
-done - result 333960 frames written to 2012-10-12-1350011931.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-281503
-Worker for 2012-10-12-1350011936.17-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 563006 frames written to 2012-10-12-1350011936.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-545860
-Worker for 2012-10-12-1350011943.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011943.2-demo.wav has no TGID
-done - result 1091720 frames written to 2012-10-12-1350011943.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-512874
-Worker for 2012-10-12-1350011956.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011956.38-demo.wav has no TGID
-done - result 1025748 frames written to 2012-10-12-1350011956.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350011974.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011974.1-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350011974.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350011976.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350011976.75-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350011976.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153169
-Worker for 2012-10-12-1350012034.92-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 306338 frames written to 2012-10-12-1350012034.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141380
-Worker for 2012-10-12-1350012038.82-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 282760 frames written to 2012-10-12-1350012038.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-178244
-Worker for 2012-10-12-1350012042.73-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 356488 frames written to 2012-10-12-1350012042.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-370756
-Worker for 2012-10-12-1350012047.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012047.26-demo.wav has no TGID
-done - result 741512 frames written to 2012-10-12-1350012047.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-516952
-Worker for 2012-10-12-1350012056.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012056.27-demo.wav has no TGID
-done - result 1033904 frames written to 2012-10-12-1350012056.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350012074.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012074.06-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350012074.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-56855
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155563
-Worker for 2012-10-12-1350012103.47-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 311126 frames written to 2012-10-12-1350012103.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113732
-Worker for 2012-10-12-1350012107.54-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 227464 frames written to 2012-10-12-1350012107.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-394308
-Worker for 2012-10-12-1350012110.43-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 788616 frames written to 2012-10-12-1350012110.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2791460
-Worker for 2012-10-12-1350012120.17-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 5582920 frames written to 2012-10-12-1350012120.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-320580
-Worker for 2012-10-12-1350012186.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012186.81-demo.wav has no TGID
-done - result 641160 frames written to 2012-10-12-1350012186.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-535119
-Worker for 2012-10-12-1350012194.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012194.56-demo.wav has no TGID
-done - result 1070238 frames written to 2012-10-12-1350012194.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350012212.41-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012212.41-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350012212.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350012215.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012215.12-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350012215.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86077
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-120070
-Worker for 2012-10-12-1350012223.39-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 240140 frames written to 2012-10-12-1350012223.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-284146
-Worker for 2012-10-12-1350012227.52-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 568292 frames written to 2012-10-12-1350012227.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-227396
-Worker for 2012-10-12-1350012234.73-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 454792 frames written to 2012-10-12-1350012234.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-193597
-Worker for 2012-10-12-1350012240.38-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 387194 frames written to 2012-10-12-1350012240.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-758490
-Worker for 2012-10-12-1350012245.18-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012245.18-demo.wav has no TGID
-done - result 1516980 frames written to 2012-10-12-1350012245.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350012267.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012267.81-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350012267.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350012270.44-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012270.44-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350012270.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-297538
-Worker for 2012-10-12-1350012359.48-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 595076 frames written to 2012-10-12-1350012359.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-516031
-Worker for 2012-10-12-1350012367.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012367.26-demo.wav has no TGID
-done - result 1032062 frames written to 2012-10-12-1350012367.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350012383.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012383.75-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350012383.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350012386.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012386.46-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350012386.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-291736
-Worker for 2012-10-12-1350012392.15-demo.wav
-GLG,44010,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44010,1,0,NONE,NONE,NONE
-done - result 583472 frames written to 2012-10-12-1350012392.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-723550
-Worker for 2012-10-12-1350012400.22-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1447100 frames written to 2012-10-12-1350012400.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-246852
-Worker for 2012-10-12-1350012419.89-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 493704 frames written to 2012-10-12-1350012419.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1066457
-Worker for 2012-10-12-1350012426.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012426.09-demo.wav has no TGID
-done - result 2132914 frames written to 2012-10-12-1350012426.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350012456.18-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012456.18-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350012456.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-163841
-Worker for 2012-10-12-1350012468.6-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 327682 frames written to 2012-10-12-1350012468.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152644
-Worker for 2012-10-12-1350012472.8-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 305288 frames written to 2012-10-12-1350012472.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-197700
-Worker for 2012-10-12-1350012476.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 395400 frames written to 2012-10-12-1350012476.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-229444
-Worker for 2012-10-12-1350012482.04-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012482.04-demo.wav has no TGID
-done - result 458888 frames written to 2012-10-12-1350012482.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-593782
-Worker for 2012-10-12-1350012487.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012487.71-demo.wav has no TGID
-done - result 1187564 frames written to 2012-10-12-1350012487.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350012506.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012506.16-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350012506.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-178244
-Worker for 2012-10-12-1350012508.67-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 356488 frames written to 2012-10-12-1350012508.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350012513.39-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350012513.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-855108
-Worker for 2012-10-12-1350012516.87-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012516.87-demo.wav has no TGID
-done - result 1710216 frames written to 2012-10-12-1350012516.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-747588
-Worker for 2012-10-12-1350012537.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012537.47-demo.wav has no TGID
-done - result 1495176 frames written to 2012-10-12-1350012537.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350012555.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012555.5-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350012555.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173837
-Worker for 2012-10-12-1350012591.15-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 347674 frames written to 2012-10-12-1350012591.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139332
-Worker for 2012-10-12-1350012595.59-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 278664 frames written to 2012-10-12-1350012595.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-324611
-Worker for 2012-10-12-1350012599.55-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 649222 frames written to 2012-10-12-1350012599.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-602129
-Worker for 2012-10-12-1350012607.61-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012607.61-demo.wav has no TGID
-done - result 1204258 frames written to 2012-10-12-1350012607.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350012625.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012625.25-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350012625.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350012628.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012628.03-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350012628.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113839
-Worker for 2012-10-12-1350012682.36-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 227678 frames written to 2012-10-12-1350012682.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152644
-Worker for 2012-10-12-1350012685.53-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 305288 frames written to 2012-10-12-1350012685.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-207940
-Worker for 2012-10-12-1350012689.33-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 415880 frames written to 2012-10-12-1350012689.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-163902
-Worker for 2012-10-12-1350012694.67-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 327804 frames written to 2012-10-12-1350012694.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-291782
-Worker for 2012-10-12-1350012699.48-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 583564 frames written to 2012-10-12-1350012699.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-255044
-Worker for 2012-10-12-1350012706.99-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 510088 frames written to 2012-10-12-1350012706.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-507959
-Worker for 2012-10-12-1350012713.3-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1015918 frames written to 2012-10-12-1350012713.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-819268
-Worker for 2012-10-12-1350012725.63-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1638536 frames written to 2012-10-12-1350012725.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-3579972
-Worker for 2012-10-12-1350012745.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012745.55-demo.wav has no TGID
-done - result 7159944 frames written to 2012-10-12-1350012745.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-639098
-Worker for 2012-10-12-1350012831.44-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1278196 frames written to 2012-10-12-1350012831.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-400682
-Worker for 2012-10-12-1350012847.72-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 801364 frames written to 2012-10-12-1350012847.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-393284
-Worker for 2012-10-12-1350012857.92-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 786568 frames written to 2012-10-12-1350012857.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1334930
-Worker for 2012-10-12-1350012867.99-demo.wav
-GLG,44027,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2669860 frames written to 2012-10-12-1350012867.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175172
-Worker for 2012-10-12-1350012904.11-demo.wav
-GLG,44027,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 350344 frames written to 2012-10-12-1350012904.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-513836
-Worker for 2012-10-12-1350012910.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012910.01-demo.wav has no TGID
-done - result 1027672 frames written to 2012-10-12-1350012910.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350012926.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012926.81-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350012926.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350012929.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350012929.37-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350012929.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76852
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-117399
-Worker for 2012-10-12-1350013068.56-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 234798 frames written to 2012-10-12-1350013068.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-131140
-Worker for 2012-10-12-1350013071.72-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 262280 frames written to 2012-10-12-1350013071.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-136260
-Worker for 2012-10-12-1350013075.17-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 272520 frames written to 2012-10-12-1350013075.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141380
-Worker for 2012-10-12-1350013078.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 282760 frames written to 2012-10-12-1350013078.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-594468
-Worker for 2012-10-12-1350013082.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1188936 frames written to 2012-10-12-1350013082.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151620
-Worker for 2012-10-12-1350013097.4-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 303240 frames written to 2012-10-12-1350013097.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-659481
-Worker for 2012-10-12-1350013101.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013101.23-demo.wav has no TGID
-done - result 1318962 frames written to 2012-10-12-1350013101.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-508460
-Worker for 2012-10-12-1350013117.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013117.2-demo.wav has no TGID
-done - result 1016920 frames written to 2012-10-12-1350013117.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350013135.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013135.19-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350013135.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155196
-Worker for 2012-10-12-1350013144.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 310392 frames written to 2012-10-12-1350013144.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350013148.64-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 196744 frames written to 2012-10-12-1350013148.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-189508
-Worker for 2012-10-12-1350013151.24-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 379016 frames written to 2012-10-12-1350013151.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-150596
-Worker for 2012-10-12-1350013156.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 301192 frames written to 2012-10-12-1350013156.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-789572
-Worker for 2012-10-12-1350013160.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013160.47-demo.wav has no TGID
-done - result 1579144 frames written to 2012-10-12-1350013160.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350013179.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013179.71-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350013179.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141884
-Worker for 2012-10-12-1350013304.59-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 283768 frames written to 2012-10-12-1350013304.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-128068
-Worker for 2012-10-12-1350013308.21-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 256136 frames written to 2012-10-12-1350013308.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-272293
-Worker for 2012-10-12-1350013311.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 544586 frames written to 2012-10-12-1350013311.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-764411
-Worker for 2012-10-12-1350013318.47-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013318.47-demo.wav has no TGID
-done - result 1528822 frames written to 2012-10-12-1350013318.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350013341.8-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013341.8-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350013341.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350013344.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013344.4-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350013344.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-251678
-Worker for 2012-10-12-1350013412.03-demo.wav
-GLG,30234,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 503356 frames written to 2012-10-12-1350013412.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-675908
-Worker for 2012-10-12-1350013419.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013419.14-demo.wav has no TGID
-done - result 1351816 frames written to 2012-10-12-1350013419.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350013435.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013435.73-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350013435.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350013438.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013438.3-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350013438.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104680
-Worker for 2012-10-12-1350013454.22-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 209360 frames written to 2012-10-12-1350013454.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76031
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-548932
-Worker for 2012-10-12-1350013458.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013458.81-demo.wav has no TGID
-done - result 1097864 frames written to 2012-10-12-1350013458.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350013472.15-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013472.15-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350013472.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-363633
-Worker for 2012-10-12-1350013522.62-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 727266 frames written to 2012-10-12-1350013522.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-145476
-Worker for 2012-10-12-1350013531.55-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 290952 frames written to 2012-10-12-1350013531.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-412949
-Worker for 2012-10-12-1350013535.88-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 825898 frames written to 2012-10-12-1350013535.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350013548.18-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350013548.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1177668
-Worker for 2012-10-12-1350013551.12-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2355336 frames written to 2012-10-12-1350013551.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-848964
-Worker for 2012-10-12-1350013579.69-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1697928 frames written to 2012-10-12-1350013579.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1113156
-Worker for 2012-10-12-1350013600.4-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2226312 frames written to 2012-10-12-1350013600.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-694664
-Worker for 2012-10-12-1350013629.81-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1389328 frames written to 2012-10-12-1350013629.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350013646.58-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 184456 frames written to 2012-10-12-1350013646.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350013650.72-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 215176 frames written to 2012-10-12-1350013650.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2034756
-Worker for 2012-10-12-1350013653.66-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 4069512 frames written to 2012-10-12-1350013653.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-434244
-Worker for 2012-10-12-1350013702.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013702.35-demo.wav has no TGID
-done - result 868488 frames written to 2012-10-12-1350013702.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1166238
-Worker for 2012-10-12-1350013713.04-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2332476 frames written to 2012-10-12-1350013713.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-761924
-Worker for 2012-10-12-1350013741.77-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013741.77-demo.wav has no TGID
-done - result 1523848 frames written to 2012-10-12-1350013741.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350013760.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013760.12-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350013760.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139757
-Worker for 2012-10-12-1350013769.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 279514 frames written to 2012-10-12-1350013769.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-135236
-Worker for 2012-10-12-1350013773.73-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 270472 frames written to 2012-10-12-1350013773.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188395
-Worker for 2012-10-12-1350013777.41-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 376790 frames written to 2012-10-12-1350013777.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-449604
-Worker for 2012-10-12-1350013782.39-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 899208 frames written to 2012-10-12-1350013782.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-142401
-Worker for 2012-10-12-1350013793.37-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 284802 frames written to 2012-10-12-1350013793.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1541188
-Worker for 2012-10-12-1350013797.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013797.1-demo.wav has no TGID
-done - result 3082376 frames written to 2012-10-12-1350013797.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-466576
-Worker for 2012-10-12-1350013834.0-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013834.0-demo.wav has no TGID
-done - result 933152 frames written to 2012-10-12-1350013834.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350013851.36-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013851.36-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350013851.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110483
-Worker for 2012-10-12-1350013857.65-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 220966 frames written to 2012-10-12-1350013857.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-231204
-Worker for 2012-10-12-1350013861.59-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 462408 frames written to 2012-10-12-1350013861.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350013867.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 196744 frames written to 2012-10-12-1350013867.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-183364
-Worker for 2012-10-12-1350013870.07-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 366728 frames written to 2012-10-12-1350013870.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1107467
-Worker for 2012-10-12-1350013874.69-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013874.69-demo.wav has no TGID
-done - result 2214934 frames written to 2012-10-12-1350013874.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350013905.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013905.71-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350013905.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147810
-Worker for 2012-10-12-1350013920.56-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 295620 frames written to 2012-10-12-1350013920.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138308
-Worker for 2012-10-12-1350013924.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 276616 frames written to 2012-10-12-1350013924.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-126016
-Worker for 2012-10-12-1350013928.23-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 252032 frames written to 2012-10-12-1350013928.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-164932
-Worker for 2012-10-12-1350013931.75-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 329864 frames written to 2012-10-12-1350013931.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98331
-Worker for 2012-10-12-1350013935.98-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 196662 frames written to 2012-10-12-1350013935.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-383905
-Worker for 2012-10-12-1350013939.42-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 767810 frames written to 2012-10-12-1350013939.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-160597
-Worker for 2012-10-12-1350013949.51-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 321194 frames written to 2012-10-12-1350013949.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-456750
-Worker for 2012-10-12-1350013954.47-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 913500 frames written to 2012-10-12-1350013954.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-277405
-Worker for 2012-10-12-1350013968.33-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 554810 frames written to 2012-10-12-1350013968.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-157764
-Worker for 2012-10-12-1350013975.25-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 315528 frames written to 2012-10-12-1350013975.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-182340
-Worker for 2012-10-12-1350013979.34-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 364680 frames written to 2012-10-12-1350013979.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127352
-Worker for 2012-10-12-1350013984.76-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350013984.76-demo.wav has no TGID
-done - result 254704 frames written to 2012-10-12-1350013984.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-376900
-Worker for 2012-10-12-1350013988.1-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 753800 frames written to 2012-10-12-1350013988.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-134212
-Worker for 2012-10-12-1350013997.34-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 268424 frames written to 2012-10-12-1350013997.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-198703
-Worker for 2012-10-12-1350014001.93-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 397406 frames written to 2012-10-12-1350014001.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1136708
-Worker for 2012-10-12-1350014007.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2273416 frames written to 2012-10-12-1350014007.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113732
-Worker for 2012-10-12-1350014036.29-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 227464 frames written to 2012-10-12-1350014036.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1913924
-Worker for 2012-10-12-1350014039.75-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 3827848 frames written to 2012-10-12-1350014039.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-170780
-Worker for 2012-10-12-1350014085.61-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 341560 frames written to 2012-10-12-1350014085.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2132036
-Worker for 2012-10-12-1350014089.97-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 4264072 frames written to 2012-10-12-1350014089.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1104964
-Worker for 2012-10-12-1350014141.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014141.06-demo.wav has no TGID
-done - result 2209928 frames written to 2012-10-12-1350014141.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132164
-Worker for 2012-10-12-1350014167.67-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 264328 frames written to 2012-10-12-1350014167.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151737
-Worker for 2012-10-12-1350014171.66-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 303474 frames written to 2012-10-12-1350014171.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110660
-Worker for 2012-10-12-1350014175.54-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 221320 frames written to 2012-10-12-1350014175.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-267328
-Worker for 2012-10-12-1350014178.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014178.84-demo.wav has no TGID
-done - result 534656 frames written to 2012-10-12-1350014178.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-247876
-Worker for 2012-10-12-1350014185.44-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 495752 frames written to 2012-10-12-1350014185.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350014191.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350014191.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1243204
-Worker for 2012-10-12-1350014194.54-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2486408 frames written to 2012-10-12-1350014194.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1208262
-Worker for 2012-10-12-1350014225.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014225.26-demo.wav has no TGID
-done - result 2416524 frames written to 2012-10-12-1350014225.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147413
-Worker for 2012-10-12-1350014254.33-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 294826 frames written to 2012-10-12-1350014254.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-559172
-Worker for 2012-10-12-1350014258.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014258.06-demo.wav has no TGID
-done - result 1118344 frames written to 2012-10-12-1350014258.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-227396
-Worker for 2012-10-12-1350014271.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 454792 frames written to 2012-10-12-1350014271.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-215796
-Worker for 2012-10-12-1350014277.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 431592 frames written to 2012-10-12-1350014277.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-187460
-Worker for 2012-10-12-1350014283.36-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014283.36-demo.wav has no TGID
-done - result 374920 frames written to 2012-10-12-1350014283.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-172712
-Worker for 2012-10-12-1350014288.52-demo.wav
-GLG,i1045420,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 345424 frames written to 2012-10-12-1350014288.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-495684
-Worker for 2012-10-12-1350014293.39-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 991368 frames written to 2012-10-12-1350014293.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-172100
-Worker for 2012-10-12-1350014306.16-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 344200 frames written to 2012-10-12-1350014306.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-198724
-Worker for 2012-10-12-1350014310.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 397448 frames written to 2012-10-12-1350014310.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-280601
-Worker for 2012-10-12-1350014315.7-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 561202 frames written to 2012-10-12-1350014315.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-793484
-Worker for 2012-10-12-1350014322.68-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014322.68-demo.wav has no TGID
-done - result 1586968 frames written to 2012-10-12-1350014322.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108612
-Worker for 2012-10-12-1350014345.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014345.14-demo.wav has no TGID
-done - result 217224 frames written to 2012-10-12-1350014345.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350014348.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014348.1-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350014348.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350014350.57-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 209032 frames written to 2012-10-12-1350014350.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74410
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-659524
-Worker for 2012-10-12-1350014356.63-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014356.63-demo.wav has no TGID
-done - result 1319048 frames written to 2012-10-12-1350014356.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350014372.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014372.56-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350014372.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106164
-Worker for 2012-10-12-1350014392.82-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 212328 frames written to 2012-10-12-1350014392.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76064
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-588868
-Worker for 2012-10-12-1350014398.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014398.03-demo.wav has no TGID
-done - result 1177736 frames written to 2012-10-12-1350014398.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350014412.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014412.24-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350014412.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-148616
-Worker for 2012-10-12-1350014468.04-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 297232 frames written to 2012-10-12-1350014468.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-171076
-Worker for 2012-10-12-1350014472.39-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 342152 frames written to 2012-10-12-1350014472.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-197616
-Worker for 2012-10-12-1350014476.77-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 395232 frames written to 2012-10-12-1350014476.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-799961
-Worker for 2012-10-12-1350014482.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014482.03-demo.wav has no TGID
-done - result 1599922 frames written to 2012-10-12-1350014482.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350014505.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014505.32-demo.wav has no TGID
-done - result 213128 frames written to 2012-10-12-1350014505.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350014508.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014508.12-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350014508.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350014518.52-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 211080 frames written to 2012-10-12-1350014518.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-150596
-Worker for 2012-10-12-1350014522.14-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 301192 frames written to 2012-10-12-1350014522.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350014526.27-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 213128 frames written to 2012-10-12-1350014526.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1091652
-Worker for 2012-10-12-1350014529.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014529.17-demo.wav has no TGID
-done - result 2183304 frames written to 2012-10-12-1350014529.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-284735
-Worker for 2012-10-12-1350014555.41-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 569470 frames written to 2012-10-12-1350014555.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2217028
-Worker for 2012-10-12-1350014562.82-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014562.82-demo.wav has no TGID
-done - result 4434056 frames written to 2012-10-12-1350014562.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-393284
-Worker for 2012-10-12-1350014616.25-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 786568 frames written to 2012-10-12-1350014616.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-284698
-Worker for 2012-10-12-1350014625.93-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 569396 frames written to 2012-10-12-1350014625.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1132589
-Worker for 2012-10-12-1350014633.26-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2265178 frames written to 2012-10-12-1350014633.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1168183
-Worker for 2012-10-12-1350014662.8-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014662.8-demo.wav has no TGID
-done - result 2336366 frames written to 2012-10-12-1350014662.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-515140
-Worker for 2012-10-12-1350014690.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1030280 frames written to 2012-10-12-1350014690.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-126002
-Worker for 2012-10-12-1350014703.32-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 252004 frames written to 2012-10-12-1350014703.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-938052
-Worker for 2012-10-12-1350014706.61-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1876104 frames written to 2012-10-12-1350014706.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175172
-Worker for 2012-10-12-1350014729.41-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 350344 frames written to 2012-10-12-1350014729.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-590916
-Worker for 2012-10-12-1350014734.09-demo.wav
-GLG,30234,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1181832 frames written to 2012-10-12-1350014734.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-770116
-Worker for 2012-10-12-1350014748.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014748.39-demo.wav has no TGID
-done - result 1540232 frames written to 2012-10-12-1350014748.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-200772
-Worker for 2012-10-12-1350014766.93-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 401544 frames written to 2012-10-12-1350014766.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-148484
-Worker for 2012-10-12-1350014772.04-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 296968 frames written to 2012-10-12-1350014772.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-420932
-Worker for 2012-10-12-1350014776.46-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 841864 frames written to 2012-10-12-1350014776.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-265618
-Worker for 2012-10-12-1350014789.16-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 531236 frames written to 2012-10-12-1350014789.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175172
-Worker for 2012-10-12-1350014795.79-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 350344 frames written to 2012-10-12-1350014795.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76846
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-288763
-Worker for 2012-10-12-1350014802.8-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 577526 frames written to 2012-10-12-1350014802.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-144452
-Worker for 2012-10-12-1350014809.98-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 288904 frames written to 2012-10-12-1350014809.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350014814.83-demo.wav
-GLG,44039,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 192648 frames written to 2012-10-12-1350014814.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1015525
-Worker for 2012-10-12-1350014817.43-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014817.43-demo.wav has no TGID
-done - result 2031050 frames written to 2012-10-12-1350014817.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350014845.82-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014845.82-demo.wav has no TGID
-done - result 229512 frames written to 2012-10-12-1350014845.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350014848.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350014848.78-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350014848.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-170347
-Worker for 2012-10-12-1350014979.59-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 340694 frames written to 2012-10-12-1350014979.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-656311
-Worker for 2012-10-12-1350014984.93-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1312622 frames written to 2012-10-12-1350014984.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-262212
-Worker for 2012-10-12-1350015000.78-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 524424 frames written to 2012-10-12-1350015000.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-721988
-Worker for 2012-10-12-1350015007.18-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015007.18-demo.wav has no TGID
-done - result 1443976 frames written to 2012-10-12-1350015007.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-453700
-Worker for 2012-10-12-1350015024.57-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015024.57-demo.wav has no TGID
-done - result 907400 frames written to 2012-10-12-1350015024.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-749636
-Worker for 2012-10-12-1350015035.48-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015035.48-demo.wav has no TGID
-done - result 1499272 frames written to 2012-10-12-1350015035.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350015053.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015053.5-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350015053.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-181981
-Worker for 2012-10-12-1350015187.71-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 363962 frames written to 2012-10-12-1350015187.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74829
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-644164
-Worker for 2012-10-12-1350015193.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015193.7-demo.wav has no TGID
-done - result 1288328 frames written to 2012-10-12-1350015193.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350015209.22-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015209.22-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350015209.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75610
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-150868
-Worker for 2012-10-12-1350015355.49-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 301736 frames written to 2012-10-12-1350015355.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-255854
-Worker for 2012-10-12-1350015360.46-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 511708 frames written to 2012-10-12-1350015360.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-203844
-Worker for 2012-10-12-1350015366.9-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 407688 frames written to 2012-10-12-1350015366.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-663620
-Worker for 2012-10-12-1350015371.98-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1327240 frames written to 2012-10-12-1350015371.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350015388.04-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 184456 frames written to 2012-10-12-1350015388.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114680
-Worker for 2012-10-12-1350015390.5-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 229360 frames written to 2012-10-12-1350015390.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-796740
-Worker for 2012-10-12-1350015394.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015394.55-demo.wav has no TGID
-done - result 1593480 frames written to 2012-10-12-1350015394.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350015413.69-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015413.69-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350015413.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350015416.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015416.23-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350015416.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-44106
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-121318
-Worker for 2012-10-12-1350015622.79-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 242636 frames written to 2012-10-12-1350015622.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-631405
-Worker for 2012-10-12-1350015627.21-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1262810 frames written to 2012-10-12-1350015627.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-852036
-Worker for 2012-10-12-1350015642.45-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1704072 frames written to 2012-10-12-1350015642.45-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2851908
-Worker for 2012-10-12-1350015662.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015662.88-demo.wav has no TGID
-done - result 5703816 frames written to 2012-10-12-1350015662.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-625732
-Worker for 2012-10-12-1350015731.63-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015731.63-demo.wav has no TGID
-done - result 1251464 frames written to 2012-10-12-1350015731.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350015746.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015746.71-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350015746.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350015749.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015749.25-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350015749.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153089
-Worker for 2012-10-12-1350015754.75-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 306178 frames written to 2012-10-12-1350015754.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-612467
-Worker for 2012-10-12-1350015759.72-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1224934 frames written to 2012-10-12-1350015759.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-250918
-Worker for 2012-10-12-1350015774.76-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 501836 frames written to 2012-10-12-1350015774.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-713974
-Worker for 2012-10-12-1350015781.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015781.94-demo.wav has no TGID
-done - result 1427948 frames written to 2012-10-12-1350015781.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-458820
-Worker for 2012-10-12-1350015799.22-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 917640 frames written to 2012-10-12-1350015799.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-842944
-Worker for 2012-10-12-1350015810.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015810.79-demo.wav has no TGID
-done - result 1685888 frames written to 2012-10-12-1350015810.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350015835.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015835.09-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350015835.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350015837.69-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015837.69-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350015837.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173742
-Worker for 2012-10-12-1350015852.64-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 347484 frames written to 2012-10-12-1350015852.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141380
-Worker for 2012-10-12-1350015856.89-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 282760 frames written to 2012-10-12-1350015856.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-172656
-Worker for 2012-10-12-1350015861.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 345312 frames written to 2012-10-12-1350015861.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-131119
-Worker for 2012-10-12-1350015865.74-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 262238 frames written to 2012-10-12-1350015865.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-429235
-Worker for 2012-10-12-1350015869.84-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 858470 frames written to 2012-10-12-1350015869.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-185412
-Worker for 2012-10-12-1350015883.15-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 370824 frames written to 2012-10-12-1350015883.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-594815
-Worker for 2012-10-12-1350015887.74-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015887.74-demo.wav has no TGID
-done - result 1189630 frames written to 2012-10-12-1350015887.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350015905.77-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015905.77-demo.wav has no TGID
-done - result 215176 frames written to 2012-10-12-1350015905.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350015908.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015908.75-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350015908.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-115652
-Worker for 2012-10-12-1350015968.61-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 231304 frames written to 2012-10-12-1350015968.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-545860
-Worker for 2012-10-12-1350015972.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015972.72-demo.wav has no TGID
-done - result 1091720 frames written to 2012-10-12-1350015972.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350015985.85-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350015985.85-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350015985.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105481
-Worker for 2012-10-12-1350016000.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 210962 frames written to 2012-10-12-1350016000.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-118852
-Worker for 2012-10-12-1350016003.21-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 237704 frames written to 2012-10-12-1350016003.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-259140
-Worker for 2012-10-12-1350016006.48-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 518280 frames written to 2012-10-12-1350016006.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-270404
-Worker for 2012-10-12-1350016013.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016013.23-demo.wav has no TGID
-done - result 540808 frames written to 2012-10-12-1350016013.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-511457
-Worker for 2012-10-12-1350016019.92-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016019.92-demo.wav has no TGID
-done - result 1022914 frames written to 2012-10-12-1350016019.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350016038.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016038.06-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350016038.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-119650
-Worker for 2012-10-12-1350016046.51-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 239300 frames written to 2012-10-12-1350016046.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-560196
-Worker for 2012-10-12-1350016050.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016050.86-demo.wav has no TGID
-done - result 1120392 frames written to 2012-10-12-1350016050.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350016064.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016064.72-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350016064.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350016067.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016067.33-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350016067.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146326
-Worker for 2012-10-12-1350016078.28-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 292652 frames written to 2012-10-12-1350016078.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75408
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-197700
-Worker for 2012-10-12-1350016083.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 395400 frames written to 2012-10-12-1350016083.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-229198
-Worker for 2012-10-12-1350016089.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 458396 frames written to 2012-10-12-1350016089.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-370867
-Worker for 2012-10-12-1350016096.11-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 741734 frames written to 2012-10-12-1350016096.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138308
-Worker for 2012-10-12-1350016105.31-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 276616 frames written to 2012-10-12-1350016105.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1189537
-Worker for 2012-10-12-1350016108.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2379074 frames written to 2012-10-12-1350016108.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152644
-Worker for 2012-10-12-1350016140.95-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 305288 frames written to 2012-10-12-1350016140.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-257585
-Worker for 2012-10-12-1350016145.74-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 515170 frames written to 2012-10-12-1350016145.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-337987
-Worker for 2012-10-12-1350016152.44-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 675974 frames written to 2012-10-12-1350016152.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74708
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-122948
-Worker for 2012-10-12-1350016162.92-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 245896 frames written to 2012-10-12-1350016162.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-376900
-Worker for 2012-10-12-1350016166.31-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 753800 frames written to 2012-10-12-1350016166.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-136229
-Worker for 2012-10-12-1350016177.23-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 272458 frames written to 2012-10-12-1350016177.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-365636
-Worker for 2012-10-12-1350016181.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016181.14-demo.wav has no TGID
-done - result 731272 frames written to 2012-10-12-1350016181.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-747588
-Worker for 2012-10-12-1350016190.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016190.16-demo.wav has no TGID
-done - result 1495176 frames written to 2012-10-12-1350016190.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139332
-Worker for 2012-10-12-1350016208.39-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 278664 frames written to 2012-10-12-1350016208.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350016212.49-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 198792 frames written to 2012-10-12-1350016212.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-128068
-Worker for 2012-10-12-1350016215.11-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 256136 frames written to 2012-10-12-1350016215.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77880
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-897092
-Worker for 2012-10-12-1350016221.42-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1794184 frames written to 2012-10-12-1350016221.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1007684
-Worker for 2012-10-12-1350016243.05-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016243.05-demo.wav has no TGID
-done - result 2015368 frames written to 2012-10-12-1350016243.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-485872
-Worker for 2012-10-12-1350016267.71-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 971744 frames written to 2012-10-12-1350016267.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-237215
-Worker for 2012-10-12-1350016280.29-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 474430 frames written to 2012-10-12-1350016280.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-245828
-Worker for 2012-10-12-1350016286.15-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 491656 frames written to 2012-10-12-1350016286.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1419329
-Worker for 2012-10-12-1350016292.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016292.81-demo.wav has no TGID
-done - result 2838658 frames written to 2012-10-12-1350016292.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-488892
-Worker for 2012-10-12-1350016326.82-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016326.82-demo.wav has no TGID
-done - result 977784 frames written to 2012-10-12-1350016326.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350016343.61-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016343.61-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350016343.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350016346.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016346.12-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350016346.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-162624
-Worker for 2012-10-12-1350016376.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 325248 frames written to 2012-10-12-1350016376.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-236612
-Worker for 2012-10-12-1350016380.7-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 473224 frames written to 2012-10-12-1350016380.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-202584
-Worker for 2012-10-12-1350016386.99-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 405168 frames written to 2012-10-12-1350016386.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-777321
-Worker for 2012-10-12-1350016392.67-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1554642 frames written to 2012-10-12-1350016392.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350016411.4-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 198792 frames written to 2012-10-12-1350016411.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-509990
-Worker for 2012-10-12-1350016414.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016414.72-demo.wav has no TGID
-done - result 1019980 frames written to 2012-10-12-1350016414.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350016431.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016431.02-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350016431.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350016433.64-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016433.64-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350016433.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105484
-Worker for 2012-10-12-1350016466.06-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 210968 frames written to 2012-10-12-1350016466.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138308
-Worker for 2012-10-12-1350016468.9-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 276616 frames written to 2012-10-12-1350016468.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-248856
-Worker for 2012-10-12-1350016472.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 497712 frames written to 2012-10-12-1350016472.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1492036
-Worker for 2012-10-12-1350016478.9-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2984072 frames written to 2012-10-12-1350016478.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109636
-Worker for 2012-10-12-1350016514.91-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 219272 frames written to 2012-10-12-1350016514.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1263684
-Worker for 2012-10-12-1350016518.44-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2527368 frames written to 2012-10-12-1350016518.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-169028
-Worker for 2012-10-12-1350016548.91-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 338056 frames written to 2012-10-12-1350016548.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111662
-Worker for 2012-10-12-1350016553.96-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 223324 frames written to 2012-10-12-1350016553.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1271866
-Worker for 2012-10-12-1350016557.29-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2543732 frames written to 2012-10-12-1350016557.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-525380
-Worker for 2012-10-12-1350016589.87-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1050760 frames written to 2012-10-12-1350016589.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-390491
-Worker for 2012-10-12-1350016603.47-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 780982 frames written to 2012-10-12-1350016603.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-142360
-Worker for 2012-10-12-1350016613.06-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 284720 frames written to 2012-10-12-1350016613.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-780356
-Worker for 2012-10-12-1350016617.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016617.32-demo.wav has no TGID
-done - result 1560712 frames written to 2012-10-12-1350016617.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-170052
-Worker for 2012-10-12-1350016636.22-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 340104 frames written to 2012-10-12-1350016636.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-222276
-Worker for 2012-10-12-1350016641.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 444552 frames written to 2012-10-12-1350016641.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-665622
-Worker for 2012-10-12-1350016647.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016647.2-demo.wav has no TGID
-done - result 1331244 frames written to 2012-10-12-1350016647.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-510895
-Worker for 2012-10-12-1350016663.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016663.2-demo.wav has no TGID
-done - result 1021790 frames written to 2012-10-12-1350016663.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350016681.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016681.37-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350016681.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350016683.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016683.88-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350016683.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249924
-Worker for 2012-10-12-1350016687.16-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 499848 frames written to 2012-10-12-1350016687.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-286544
-Worker for 2012-10-12-1350016694.64-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 573088 frames written to 2012-10-12-1350016694.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-759779
-Worker for 2012-10-12-1350016702.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016702.56-demo.wav has no TGID
-done - result 1519558 frames written to 2012-10-12-1350016702.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350016720.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016720.88-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350016720.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350016723.74-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016723.74-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350016723.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105491
-Worker for 2012-10-12-1350016738.53-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 210982 frames written to 2012-10-12-1350016738.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-491588
-Worker for 2012-10-12-1350016742.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016742.3-demo.wav has no TGID
-done - result 983176 frames written to 2012-10-12-1350016742.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350016754.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016754.25-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350016754.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350016756.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016756.81-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350016756.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-248110
-Worker for 2012-10-12-1350016774.5-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 496220 frames written to 2012-10-12-1350016774.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249924
-Worker for 2012-10-12-1350016783.58-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 499848 frames written to 2012-10-12-1350016783.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1088580
-Worker for 2012-10-12-1350016791.31-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 2177160 frames written to 2012-10-12-1350016791.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-160794
-Worker for 2012-10-12-1350016819.8-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016819.8-demo.wav has no TGID
-done - result 321588 frames written to 2012-10-12-1350016819.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-294980
-Worker for 2012-10-12-1350016823.81-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 589960 frames written to 2012-10-12-1350016823.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-180054
-Worker for 2012-10-12-1350016831.84-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 360108 frames written to 2012-10-12-1350016831.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-767044
-Worker for 2012-10-12-1350016837.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016837.37-demo.wav has no TGID
-done - result 1534088 frames written to 2012-10-12-1350016837.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350016855.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016855.78-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350016855.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114613
-Worker for 2012-10-12-1350016928.19-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 229226 frames written to 2012-10-12-1350016928.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-528452
-Worker for 2012-10-12-1350016932.26-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016932.26-demo.wav has no TGID
-done - result 1056904 frames written to 2012-10-12-1350016932.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350016945.0-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350016945.0-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350016945.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-189227
-Worker for 2012-10-12-1350016959.54-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 378454 frames written to 2012-10-12-1350016959.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-227335
-Worker for 2012-10-12-1350016964.71-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 454670 frames written to 2012-10-12-1350016964.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-363131
-Worker for 2012-10-12-1350016971.26-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 726262 frames written to 2012-10-12-1350016971.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2970692
-Worker for 2012-10-12-1350016980.62-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 5941384 frames written to 2012-10-12-1350016980.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-390917
-Worker for 2012-10-12-1350017051.58-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 781834 frames written to 2012-10-12-1350017051.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-194478
-Worker for 2012-10-12-1350017061.49-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 388956 frames written to 2012-10-12-1350017061.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-161845
-Worker for 2012-10-12-1350017069.21-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 323690 frames written to 2012-10-12-1350017069.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-876612
-Worker for 2012-10-12-1350017073.3-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1753224 frames written to 2012-10-12-1350017073.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-191917
-Worker for 2012-10-12-1350017096.84-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 383834 frames written to 2012-10-12-1350017096.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139332
-Worker for 2012-10-12-1350017101.73-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 278664 frames written to 2012-10-12-1350017101.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-516164
-Worker for 2012-10-12-1350017105.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017105.33-demo.wav has no TGID
-done - result 1032328 frames written to 2012-10-12-1350017105.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-420932
-Worker for 2012-10-12-1350017117.84-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 841864 frames written to 2012-10-12-1350017117.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-675845
-Worker for 2012-10-12-1350017128.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017128.78-demo.wav has no TGID
-done - result 1351690 frames written to 2012-10-12-1350017128.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350017145.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017145.01-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350017145.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-140486
-Worker for 2012-10-12-1350017149.54-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 280972 frames written to 2012-10-12-1350017149.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-582724
-Worker for 2012-10-12-1350017154.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017154.17-demo.wav has no TGID
-done - result 1165448 frames written to 2012-10-12-1350017154.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350017168.24-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017168.24-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350017168.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350017170.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017170.79-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350017170.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-257092
-Worker for 2012-10-12-1350017173.08-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 514184 frames written to 2012-10-12-1350017173.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-148548
-Worker for 2012-10-12-1350017179.36-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 297096 frames written to 2012-10-12-1350017179.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109570
-Worker for 2012-10-12-1350017183.14-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 219140 frames written to 2012-10-12-1350017183.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-203844
-Worker for 2012-10-12-1350017185.99-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017185.99-demo.wav has no TGID
-done - result 407688 frames written to 2012-10-12-1350017185.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152644
-Worker for 2012-10-12-1350017191.08-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 305288 frames written to 2012-10-12-1350017191.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-168894
-Worker for 2012-10-12-1350017195.89-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 337788 frames written to 2012-10-12-1350017195.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-833604
-Worker for 2012-10-12-1350017200.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017200.3-demo.wav has no TGID
-done - result 1667208 frames written to 2012-10-12-1350017200.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-547325
-Worker for 2012-10-12-1350017220.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017220.39-demo.wav has no TGID
-done - result 1094650 frames written to 2012-10-12-1350017220.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350017238.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017238.09-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350017238.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350017240.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017240.5-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350017240.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105115
-Worker for 2012-10-12-1350017246.0-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 210230 frames written to 2012-10-12-1350017246.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350017248.64-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 200840 frames written to 2012-10-12-1350017248.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350017251.48-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 204936 frames written to 2012-10-12-1350017251.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-116804
-Worker for 2012-10-12-1350017254.18-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 233608 frames written to 2012-10-12-1350017254.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-208848
-Worker for 2012-10-12-1350017257.46-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 417696 frames written to 2012-10-12-1350017257.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-759876
-Worker for 2012-10-12-1350017263.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017263.34-demo.wav has no TGID
-done - result 1519752 frames written to 2012-10-12-1350017263.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350017281.64-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017281.64-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350017281.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350017284.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017284.3-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350017284.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-130634
-Worker for 2012-10-12-1350017336.62-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 261268 frames written to 2012-10-12-1350017336.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-118852
-Worker for 2012-10-12-1350017339.93-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 237704 frames written to 2012-10-12-1350017339.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1154116
-Worker for 2012-10-12-1350017343.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017343.96-demo.wav has no TGID
-done - result 2308232 frames written to 2012-10-12-1350017343.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-513756
-Worker for 2012-10-12-1350017371.67-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017371.67-demo.wav has no TGID
-done - result 1027512 frames written to 2012-10-12-1350017371.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350017389.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017389.35-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350017389.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350017391.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017391.96-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350017391.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105059
-Worker for 2012-10-12-1350017509.26-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 210118 frames written to 2012-10-12-1350017509.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-237090
-Worker for 2012-10-12-1350017515.29-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 474180 frames written to 2012-10-12-1350017515.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-648260
-Worker for 2012-10-12-1350017521.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017521.86-demo.wav has no TGID
-done - result 1296520 frames written to 2012-10-12-1350017521.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350017537.51-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017537.51-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350017537.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350017540.0-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017540.0-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350017540.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153340
-Worker for 2012-10-12-1350017559.36-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 306680 frames written to 2012-10-12-1350017559.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108612
-Worker for 2012-10-12-1350017563.68-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 217224 frames written to 2012-10-12-1350017563.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-162884
-Worker for 2012-10-12-1350017566.6-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 325768 frames written to 2012-10-12-1350017566.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2126912
-Worker for 2012-10-12-1350017571.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017571.84-demo.wav has no TGID
-done - result 4253824 frames written to 2012-10-12-1350017571.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-202820
-Worker for 2012-10-12-1350017622.74-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 405640 frames written to 2012-10-12-1350017622.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-141349
-Worker for 2012-10-12-1350017627.73-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 282698 frames written to 2012-10-12-1350017627.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1042500
-Worker for 2012-10-12-1350017631.44-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017631.44-demo.wav has no TGID
-done - result 2085000 frames written to 2012-10-12-1350017631.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-491616
-Worker for 2012-10-12-1350017656.51-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017656.51-demo.wav has no TGID
-done - result 983232 frames written to 2012-10-12-1350017656.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350017673.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017673.84-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350017673.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-182783
-Worker for 2012-10-12-1350017724.84-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 365566 frames written to 2012-10-12-1350017724.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-133188
-Worker for 2012-10-12-1350017729.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 266376 frames written to 2012-10-12-1350017729.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-150596
-Worker for 2012-10-12-1350017732.75-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 301192 frames written to 2012-10-12-1350017732.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-572465
-Worker for 2012-10-12-1350017736.95-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017736.95-demo.wav has no TGID
-done - result 1144930 frames written to 2012-10-12-1350017736.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350017754.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017754.78-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350017754.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350017757.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017757.4-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350017757.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109212
-Worker for 2012-10-12-1350017765.11-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 218424 frames written to 2012-10-12-1350017765.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-397658
-Worker for 2012-10-12-1350017768.93-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 795316 frames written to 2012-10-12-1350017768.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-133188
-Worker for 2012-10-12-1350017778.72-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 266376 frames written to 2012-10-12-1350017778.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-724860
-Worker for 2012-10-12-1350017783.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017783.38-demo.wav has no TGID
-done - result 1449720 frames written to 2012-10-12-1350017783.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350017801.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017801.08-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350017801.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-134433
-Worker for 2012-10-12-1350017856.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 268866 frames written to 2012-10-12-1350017856.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151620
-Worker for 2012-10-12-1350017859.48-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 303240 frames written to 2012-10-12-1350017859.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-120900
-Worker for 2012-10-12-1350017863.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 241800 frames written to 2012-10-12-1350017863.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77812
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93250
-Worker for 2012-10-12-1350017869.98-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 186500 frames written to 2012-10-12-1350017869.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-347204
-Worker for 2012-10-12-1350017872.93-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 694408 frames written to 2012-10-12-1350017872.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-228416
-Worker for 2012-10-12-1350017881.43-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 456832 frames written to 2012-10-12-1350017881.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-920644
-Worker for 2012-10-12-1350017887.35-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1841288 frames written to 2012-10-12-1350017887.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-753603
-Worker for 2012-10-12-1350017910.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017910.3-demo.wav has no TGID
-done - result 1507206 frames written to 2012-10-12-1350017910.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98262
-Worker for 2012-10-12-1350017928.41-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017928.41-demo.wav has no TGID
-done - result 196524 frames written to 2012-10-12-1350017928.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350017930.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017930.88-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350017930.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-124061
-Worker for 2012-10-12-1350017944.47-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 248122 frames written to 2012-10-12-1350017944.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-145553
-Worker for 2012-10-12-1350017948.79-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 291106 frames written to 2012-10-12-1350017948.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-512124
-Worker for 2012-10-12-1350017953.42-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017953.42-demo.wav has no TGID
-done - result 1024248 frames written to 2012-10-12-1350017953.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350017969.52-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017969.52-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350017969.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350017972.22-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 180360 frames written to 2012-10-12-1350017972.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-119751
-Worker for 2012-10-12-1350017987.45-demo.wav
-GLG,10301,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 239502 frames written to 2012-10-12-1350017987.45-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-627780
-Worker for 2012-10-12-1350017992.99-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350017992.99-demo.wav has no TGID
-done - result 1255560 frames written to 2012-10-12-1350017992.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-144452
-Worker for 2012-10-12-1350018008.1-demo.wav
-GLG,10301,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 288904 frames written to 2012-10-12-1350018008.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-367676
-Worker for 2012-10-12-1350018013.88-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 735352 frames written to 2012-10-12-1350018013.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-386550
-Worker for 2012-10-12-1350018023.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 773100 frames written to 2012-10-12-1350018023.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350018033.17-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 194696 frames written to 2012-10-12-1350018033.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-522410
-Worker for 2012-10-12-1350018036.71-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018036.71-demo.wav has no TGID
-done - result 1044820 frames written to 2012-10-12-1350018036.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350018052.95-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018052.95-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350018052.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350018055.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018055.55-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350018055.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-200365
-Worker for 2012-10-12-1350018097.35-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 400730 frames written to 2012-10-12-1350018097.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-680004
-Worker for 2012-10-12-1350018104.57-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018104.57-demo.wav has no TGID
-done - result 1360008 frames written to 2012-10-12-1350018104.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350018121.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018121.06-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350018121.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105245
-Worker for 2012-10-12-1350018139.8-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 210490 frames written to 2012-10-12-1350018139.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75679
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-602180
-Worker for 2012-10-12-1350018144.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018144.91-demo.wav has no TGID
-done - result 1204360 frames written to 2012-10-12-1350018144.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350018159.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018159.37-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350018159.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105976
-Worker for 2012-10-12-1350018226.56-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 211952 frames written to 2012-10-12-1350018226.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350018229.53-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 184456 frames written to 2012-10-12-1350018229.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-365636
-Worker for 2012-10-12-1350018232.22-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 731272 frames written to 2012-10-12-1350018232.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1171792
-Worker for 2012-10-12-1350018241.49-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018241.49-demo.wav has no TGID
-done - result 2343584 frames written to 2012-10-12-1350018241.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350018273.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018273.14-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350018273.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350018275.76-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018275.76-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350018275.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-134840
-Worker for 2012-10-12-1350018284.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 269680 frames written to 2012-10-12-1350018284.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350018287.69-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 200840 frames written to 2012-10-12-1350018287.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-119876
-Worker for 2012-10-12-1350018290.33-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 239752 frames written to 2012-10-12-1350018290.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-531712
-Worker for 2012-10-12-1350018294.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018294.27-demo.wav has no TGID
-done - result 1063424 frames written to 2012-10-12-1350018294.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350018311.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018311.91-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350018311.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350018314.55-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018314.55-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350018314.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-195571
-Worker for 2012-10-12-1350018366.82-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 391142 frames written to 2012-10-12-1350018366.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-140356
-Worker for 2012-10-12-1350018372.25-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 280712 frames written to 2012-10-12-1350018372.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-575544
-Worker for 2012-10-12-1350018376.65-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018376.65-demo.wav has no TGID
-done - result 1151088 frames written to 2012-10-12-1350018376.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-230468
-Worker for 2012-10-12-1350018390.54-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 460936 frames written to 2012-10-12-1350018390.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1457220
-Worker for 2012-10-12-1350018396.29-demo.wav
-GLG,i1045200,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2914440 frames written to 2012-10-12-1350018396.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-583747
-Worker for 2012-10-12-1350018431.71-demo.wav
-GLG,i1045200,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1167494 frames written to 2012-10-12-1350018431.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-134212
-Worker for 2012-10-12-1350018445.82-demo.wav
-GLG,i1045200,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 268424 frames written to 2012-10-12-1350018445.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-770115
-Worker for 2012-10-12-1350018450.62-demo.wav
-GLG,i1045200,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1540230 frames written to 2012-10-12-1350018450.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-465016
-Worker for 2012-10-12-1350018471.64-demo.wav
-GLG,i1045200,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 930032 frames written to 2012-10-12-1350018471.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-503876
-Worker for 2012-10-12-1350018484.11-demo.wav
-GLG,44036,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 1007752 frames written to 2012-10-12-1350018484.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75360
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-655428
-Worker for 2012-10-12-1350018498.3-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1310856 frames written to 2012-10-12-1350018498.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-231492
-Worker for 2012-10-12-1350018515.57-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 462984 frames written to 2012-10-12-1350018515.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153668
-Worker for 2012-10-12-1350018521.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018521.56-demo.wav has no TGID
-done - result 307336 frames written to 2012-10-12-1350018521.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-361540
-Worker for 2012-10-12-1350018525.44-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 723080 frames written to 2012-10-12-1350018525.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1249348
-Worker for 2012-10-12-1350018534.21-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018534.21-demo.wav has no TGID
-done - result 2498696 frames written to 2012-10-12-1350018534.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-199748
-Worker for 2012-10-12-1350018564.17-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 399496 frames written to 2012-10-12-1350018564.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113732
-Worker for 2012-10-12-1350018569.12-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 227464 frames written to 2012-10-12-1350018569.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-578297
-Worker for 2012-10-12-1350018572.42-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018572.42-demo.wav has no TGID
-done - result 1156594 frames written to 2012-10-12-1350018572.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109636
-Worker for 2012-10-12-1350018590.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018590.46-demo.wav has no TGID
-done - result 219272 frames written to 2012-10-12-1350018590.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350018593.51-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018593.51-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350018593.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-159158
-Worker for 2012-10-12-1350018634.21-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 318316 frames written to 2012-10-12-1350018634.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-154692
-Worker for 2012-10-12-1350018639.07-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 309384 frames written to 2012-10-12-1350018639.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1439812
-Worker for 2012-10-12-1350018643.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018643.02-demo.wav has no TGID
-done - result 2879624 frames written to 2012-10-12-1350018643.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127358
-Worker for 2012-10-12-1350018677.92-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 254716 frames written to 2012-10-12-1350018677.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-237392
-Worker for 2012-10-12-1350018682.07-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 474784 frames written to 2012-10-12-1350018682.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-286816
-Worker for 2012-10-12-1350018688.75-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 573632 frames written to 2012-10-12-1350018688.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-723012
-Worker for 2012-10-12-1350018695.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018695.88-demo.wav has no TGID
-done - result 1446024 frames written to 2012-10-12-1350018695.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-258116
-Worker for 2012-10-12-1350018713.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018713.34-demo.wav has no TGID
-done - result 516232 frames written to 2012-10-12-1350018713.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-404666
-Worker for 2012-10-12-1350018720.19-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 809332 frames written to 2012-10-12-1350018720.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1021931
-Worker for 2012-10-12-1350018730.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018730.79-demo.wav has no TGID
-done - result 2043862 frames written to 2012-10-12-1350018730.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350018759.03-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018759.03-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350018759.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350018761.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018761.73-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350018761.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-149631
-Worker for 2012-10-12-1350018830.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 299262 frames written to 2012-10-12-1350018830.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138308
-Worker for 2012-10-12-1350018835.41-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 276616 frames written to 2012-10-12-1350018835.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1530948
-Worker for 2012-10-12-1350018838.97-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 3061896 frames written to 2012-10-12-1350018838.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1694000
-Worker for 2012-10-12-1350018875.69-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018875.69-demo.wav has no TGID
-done - result 3388000 frames written to 2012-10-12-1350018875.69-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350018920.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018920.33-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350018920.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350018922.99-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018922.99-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350018922.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123141
-Worker for 2012-10-12-1350018935.97-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 246282 frames written to 2012-10-12-1350018935.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-159960
-Worker for 2012-10-12-1350018940.27-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 319920 frames written to 2012-10-12-1350018940.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1816644
-Worker for 2012-10-12-1350018944.49-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018944.49-demo.wav has no TGID
-done - result 3633288 frames written to 2012-10-12-1350018944.49-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-669650
-Worker for 2012-10-12-1350018988.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350018988.37-demo.wav has no TGID
-done - result 1339300 frames written to 2012-10-12-1350018988.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-185412
-Worker for 2012-10-12-1350019004.55-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 370824 frames written to 2012-10-12-1350019004.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-638999
-Worker for 2012-10-12-1350019010.42-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019010.42-demo.wav has no TGID
-done - result 1277998 frames written to 2012-10-12-1350019010.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350019025.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019025.84-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350019025.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350019028.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019028.75-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350019028.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-128531
-Worker for 2012-10-12-1350019041.98-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 257062 frames written to 2012-10-12-1350019041.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146500
-Worker for 2012-10-12-1350019045.23-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 293000 frames written to 2012-10-12-1350019045.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-199748
-Worker for 2012-10-12-1350019048.98-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 399496 frames written to 2012-10-12-1350019048.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-164932
-Worker for 2012-10-12-1350019053.98-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 329864 frames written to 2012-10-12-1350019053.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2840627
-Worker for 2012-10-12-1350019058.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 5681254 frames written to 2012-10-12-1350019058.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-221252
-Worker for 2012-10-12-1350019125.95-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 442504 frames written to 2012-10-12-1350019125.95-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111326
-Worker for 2012-10-12-1350019132.51-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 222652 frames written to 2012-10-12-1350019132.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-595143
-Worker for 2012-10-12-1350019135.67-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019135.67-demo.wav has no TGID
-done - result 1190286 frames written to 2012-10-12-1350019135.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-119876
-Worker for 2012-10-12-1350019153.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019153.4-demo.wav has no TGID
-done - result 239752 frames written to 2012-10-12-1350019153.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350019156.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019156.46-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350019156.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350019158.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019158.94-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350019158.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-81988
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106128
-Worker for 2012-10-12-1350019166.07-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 212256 frames written to 2012-10-12-1350019166.07-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75451
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-313412
-Worker for 2012-10-12-1350019171.55-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 626824 frames written to 2012-10-12-1350019171.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350019179.89-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 213128 frames written to 2012-10-12-1350019179.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-181316
-Worker for 2012-10-12-1350019183.96-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 362632 frames written to 2012-10-12-1350019183.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-116684
-Worker for 2012-10-12-1350019188.51-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 233368 frames written to 2012-10-12-1350019188.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-968739
-Worker for 2012-10-12-1350019192.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019192.02-demo.wav has no TGID
-done - result 1937478 frames written to 2012-10-12-1350019192.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-485444
-Worker for 2012-10-12-1350019215.33-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 970888 frames written to 2012-10-12-1350019215.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-211012
-Worker for 2012-10-12-1350019227.26-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 422024 frames written to 2012-10-12-1350019227.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-269308
-Worker for 2012-10-12-1350019232.54-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 538616 frames written to 2012-10-12-1350019232.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-593972
-Worker for 2012-10-12-1350019239.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019239.54-demo.wav has no TGID
-done - result 1187944 frames written to 2012-10-12-1350019239.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350019258.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019258.9-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350019258.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-158431
-Worker for 2012-10-12-1350019290.22-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 316862 frames written to 2012-10-12-1350019290.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173124
-Worker for 2012-10-12-1350019295.02-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 346248 frames written to 2012-10-12-1350019295.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-406596
-Worker for 2012-10-12-1350019299.75-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 813192 frames written to 2012-10-12-1350019299.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-210998
-Worker for 2012-10-12-1350019312.39-demo.wav
-GLG,44036,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 421996 frames written to 2012-10-12-1350019312.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-244804
-Worker for 2012-10-12-1350019317.68-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019317.68-demo.wav has no TGID
-done - result 489608 frames written to 2012-10-12-1350019317.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-371780
-Worker for 2012-10-12-1350019323.75-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 743560 frames written to 2012-10-12-1350019323.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1280068
-Worker for 2012-10-12-1350019332.83-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019332.83-demo.wav has no TGID
-done - result 2560136 frames written to 2012-10-12-1350019332.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-713796
-Worker for 2012-10-12-1350019363.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019363.88-demo.wav has no TGID
-done - result 1427592 frames written to 2012-10-12-1350019363.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350019381.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019381.33-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350019381.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-166785
-Worker for 2012-10-12-1350019388.72-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 333570 frames written to 2012-10-12-1350019388.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75440
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-601156
-Worker for 2012-10-12-1350019394.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019394.12-demo.wav has no TGID
-done - result 1202312 frames written to 2012-10-12-1350019394.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350019408.64-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019408.64-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350019408.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106037
-Worker for 2012-10-12-1350019428.35-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 212074 frames written to 2012-10-12-1350019428.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-109636
-Worker for 2012-10-12-1350019431.05-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 219272 frames written to 2012-10-12-1350019431.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-581662
-Worker for 2012-10-12-1350019435.1-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1163324 frames written to 2012-10-12-1350019435.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1766468
-Worker for 2012-10-12-1350019449.13-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019449.13-demo.wav has no TGID
-done - result 3532936 frames written to 2012-10-12-1350019449.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-210805
-Worker for 2012-10-12-1350019492.12-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 421610 frames written to 2012-10-12-1350019492.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-231808
-Worker for 2012-10-12-1350019498.22-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 463616 frames written to 2012-10-12-1350019498.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-235588
-Worker for 2012-10-12-1350019504.47-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 471176 frames written to 2012-10-12-1350019504.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-498714
-Worker for 2012-10-12-1350019510.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 997428 frames written to 2012-10-12-1350019510.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-776053
-Worker for 2012-10-12-1350019523.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019523.12-demo.wav has no TGID
-done - result 1552106 frames written to 2012-10-12-1350019523.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350019541.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019541.84-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350019541.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350019544.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019544.3-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350019544.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-125707
-Worker for 2012-10-12-1350019568.88-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 251414 frames written to 2012-10-12-1350019568.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-115780
-Worker for 2012-10-12-1350019572.16-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 231560 frames written to 2012-10-12-1350019572.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1042467
-Worker for 2012-10-12-1350019575.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2084934 frames written to 2012-10-12-1350019575.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1457220
-Worker for 2012-10-12-1350019600.22-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 2914440 frames written to 2012-10-12-1350019600.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-117828
-Worker for 2012-10-12-1350019635.09-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 235656 frames written to 2012-10-12-1350019635.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110660
-Worker for 2012-10-12-1350019638.15-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 221320 frames written to 2012-10-12-1350019638.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1654852
-Worker for 2012-10-12-1350019641.67-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 3309704 frames written to 2012-10-12-1350019641.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-607300
-Worker for 2012-10-12-1350019682.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019682.01-demo.wav has no TGID
-done - result 1214600 frames written to 2012-10-12-1350019682.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350019696.83-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019696.83-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350019696.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173119
-Worker for 2012-10-12-1350019747.47-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 346238 frames written to 2012-10-12-1350019747.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-612654
-Worker for 2012-10-12-1350019753.14-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1225308 frames written to 2012-10-12-1350019753.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-308963
-Worker for 2012-10-12-1350019768.76-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 617926 frames written to 2012-10-12-1350019768.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-216132
-Worker for 2012-10-12-1350019776.33-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 432264 frames written to 2012-10-12-1350019776.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-529476
-Worker for 2012-10-12-1350019781.68-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019781.68-demo.wav has no TGID
-done - result 1058952 frames written to 2012-10-12-1350019781.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-217156
-Worker for 2012-10-12-1350019794.48-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,1,NONE,NONE,NONE
-done - result 434312 frames written to 2012-10-12-1350019794.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1112056
-Worker for 2012-10-12-1350019800.18-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019800.18-demo.wav has no TGID
-done - result 2224112 frames written to 2012-10-12-1350019800.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-550700
-Worker for 2012-10-12-1350019827.35-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 1101400 frames written to 2012-10-12-1350019827.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-873540
-Worker for 2012-10-12-1350019840.74-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019840.74-demo.wav has no TGID
-done - result 1747080 frames written to 2012-10-12-1350019840.74-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-776260
-Worker for 2012-10-12-1350019861.75-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,1,NONE,NONE,NONE
-done - result 1552520 frames written to 2012-10-12-1350019861.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-271428
-Worker for 2012-10-12-1350019880.42-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019880.42-demo.wav has no TGID
-done - result 542856 frames written to 2012-10-12-1350019880.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-463928
-Worker for 2012-10-12-1350019887.01-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 927856 frames written to 2012-10-12-1350019887.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-203832
-Worker for 2012-10-12-1350019898.16-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,0,NONE,NONE,NONE
-done - result 407664 frames written to 2012-10-12-1350019898.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-302133
-Worker for 2012-10-12-1350019903.17-demo.wav
-GLG,40068,NFM,0,0,CanberraBlackMnt,AustralianCapita,RFS Ops 1,1,1,NONE,NONE,NONE
-done - result 604266 frames written to 2012-10-12-1350019903.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-612621
-Worker for 2012-10-12-1350019910.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019910.54-demo.wav has no TGID
-done - result 1225242 frames written to 2012-10-12-1350019910.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350019928.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019928.23-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350019928.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350019931.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350019931.01-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350019931.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86072
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-150351
-Worker for 2012-10-12-1350020000.1-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 300702 frames written to 2012-10-12-1350020000.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-212036
-Worker for 2012-10-12-1350020003.94-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 424072 frames written to 2012-10-12-1350020003.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-662596
-Worker for 2012-10-12-1350020009.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020009.39-demo.wav has no TGID
-done - result 1325192 frames written to 2012-10-12-1350020009.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1432397
-Worker for 2012-10-12-1350020025.71-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 2864794 frames written to 2012-10-12-1350020025.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-142404
-Worker for 2012-10-12-1350020060.14-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 284808 frames written to 2012-10-12-1350020060.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-402500
-Worker for 2012-10-12-1350020064.24-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 805000 frames written to 2012-10-12-1350020064.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-745310
-Worker for 2012-10-12-1350020075.32-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020075.32-demo.wav has no TGID
-done - result 1490620 frames written to 2012-10-12-1350020075.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350020093.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020093.27-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350020093.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350020095.81-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020095.81-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350020095.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-143122
-Worker for 2012-10-12-1350020178.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 286244 frames written to 2012-10-12-1350020178.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-285025
-Worker for 2012-10-12-1350020183.25-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 570050 frames written to 2012-10-12-1350020183.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-281982
-Worker for 2012-10-12-1350020191.31-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 563964 frames written to 2012-10-12-1350020191.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-81988
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350020200.52-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350020200.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-161860
-Worker for 2012-10-12-1350020203.84-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 323720 frames written to 2012-10-12-1350020203.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-848964
-Worker for 2012-10-12-1350020208.18-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1697928 frames written to 2012-10-12-1350020208.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-791620
-Worker for 2012-10-12-1350020229.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020229.79-demo.wav has no TGID
-done - result 1583240 frames written to 2012-10-12-1350020229.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-529922
-Worker for 2012-10-12-1350020248.77-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1059844 frames written to 2012-10-12-1350020248.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-140356
-Worker for 2012-10-12-1350020266.58-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 280712 frames written to 2012-10-12-1350020266.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350020270.09-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 206984 frames written to 2012-10-12-1350020270.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1989700
-Worker for 2012-10-12-1350020272.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 3979400 frames written to 2012-10-12-1350020272.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-137268
-Worker for 2012-10-12-1350020320.97-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 274536 frames written to 2012-10-12-1350020320.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-566313
-Worker for 2012-10-12-1350020324.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020324.73-demo.wav has no TGID
-done - result 1132626 frames written to 2012-10-12-1350020324.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350020342.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020342.91-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350020342.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350020345.48-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020345.48-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350020345.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350020347.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020347.96-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350020347.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85196
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105887
-Worker for 2012-10-12-1350020382.79-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 211774 frames written to 2012-10-12-1350020382.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-337988
-Worker for 2012-10-12-1350020386.0-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 675976 frames written to 2012-10-12-1350020386.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-463914
-Worker for 2012-10-12-1350020394.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 927828 frames written to 2012-10-12-1350020394.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-527956
-Worker for 2012-10-12-1350020407.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020407.25-demo.wav has no TGID
-done - result 1055912 frames written to 2012-10-12-1350020407.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350020425.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020425.02-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350020425.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350020427.58-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020427.58-demo.wav has no TGID
-done - result 188552 frames written to 2012-10-12-1350020427.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104980
-Worker for 2012-10-12-1350020450.42-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 209960 frames written to 2012-10-12-1350020450.42-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-553028
-Worker for 2012-10-12-1350020454.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020454.56-demo.wav has no TGID
-done - result 1106056 frames written to 2012-10-12-1350020454.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350020467.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020467.98-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350020467.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-151894
-Worker for 2012-10-12-1350020543.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 303788 frames written to 2012-10-12-1350020543.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-154692
-Worker for 2012-10-12-1350020547.59-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 309384 frames written to 2012-10-12-1350020547.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-193604
-Worker for 2012-10-12-1350020551.54-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 387208 frames written to 2012-10-12-1350020551.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-785476
-Worker for 2012-10-12-1350020557.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020557.12-demo.wav has no TGID
-done - result 1570952 frames written to 2012-10-12-1350020557.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350020576.3-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020576.3-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350020576.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110348
-Worker for 2012-10-12-1350020628.64-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 220696 frames written to 2012-10-12-1350020628.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350020632.27-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 229512 frames written to 2012-10-12-1350020632.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-713796
-Worker for 2012-10-12-1350020635.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020635.7-demo.wav has no TGID
-done - result 1427592 frames written to 2012-10-12-1350020635.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-163675
-Worker for 2012-10-12-1350020653.08-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 327350 frames written to 2012-10-12-1350020653.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-741116
-Worker for 2012-10-12-1350020658.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020658.37-demo.wav has no TGID
-done - result 1482232 frames written to 2012-10-12-1350020658.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-94276
-Worker for 2012-10-12-1350020676.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020676.25-demo.wav has no TGID
-done - result 188552 frames written to 2012-10-12-1350020676.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-315460
-Worker for 2012-10-12-1350020678.6-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 630920 frames written to 2012-10-12-1350020678.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-921668
-Worker for 2012-10-12-1350020686.37-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020686.37-demo.wav has no TGID
-done - result 1843336 frames written to 2012-10-12-1350020686.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-477252
-Worker for 2012-10-12-1350020708.5-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 954504 frames written to 2012-10-12-1350020708.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-546884
-Worker for 2012-10-12-1350020720.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020720.93-demo.wav has no TGID
-done - result 1093768 frames written to 2012-10-12-1350020720.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350020734.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020734.19-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350020734.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-110660
-Worker for 2012-10-12-1350020736.7-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 221320 frames written to 2012-10-12-1350020736.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-263236
-Worker for 2012-10-12-1350020739.43-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 526472 frames written to 2012-10-12-1350020739.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91184
-Worker for 2012-10-12-1350020745.96-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 182368 frames written to 2012-10-12-1350020745.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-576222
-Worker for 2012-10-12-1350020748.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020748.86-demo.wav has no TGID
-done - result 1152444 frames written to 2012-10-12-1350020748.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350020766.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020766.73-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350020766.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350020769.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020769.35-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350020769.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-173223
-Worker for 2012-10-12-1350020830.91-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 346446 frames written to 2012-10-12-1350020830.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-219712
-Worker for 2012-10-12-1350020836.27-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 439424 frames written to 2012-10-12-1350020836.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-305220
-Worker for 2012-10-12-1350020842.06-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 610440 frames written to 2012-10-12-1350020842.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1365060
-Worker for 2012-10-12-1350020849.44-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020849.44-demo.wav has no TGID
-done - result 2730120 frames written to 2012-10-12-1350020849.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-522767
-Worker for 2012-10-12-1350020882.21-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020882.21-demo.wav has no TGID
-done - result 1045534 frames written to 2012-10-12-1350020882.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-305219
-Worker for 2012-10-12-1350020899.16-demo.wav
-GLG,44011,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 610438 frames written to 2012-10-12-1350020899.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-153668
-Worker for 2012-10-12-1350020906.73-demo.wav
-GLG,44011,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 307336 frames written to 2012-10-12-1350020906.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-806980
-Worker for 2012-10-12-1350020910.92-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020910.92-demo.wav has no TGID
-done - result 1613960 frames written to 2012-10-12-1350020910.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-503928
-Worker for 2012-10-12-1350020930.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020930.34-demo.wav has no TGID
-done - result 1007856 frames written to 2012-10-12-1350020930.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-134212
-Worker for 2012-10-12-1350020947.81-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 268424 frames written to 2012-10-12-1350020947.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-140356
-Worker for 2012-10-12-1350020952.1-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 280712 frames written to 2012-10-12-1350020952.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-300100
-Worker for 2012-10-12-1350020955.97-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 600200 frames written to 2012-10-12-1350020955.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-74452
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-688196
-Worker for 2012-10-12-1350020965.61-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020965.61-demo.wav has no TGID
-done - result 1376392 frames written to 2012-10-12-1350020965.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350020982.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020982.17-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350020982.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350020984.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350020984.73-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350020984.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-83012
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-318895
-Worker for 2012-10-12-1350021064.24-demo.wav
-GLG,44011,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 637790 frames written to 2012-10-12-1350021064.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1211912
-Worker for 2012-10-12-1350021072.04-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021072.04-demo.wav has no TGID
-done - result 2423824 frames written to 2012-10-12-1350021072.04-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350021104.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021104.96-demo.wav has no TGID
-done - result 211080 frames written to 2012-10-12-1350021104.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350021107.58-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021107.58-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350021107.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-279322
-Worker for 2012-10-12-1350021224.54-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 558644 frames written to 2012-10-12-1350021224.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-129092
-Worker for 2012-10-12-1350021231.39-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 258184 frames written to 2012-10-12-1350021231.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-553028
-Worker for 2012-10-12-1350021234.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021234.7-demo.wav has no TGID
-done - result 1106056 frames written to 2012-10-12-1350021234.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-748612
-Worker for 2012-10-12-1350021248.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021248.46-demo.wav has no TGID
-done - result 1497224 frames written to 2012-10-12-1350021248.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350021266.53-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021266.53-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350021266.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-68751
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-44106
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105283
-Worker for 2012-10-12-1350021329.91-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 210566 frames written to 2012-10-12-1350021329.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-646212
-Worker for 2012-10-12-1350021335.72-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021335.72-demo.wav has no TGID
-done - result 1292424 frames written to 2012-10-12-1350021335.72-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350021351.35-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021351.35-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350021351.35-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350021353.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021353.79-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350021353.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114321
-Worker for 2012-10-12-1350021406.83-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 228642 frames written to 2012-10-12-1350021406.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-443128
-Worker for 2012-10-12-1350021411.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 886256 frames written to 2012-10-12-1350021411.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-643140
-Worker for 2012-10-12-1350021422.83-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021422.83-demo.wav has no TGID
-done - result 1286280 frames written to 2012-10-12-1350021422.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350021438.45-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021438.45-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350021438.45-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350021440.99-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021440.99-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350021440.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-83012
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-579910
-Worker for 2012-10-12-1350021467.24-demo.wav
-GLG,30004,NFM,0,0,CanberraBlackMnt,RuralFireSvc-RFS,L GEORG,1,0,NONE,NONE,NONE
-done - result 1159820 frames written to 2012-10-12-1350021467.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-460868
-Worker for 2012-10-12-1350021481.29-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 921736 frames written to 2012-10-12-1350021481.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123972
-Worker for 2012-10-12-1350021492.51-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 247944 frames written to 2012-10-12-1350021492.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-529476
-Worker for 2012-10-12-1350021495.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021495.9-demo.wav has no TGID
-done - result 1058952 frames written to 2012-10-12-1350021495.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-505057
-Worker for 2012-10-12-1350021508.76-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021508.76-demo.wav has no TGID
-done - result 1010114 frames written to 2012-10-12-1350021508.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350021526.28-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021526.28-demo.wav has no TGID
-done - result 190600 frames written to 2012-10-12-1350021526.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350021528.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021528.75-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350021528.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-215019
-Worker for 2012-10-12-1350021534.81-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 430038 frames written to 2012-10-12-1350021534.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350021540.18-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 204936 frames written to 2012-10-12-1350021540.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-518212
-Worker for 2012-10-12-1350021542.8-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,1,NONE,NONE,NONE
-done - result 1036424 frames written to 2012-10-12-1350021542.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-735534
-Worker for 2012-10-12-1350021555.4-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021555.4-demo.wav has no TGID
-done - result 1471068 frames written to 2012-10-12-1350021555.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350021573.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021573.06-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350021573.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350021575.66-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021575.66-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350021575.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113041
-Worker for 2012-10-12-1350021651.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 226082 frames written to 2012-10-12-1350021651.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155716
-Worker for 2012-10-12-1350021655.14-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 311432 frames written to 2012-10-12-1350021655.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-154692
-Worker for 2012-10-12-1350021659.06-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 309384 frames written to 2012-10-12-1350021659.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-169019
-Worker for 2012-10-12-1350021662.93-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 338038 frames written to 2012-10-12-1350021662.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-761924
-Worker for 2012-10-12-1350021667.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021667.84-demo.wav has no TGID
-done - result 1523848 frames written to 2012-10-12-1350021667.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350021686.21-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021686.21-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350021686.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-116091
-Worker for 2012-10-12-1350021810.7-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 232182 frames written to 2012-10-12-1350021810.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146500
-Worker for 2012-10-12-1350021813.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 293000 frames written to 2012-10-12-1350021813.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108612
-Worker for 2012-10-12-1350021817.4-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 217224 frames written to 2012-10-12-1350021817.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-143364
-Worker for 2012-10-12-1350021820.23-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 286728 frames written to 2012-10-12-1350021820.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-722609
-Worker for 2012-10-12-1350021825.05-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1445218 frames written to 2012-10-12-1350021825.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-248900
-Worker for 2012-10-12-1350021842.87-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 497800 frames written to 2012-10-12-1350021842.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-364612
-Worker for 2012-10-12-1350021849.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021849.12-demo.wav has no TGID
-done - result 729224 frames written to 2012-10-12-1350021849.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-511866
-Worker for 2012-10-12-1350021857.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021857.98-demo.wav has no TGID
-done - result 1023732 frames written to 2012-10-12-1350021857.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350021875.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021875.7-demo.wav has no TGID
-done - result 198792 frames written to 2012-10-12-1350021875.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350021878.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350021878.23-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350021878.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-121969
-Worker for 2012-10-12-1350022064.33-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 243938 frames written to 2012-10-12-1350022064.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127044
-Worker for 2012-10-12-1350022067.51-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 254088 frames written to 2012-10-12-1350022067.51-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-325583
-Worker for 2012-10-12-1350022072.14-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 651166 frames written to 2012-10-12-1350022072.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-918596
-Worker for 2012-10-12-1350022080.14-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1837192 frames written to 2012-10-12-1350022080.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188292
-Worker for 2012-10-12-1350022102.23-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 376584 frames written to 2012-10-12-1350022102.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-756786
-Worker for 2012-10-12-1350022107.24-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 1513572 frames written to 2012-10-12-1350022107.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-401760
-Worker for 2012-10-12-1350022126.26-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 803520 frames written to 2012-10-12-1350022126.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-293956
-Worker for 2012-10-12-1350022136.6-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022136.6-demo.wav has no TGID
-done - result 587912 frames written to 2012-10-12-1350022136.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-739077
-Worker for 2012-10-12-1350022144.22-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022144.22-demo.wav has no TGID
-done - result 1478154 frames written to 2012-10-12-1350022144.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350022162.09-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022162.09-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350022162.09-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112770
-Worker for 2012-10-12-1350022243.05-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 225540 frames written to 2012-10-12-1350022243.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-122948
-Worker for 2012-10-12-1350022247.68-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 245896 frames written to 2012-10-12-1350022247.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2245700
-Worker for 2012-10-12-1350022251.43-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022251.43-demo.wav has no TGID
-done - result 4491400 frames written to 2012-10-12-1350022251.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-503544
-Worker for 2012-10-12-1350022305.11-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022305.11-demo.wav has no TGID
-done - result 1007088 frames written to 2012-10-12-1350022305.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350022321.44-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022321.44-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350022321.44-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112652
-Worker for 2012-10-12-1350022348.06-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 225304 frames written to 2012-10-12-1350022348.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-263236
-Worker for 2012-10-12-1350022352.22-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 526472 frames written to 2012-10-12-1350022352.22-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-137284
-Worker for 2012-10-12-1350022358.73-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 274568 frames written to 2012-10-12-1350022358.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-171076
-Worker for 2012-10-12-1350022362.47-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 342152 frames written to 2012-10-12-1350022362.47-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-354122
-Worker for 2012-10-12-1350022366.83-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022366.83-demo.wav has no TGID
-done - result 708244 frames written to 2012-10-12-1350022366.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249924
-Worker for 2012-10-12-1350022375.53-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 499848 frames written to 2012-10-12-1350022375.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-428100
-Worker for 2012-10-12-1350022381.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022381.88-demo.wav has no TGID
-done - result 856200 frames written to 2012-10-12-1350022381.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-547901
-Worker for 2012-10-12-1350022392.31-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022392.31-demo.wav has no TGID
-done - result 1095802 frames written to 2012-10-12-1350022392.31-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350022410.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022410.1-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350022410.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350022412.62-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022412.62-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350022412.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104715
-Worker for 2012-10-12-1350022459.41-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 209430 frames written to 2012-10-12-1350022459.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-163908
-Worker for 2012-10-12-1350022462.5-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 327816 frames written to 2012-10-12-1350022462.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-247876
-Worker for 2012-10-12-1350022466.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 495752 frames written to 2012-10-12-1350022466.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-293894
-Worker for 2012-10-12-1350022473.53-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 587788 frames written to 2012-10-12-1350022473.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-538701
-Worker for 2012-10-12-1350022483.6-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022483.6-demo.wav has no TGID
-done - result 1077402 frames written to 2012-10-12-1350022483.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350022500.28-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022500.28-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350022500.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350022502.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022502.89-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350022502.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350022505.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022505.2-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350022505.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-83012
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-271807
-Worker for 2012-10-12-1350022591.16-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 543614 frames written to 2012-10-12-1350022591.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-298052
-Worker for 2012-10-12-1350022598.11-demo.wav
-GLG,10301,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 596104 frames written to 2012-10-12-1350022598.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-669764
-Worker for 2012-10-12-1350022607.2-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022607.2-demo.wav has no TGID
-done - result 1339528 frames written to 2012-10-12-1350022607.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350022623.36-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022623.36-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350022623.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147524
-Worker for 2012-10-12-1350022625.94-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 295048 frames written to 2012-10-12-1350022625.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-137414
-Worker for 2012-10-12-1350022631.16-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 274828 frames written to 2012-10-12-1350022631.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-246851
-Worker for 2012-10-12-1350022634.65-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 493702 frames written to 2012-10-12-1350022634.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-683076
-Worker for 2012-10-12-1350022640.77-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022640.77-demo.wav has no TGID
-done - result 1366152 frames written to 2012-10-12-1350022640.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-520075
-Worker for 2012-10-12-1350022657.25-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022657.25-demo.wav has no TGID
-done - result 1040150 frames written to 2012-10-12-1350022657.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350022674.66-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022674.66-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350022674.66-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350022677.27-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022677.27-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350022677.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-171114
-Worker for 2012-10-12-1350022779.43-demo.wav
-GLG,40093,NFM,0,0,CanberraMtAinsli,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 342228 frames written to 2012-10-12-1350022779.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75024
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-370756
-Worker for 2012-10-12-1350022785.06-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 741512 frames written to 2012-10-12-1350022785.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-331822
-Worker for 2012-10-12-1350022794.17-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 663644 frames written to 2012-10-12-1350022794.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-200768
-Worker for 2012-10-12-1350022802.58-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 401536 frames written to 2012-10-12-1350022802.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-767044
-Worker for 2012-10-12-1350022807.6-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022807.6-demo.wav has no TGID
-done - result 1534088 frames written to 2012-10-12-1350022807.6-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-447556
-Worker for 2012-10-12-1350022826.1-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 895112 frames written to 2012-10-12-1350022826.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249103
-Worker for 2012-10-12-1350022837.62-demo.wav
-GLG,40093,NFM,0,0,CanberraBlackMnt,AustralianCapita,PCL Rural,1,0,NONE,NONE,NONE
-done - result 498206 frames written to 2012-10-12-1350022837.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1975364
-Worker for 2012-10-12-1350022844.28-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022844.28-demo.wav has no TGID
-done - result 3950728 frames written to 2012-10-12-1350022844.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-649284
-Worker for 2012-10-12-1350022891.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022891.98-demo.wav has no TGID
-done - result 1298568 frames written to 2012-10-12-1350022891.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350022907.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022907.54-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350022907.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350022910.18-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350022910.18-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350022910.18-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-85060
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249058
-Worker for 2012-10-12-1350023085.91-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 498116 frames written to 2012-10-12-1350023085.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-138290
-Worker for 2012-10-12-1350023092.55-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 276580 frames written to 2012-10-12-1350023092.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-686148
-Worker for 2012-10-12-1350023096.79-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023096.79-demo.wav has no TGID
-done - result 1372296 frames written to 2012-10-12-1350023096.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350023113.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023113.5-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350023113.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123284
-Worker for 2012-10-12-1350023155.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 246568 frames written to 2012-10-12-1350023155.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-224324
-Worker for 2012-10-12-1350023159.01-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 448648 frames written to 2012-10-12-1350023159.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-164932
-Worker for 2012-10-12-1350023164.55-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 329864 frames written to 2012-10-12-1350023164.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-584292
-Worker for 2012-10-12-1350023168.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023168.94-demo.wav has no TGID
-done - result 1168584 frames written to 2012-10-12-1350023168.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350023186.75-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023186.75-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350023186.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-96324
-Worker for 2012-10-12-1350023189.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023189.38-demo.wav has no TGID
-done - result 192648 frames written to 2012-10-12-1350023189.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105601
-Worker for 2012-10-12-1350023195.32-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 211202 frames written to 2012-10-12-1350023195.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139332
-Worker for 2012-10-12-1350023198.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 278664 frames written to 2012-10-12-1350023198.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-136260
-Worker for 2012-10-12-1350023202.0-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 272520 frames written to 2012-10-12-1350023202.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-473134
-Worker for 2012-10-12-1350023206.28-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023206.28-demo.wav has no TGID
-done - result 946268 frames written to 2012-10-12-1350023206.28-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-745540
-Worker for 2012-10-12-1350023217.76-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1491080 frames written to 2012-10-12-1350023217.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-164932
-Worker for 2012-10-12-1350023236.02-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 329864 frames written to 2012-10-12-1350023236.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-607964
-Worker for 2012-10-12-1350023240.29-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023240.29-demo.wav has no TGID
-done - result 1215928 frames written to 2012-10-12-1350023240.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-323652
-Worker for 2012-10-12-1350023255.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 647304 frames written to 2012-10-12-1350023255.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350023263.03-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 223368 frames written to 2012-10-12-1350023263.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-584233
-Worker for 2012-10-12-1350023266.19-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023266.19-demo.wav has no TGID
-done - result 1168466 frames written to 2012-10-12-1350023266.19-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-106564
-Worker for 2012-10-12-1350023284.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023284.06-demo.wav has no TGID
-done - result 213128 frames written to 2012-10-12-1350023284.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350023286.77-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023286.77-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350023286.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-66561
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-166014
-Worker for 2012-10-12-1350023343.99-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 332028 frames written to 2012-10-12-1350023343.99-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-190233
-Worker for 2012-10-12-1350023349.32-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 380466 frames written to 2012-10-12-1350023349.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-230468
-Worker for 2012-10-12-1350023354.25-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 460936 frames written to 2012-10-12-1350023354.25-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1071722
-Worker for 2012-10-12-1350023360.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023360.08-demo.wav has no TGID
-done - result 2143444 frames written to 2012-10-12-1350023360.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350023389.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023389.46-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350023389.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350023392.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023392.01-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350023392.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104928
-Worker for 2012-10-12-1350023644.34-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 209856 frames written to 2012-10-12-1350023644.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-184750
-Worker for 2012-10-12-1350023647.98-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 369500 frames written to 2012-10-12-1350023647.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1329216
-Worker for 2012-10-12-1350023653.11-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2658432 frames written to 2012-10-12-1350023653.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-178244
-Worker for 2012-10-12-1350023687.53-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 356488 frames written to 2012-10-12-1350023687.53-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-575556
-Worker for 2012-10-12-1350023691.98-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023691.98-demo.wav has no TGID
-done - result 1151112 frames written to 2012-10-12-1350023691.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-175777
-Worker for 2012-10-12-1350023706.37-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 351554 frames written to 2012-10-12-1350023706.37-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-180291
-Worker for 2012-10-12-1350023710.93-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 360582 frames written to 2012-10-12-1350023710.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-196676
-Worker for 2012-10-12-1350023715.98-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 393352 frames written to 2012-10-12-1350023715.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-673760
-Worker for 2012-10-12-1350023721.23-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023721.23-demo.wav has no TGID
-done - result 1347520 frames written to 2012-10-12-1350023721.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-500492
-Worker for 2012-10-12-1350023737.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023737.56-demo.wav has no TGID
-done - result 1000984 frames written to 2012-10-12-1350023737.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350023755.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023755.12-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350023755.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-249315
-Worker for 2012-10-12-1350023873.4-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 498630 frames written to 2012-10-12-1350023873.4-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132157
-Worker for 2012-10-12-1350023880.86-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 264314 frames written to 2012-10-12-1350023880.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-464961
-Worker for 2012-10-12-1350023885.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023885.14-demo.wav has no TGID
-done - result 929922 frames written to 2012-10-12-1350023885.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-489198
-Worker for 2012-10-12-1350023896.41-demo.wav
-GLG,44029,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 978396 frames written to 2012-10-12-1350023896.41-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350023908.32-demo.wav
-GLG,44029,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 229512 frames written to 2012-10-12-1350023908.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127033
-Worker for 2012-10-12-1350023911.21-demo.wav
-GLG,44029,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 254066 frames written to 2012-10-12-1350023911.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2950212
-Worker for 2012-10-12-1350023914.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023914.38-demo.wav has no TGID
-done - result 5900424 frames written to 2012-10-12-1350023914.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152644
-Worker for 2012-10-12-1350023984.85-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 305288 frames written to 2012-10-12-1350023984.85-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-147524
-Worker for 2012-10-12-1350023989.34-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 295048 frames written to 2012-10-12-1350023989.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-607037
-Worker for 2012-10-12-1350023993.61-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350023993.61-demo.wav has no TGID
-done - result 1214074 frames written to 2012-10-12-1350023993.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-329796
-Worker for 2012-10-12-1350024008.23-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 659592 frames written to 2012-10-12-1350024008.23-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-472994
-Worker for 2012-10-12-1350024017.48-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 945988 frames written to 2012-10-12-1350024017.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-324676
-Worker for 2012-10-12-1350024029.29-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 649352 frames written to 2012-10-12-1350024029.29-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2394606
-Worker for 2012-10-12-1350024037.2-demo.wav
-GLG,44011,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 4789212 frames written to 2012-10-12-1350024037.2-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-2442395
-Worker for 2012-10-12-1350024094.58-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024094.58-demo.wav has no TGID
-done - result 4884790 frames written to 2012-10-12-1350024094.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104072
-Worker for 2012-10-12-1350024157.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024157.02-demo.wav has no TGID
-done - result 208144 frames written to 2012-10-12-1350024157.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-155729
-Worker for 2012-10-12-1350024161.43-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 311458 frames written to 2012-10-12-1350024161.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-75139
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-606276
-Worker for 2012-10-12-1350024166.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024166.94-demo.wav has no TGID
-done - result 1212552 frames written to 2012-10-12-1350024166.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350024181.59-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024181.59-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350024181.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350024184.12-demo.wav
-GLG,44029,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 211080 frames written to 2012-10-12-1350024184.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-308878
-Worker for 2012-10-12-1350024187.79-demo.wav
-GLG,44011,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 617756 frames written to 2012-10-12-1350024187.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-159810
-Worker for 2012-10-12-1350024195.64-demo.wav
-GLG,44011,NFM,0,0,CanberraMtAinsli,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 319620 frames written to 2012-10-12-1350024195.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-673860
-Worker for 2012-10-12-1350024199.78-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024199.78-demo.wav has no TGID
-done - result 1347720 frames written to 2012-10-12-1350024199.78-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-472132
-Worker for 2012-10-12-1350024216.03-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 944264 frames written to 2012-10-12-1350024216.03-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350024227.48-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 202888 frames written to 2012-10-12-1350024227.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111664
-Worker for 2012-10-12-1350024230.89-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 223328 frames written to 2012-10-12-1350024230.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-657476
-Worker for 2012-10-12-1350024234.08-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024234.08-demo.wav has no TGID
-done - result 1314952 frames written to 2012-10-12-1350024234.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-189508
-Worker for 2012-10-12-1350024249.89-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 379016 frames written to 2012-10-12-1350024249.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-705379
-Worker for 2012-10-12-1350024255.33-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024255.33-demo.wav has no TGID
-done - result 1410758 frames written to 2012-10-12-1350024255.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102467
-Worker for 2012-10-12-1350024274.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024274.56-demo.wav has no TGID
-done - result 204934 frames written to 2012-10-12-1350024274.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-83012
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-203122
-Worker for 2012-10-12-1350024333.11-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 406244 frames written to 2012-10-12-1350024333.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-233540
-Worker for 2012-10-12-1350024338.12-demo.wav
-GLG,44011,NFM,0,0,CanberraBlackMnt,AustralianCapita,ACTION 44011,1,0,NONE,NONE,NONE
-done - result 467080 frames written to 2012-10-12-1350024338.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-779377
-Worker for 2012-10-12-1350024343.82-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024343.82-demo.wav has no TGID
-done - result 1558754 frames written to 2012-10-12-1350024343.82-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-502030
-Worker for 2012-10-12-1350024362.65-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024362.65-demo.wav has no TGID
-done - result 1004060 frames written to 2012-10-12-1350024362.65-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350024379.64-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024379.64-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350024379.64-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-88132
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-120798
-Worker for 2012-10-12-1350024455.56-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 241596 frames written to 2012-10-12-1350024455.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350024459.8-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 215176 frames written to 2012-10-12-1350024459.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1049668
-Worker for 2012-10-12-1350024463.16-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 2099336 frames written to 2012-10-12-1350024463.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-582346
-Worker for 2012-10-12-1350024489.89-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024489.89-demo.wav has no TGID
-done - result 1164692 frames written to 2012-10-12-1350024489.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-128068
-Worker for 2012-10-12-1350024506.59-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024506.59-demo.wav has no TGID
-done - result 256136 frames written to 2012-10-12-1350024506.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350024509.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024509.91-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350024509.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-130391
-Worker for 2012-10-12-1350024547.63-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 260782 frames written to 2012-10-12-1350024547.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-148509
-Worker for 2012-10-12-1350024552.27-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 297018 frames written to 2012-10-12-1350024552.27-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-271399
-Worker for 2012-10-12-1350024556.0-demo.wav
-GLG,44028,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 542798 frames written to 2012-10-12-1350024556.0-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-77892
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350024564.01-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024564.01-demo.wav has no TGID
-done - result 229512 frames written to 2012-10-12-1350024564.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-501638
-Worker for 2012-10-12-1350024566.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024566.9-demo.wav has no TGID
-done - result 1003276 frames written to 2012-10-12-1350024566.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350024584.46-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024584.46-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350024584.46-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-112708
-Worker for 2012-10-12-1350024586.91-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 225416 frames written to 2012-10-12-1350024586.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-335940
-Worker for 2012-10-12-1350024590.93-demo.wav
-GLG,44028,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 671880 frames written to 2012-10-12-1350024590.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-276548
-Worker for 2012-10-12-1350024599.13-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024599.13-demo.wav has no TGID
-done - result 553096 frames written to 2012-10-12-1350024599.13-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-562381
-Worker for 2012-10-12-1350024605.89-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1124762 frames written to 2012-10-12-1350024605.89-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350024623.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 211080 frames written to 2012-10-12-1350024623.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-149572
-Worker for 2012-10-12-1350024627.01-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 299144 frames written to 2012-10-12-1350024627.01-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-164932
-Worker for 2012-10-12-1350024630.94-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 329864 frames written to 2012-10-12-1350024630.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-168004
-Worker for 2012-10-12-1350024635.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 336008 frames written to 2012-10-12-1350024635.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-750660
-Worker for 2012-10-12-1350024639.93-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024639.93-demo.wav has no TGID
-done - result 1501320 frames written to 2012-10-12-1350024639.93-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-107588
-Worker for 2012-10-12-1350024658.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024658.02-demo.wav has no TGID
-done - result 215176 frames written to 2012-10-12-1350024658.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-121622
-Worker for 2012-10-12-1350024735.97-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 243244 frames written to 2012-10-12-1350024735.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-267401
-Worker for 2012-10-12-1350024740.26-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 534802 frames written to 2012-10-12-1350024740.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-143428
-Worker for 2012-10-12-1350024746.88-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 286856 frames written to 2012-10-12-1350024746.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-482372
-Worker for 2012-10-12-1350024751.56-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024751.56-demo.wav has no TGID
-done - result 964744 frames written to 2012-10-12-1350024751.56-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-529960
-Worker for 2012-10-12-1350024763.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024763.17-demo.wav has no TGID
-done - result 1059920 frames written to 2012-10-12-1350024763.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-161860
-Worker for 2012-10-12-1350024780.67-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 323720 frames written to 2012-10-12-1350024780.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139332
-Worker for 2012-10-12-1350024785.58-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 278664 frames written to 2012-10-12-1350024785.58-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-160836
-Worker for 2012-10-12-1350024789.17-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 321672 frames written to 2012-10-12-1350024789.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1014918
-Worker for 2012-10-12-1350024793.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024793.9-demo.wav has no TGID
-done - result 2029836 frames written to 2012-10-12-1350024793.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-103492
-Worker for 2012-10-12-1350024822.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024822.84-demo.wav has no TGID
-done - result 206984 frames written to 2012-10-12-1350024822.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350024825.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350024825.54-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350024825.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-176558
-Worker for 2012-10-12-1350024992.87-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 353116 frames written to 2012-10-12-1350024992.87-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123972
-Worker for 2012-10-12-1350024997.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 247944 frames written to 2012-10-12-1350024997.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-582724
-Worker for 2012-10-12-1350025000.9-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025000.9-demo.wav has no TGID
-done - result 1165448 frames written to 2012-10-12-1350025000.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-731204
-Worker for 2012-10-12-1350025015.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025015.34-demo.wav has no TGID
-done - result 1462408 frames written to 2012-10-12-1350025015.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-101444
-Worker for 2012-10-12-1350025032.97-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025032.97-demo.wav has no TGID
-done - result 202888 frames written to 2012-10-12-1350025032.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350025035.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025035.5-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350025035.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-163694
-Worker for 2012-10-12-1350025112.57-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 327388 frames written to 2012-10-12-1350025112.57-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-129092
-Worker for 2012-10-12-1350025116.67-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 258184 frames written to 2012-10-12-1350025116.67-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-469600
-Worker for 2012-10-12-1350025119.88-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025119.88-demo.wav has no TGID
-done - result 939200 frames written to 2012-10-12-1350025119.88-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-182340
-Worker for 2012-10-12-1350025131.21-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 364680 frames written to 2012-10-12-1350025131.21-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-571922
-Worker for 2012-10-12-1350025136.14-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025136.14-demo.wav has no TGID
-done - result 1143844 frames written to 2012-10-12-1350025136.14-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-104516
-Worker for 2012-10-12-1350025152.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025152.5-demo.wav has no TGID
-done - result 209032 frames written to 2012-10-12-1350025152.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350025155.11-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025155.11-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350025155.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90150
-Worker for 2012-10-12-1350025157.59-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025157.59-demo.wav has no TGID
-done - result 180300 frames written to 2012-10-12-1350025157.59-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-83012
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76868
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-44111
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132647
-Worker for 2012-10-12-1350025290.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 265294 frames written to 2012-10-12-1350025290.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-99396
-Worker for 2012-10-12-1350025294.84-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 198792 frames written to 2012-10-12-1350025294.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146500
-Worker for 2012-10-12-1350025297.71-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 293000 frames written to 2012-10-12-1350025297.71-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-188484
-Worker for 2012-10-12-1350025301.81-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 376968 frames written to 2012-10-12-1350025301.81-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-595077
-Worker for 2012-10-12-1350025306.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025306.96-demo.wav has no TGID
-done - result 1190154 frames written to 2012-10-12-1350025306.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350025325.43-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025325.43-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350025325.43-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350025327.94-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025327.94-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350025327.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127396
-Worker for 2012-10-12-1350025604.34-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 254792 frames written to 2012-10-12-1350025604.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350025607.55-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 229512 frames written to 2012-10-12-1350025607.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-168986
-Worker for 2012-10-12-1350025611.68-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 337972 frames written to 2012-10-12-1350025611.68-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-158788
-Worker for 2012-10-12-1350025615.92-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 317576 frames written to 2012-10-12-1350025615.92-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-716868
-Worker for 2012-10-12-1350025620.02-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025620.02-demo.wav has no TGID
-done - result 1433736 frames written to 2012-10-12-1350025620.02-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-150486
-Worker for 2012-10-12-1350025637.32-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 300972 frames written to 2012-10-12-1350025637.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-773436
-Worker for 2012-10-12-1350025641.8-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 1546872 frames written to 2012-10-12-1350025641.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152140
-Worker for 2012-10-12-1350025661.7-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 304280 frames written to 2012-10-12-1350025661.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-113732
-Worker for 2012-10-12-1350025665.83-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 227464 frames written to 2012-10-12-1350025665.83-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1734724
-Worker for 2012-10-12-1350025668.7-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025668.7-demo.wav has no TGID
-done - result 3469448 frames written to 2012-10-12-1350025668.7-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-686148
-Worker for 2012-10-12-1350025710.38-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025710.38-demo.wav has no TGID
-done - result 1372296 frames written to 2012-10-12-1350025710.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-100420
-Worker for 2012-10-12-1350025726.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025726.91-demo.wav has no TGID
-done - result 200840 frames written to 2012-10-12-1350025726.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-139334
-Worker for 2012-10-12-1350025736.12-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 278668 frames written to 2012-10-12-1350025736.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-379380
-Worker for 2012-10-12-1350025740.8-demo.wav
-GLG,40067,NFM,0,0,CanberraBlackMnt,,,1,0,NONE,NONE,NONE
-done - result 758760 frames written to 2012-10-12-1350025740.8-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-79940
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-662596
-Worker for 2012-10-12-1350025751.77-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025751.77-demo.wav has no TGID
-done - result 1325192 frames written to 2012-10-12-1350025751.77-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-524356
-Worker for 2012-10-12-1350025767.73-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 1048712 frames written to 2012-10-12-1350025767.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-120900
-Worker for 2012-10-12-1350025780.97-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 241800 frames written to 2012-10-12-1350025780.97-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-268288
-Worker for 2012-10-12-1350025784.32-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 536576 frames written to 2012-10-12-1350025784.32-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-350275
-Worker for 2012-10-12-1350025790.84-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025790.84-demo.wav has no TGID
-done - result 700550 frames written to 2012-10-12-1350025790.84-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-527090
-Worker for 2012-10-12-1350025799.36-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025799.36-demo.wav has no TGID
-done - result 1054180 frames written to 2012-10-12-1350025799.36-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350025817.5-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025817.5-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350025817.5-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350025819.91-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025819.91-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350025819.91-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-84036
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-276421
-Worker for 2012-10-12-1350025844.79-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 552842 frames written to 2012-10-12-1350025844.79-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-505812
-Worker for 2012-10-12-1350025852.11-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025852.11-demo.wav has no TGID
-done - result 1011624 frames written to 2012-10-12-1350025852.11-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-114756
-Worker for 2012-10-12-1350025868.1-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025868.1-demo.wav has no TGID
-done - result 229512 frames written to 2012-10-12-1350025868.1-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350025871.05-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025871.05-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350025871.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-152904
-Worker for 2012-10-12-1350025913.61-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 305808 frames written to 2012-10-12-1350025913.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-241732
-Worker for 2012-10-12-1350025918.33-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 483464 frames written to 2012-10-12-1350025918.33-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127941
-Worker for 2012-10-12-1350025924.75-demo.wav
-GLG,40067,NFM,0,0,CanberraMtAinsli,,,1,0,NONE,NONE,NONE
-done - result 255882 frames written to 2012-10-12-1350025924.75-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-202820
-Worker for 2012-10-12-1350025928.06-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025928.06-demo.wav has no TGID
-done - result 405640 frames written to 2012-10-12-1350025928.06-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-522970
-Worker for 2012-10-12-1350025933.12-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025933.12-demo.wav has no TGID
-done - result 1045940 frames written to 2012-10-12-1350025933.12-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350025950.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025950.86-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350025950.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-92228
-Worker for 2012-10-12-1350025953.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350025953.54-demo.wav has no TGID
-done - result 184456 frames written to 2012-10-12-1350025953.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-135842
-Worker for 2012-10-12-1350025988.3-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 271684 frames written to 2012-10-12-1350025988.3-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350025991.63-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 186504 frames written to 2012-10-12-1350025991.63-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-366642
-Worker for 2012-10-12-1350025993.94-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 733284 frames written to 2012-10-12-1350025993.94-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-321245
-Worker for 2012-10-12-1350026003.62-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 642490 frames written to 2012-10-12-1350026003.62-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-704580
-Worker for 2012-10-12-1350026012.17-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026012.17-demo.wav has no TGID
-done - result 1409160 frames written to 2012-10-12-1350026012.17-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-98372
-Worker for 2012-10-12-1350026029.05-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026029.05-demo.wav has no TGID
-done - result 196744 frames written to 2012-10-12-1350026029.05-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-91204
-Worker for 2012-10-12-1350026031.48-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026031.48-demo.wav has no TGID
-done - result 182408 frames written to 2012-10-12-1350026031.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-87108
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-127460
-Worker for 2012-10-12-1350026121.24-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 254920 frames written to 2012-10-12-1350026121.24-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-132164
-Worker for 2012-10-12-1350026124.52-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 264328 frames written to 2012-10-12-1350026124.52-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-222276
-Worker for 2012-10-12-1350026127.9-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 444552 frames written to 2012-10-12-1350026127.9-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-796985
-Worker for 2012-10-12-1350026133.96-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026133.96-demo.wav has no TGID
-done - result 1593970 frames written to 2012-10-12-1350026133.96-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-111684
-Worker for 2012-10-12-1350026157.54-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026157.54-demo.wav has no TGID
-done - result 223368 frames written to 2012-10-12-1350026157.54-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-90180
-Worker for 2012-10-12-1350026160.73-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026160.73-demo.wav has no TGID
-done - result 180360 frames written to 2012-10-12-1350026160.73-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76501
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-166462
-Worker for 2012-10-12-1350026328.38-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 332924 frames written to 2012-10-12-1350026328.38-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-95300
-Worker for 2012-10-12-1350026332.55-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 190600 frames written to 2012-10-12-1350026332.55-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1215271
-Worker for 2012-10-12-1350026335.16-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026335.16-demo.wav has no TGID
-done - result 2430542 frames written to 2012-10-12-1350026335.16-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-102468
-Worker for 2012-10-12-1350026368.34-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026368.34-demo.wav has no TGID
-done - result 204936 frames written to 2012-10-12-1350026368.34-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-93252
-Worker for 2012-10-12-1350026370.86-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026370.86-demo.wav has no TGID
-done - result 186504 frames written to 2012-10-12-1350026370.86-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-86084
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-76866
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-108106
-Worker for 2012-10-12-1350026723.98-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 216212 frames written to 2012-10-12-1350026723.98-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-105540
-Worker for 2012-10-12-1350026727.26-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 211080 frames written to 2012-10-12-1350026727.26-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-1018948
-Worker for 2012-10-12-1350026730.76-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026730.76-demo.wav has no TGID
-done - result 2037896 frames written to 2012-10-12-1350026730.76-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-146500
-Worker for 2012-10-12-1350026755.15-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 293000 frames written to 2012-10-12-1350026755.15-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-787196
-Worker for 2012-10-12-1350026759.39-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026759.39-demo.wav has no TGID
-done - result 1574392 frames written to 2012-10-12-1350026759.39-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-97348
-Worker for 2012-10-12-1350026778.48-demo.wav
-GLG,,,,,,,,,,,,
-2012-10-12-1350026778.48-demo.wav has no TGID
-done - result 194696 frames written to 2012-10-12-1350026778.48-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-89156
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-144005
-Worker for 2012-10-12-1350026786.08-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 288010 frames written to 2012-10-12-1350026786.08-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-123972
-Worker for 2012-10-12-1350026789.61-demo.wav
-GLG,10106,NFM,0,0,CanberraMtAinsli,FireandRescNewSo,SYD 7,1,0,NONE,NONE,NONE
-done - result 247944 frames written to 2012-10-12-1350026789.61-demo.wav
-ready to record again
-True
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-510939
-Worker for 2012-10-12-1350026792.66-demo.wav
-
--- a/run.bat
+++ b/run.bat
@@ -1,1 +1,2 @@
python scannr.py > output.txt
+pause
--- a/scannr.py
+++ b/scannr.py
@@ -1,6 +1,7 @@
import logging
+
logging.basicConfig(level=logging.DEBUG,
- format='%(asctime)s\t%(levelname)s\t%(message)s')
+ format='%(asctime)s\t%(levelname)s\t%(message)s')
import snd
import time
@@ -12,81 +13,132 @@
#python -m serial.tools.miniterm -p COM20 -e -b 115200 --cr
import psycopg2
import csv
-import sys,os
+import sys
+import os
sys.path.insert(0, os.path.join(os.path.dirname(__file__) or '.', 'pynma'))
import pynma
filename = "demo.wav"
+last_call = (None, None, None)
MIN_LENGTH = 90000
+lock = threading.RLock()
-def worker(filename, length):
+def get_call():
+ global lock
+ with lock:
+ ser.write("GLG\r")
+ line = ser.readline() # read a '\n' terminated line
+ print line
+ reader = csv.reader([line])
+ for row in reader:
+ #GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0
+ #,NONE,NONE,NONE
+ if (row[0] != 'GLG' or row[1] == ''):
+ print "uh oh"
+ return (None, None, None)
+ if (row[1] != ''):
+ tgid = row[1]
+ #nma.push("scannr", "ping", filename, "http://www.google.com")
+ tgname = row[7]
+ sitename = row[5]
+ return (tgid, tgname, sitename)
+
+def log_recording(tgid, tgname, sitename, filename, length):
+ cur = conn.cursor()
+ cur.execute("INSERT INTO recordings \
+ (tgid, tgname, sitename, filename, length)\
+ VALUES (%s, %s, %s, %s, %s)", ( tgid, tgname, sitename, filename, length))
+ conn.commit()
+ cur.close()
+
+
+def tgid_worker():
+ global last_call
+ last_call = get_call()
+
+
+def save_worker(filename, length):
+ global last_call
"""thread worker function
http://www.doughellmann.com/PyMOTW/threading/
https://github.com/uskr/pynma
ffmpeg -i 2012-09-29-1348911268.34-demo.wav -ar 8000 -ab 4.75k test.3gp
-http://stackoverflow.com/questions/2559746/getting-error-while-converting-wav-to-amr-using-ffmpeg
+http://stackoverflow.com/questions/2559746/getting-error-while-converting-
+wav-to-amr-using-ffmpeg
"""
- print 'Worker for '+filename
- ser.write("GLG\r")
- line = ser.readline() # read a '\n' terminated line
- print line
- reader = csv.reader([line])
- for row in reader:
- #GLG,40078,NFM,0,0,CanberraBlackMnt,AustralianCapita,SES Ops 1,1,0,NONE,NONE,NONE
- if (row[0] != 'GLG'):
- print "uh oh"
- if (row[1] != ''):
- tgid = row[1]
- #nma.push("scannr", "ping", filename, "http://www.google.com")
- tgname = row[7]
- sitename = row[5]
- """http://initd.org/psycopg/docs/usage.html"""
- cur = conn.cursor()
- cur.execute("INSERT INTO recordings (filename,tgid,tgname,sitename,length) VALUES (%s, %s,%s, %s, %s)",(filename,tgid,tgname,sitename, length))
- conn.commit()
- cur.close()
+ print 'Worker for ' + filename
+ (oldtgid, oldtgname, oldsitename) = last_call
+ (tgid, tgname, sitename) = get_call()
+ if oldtgid == tgid:
+ if tgid is None or tgid == '':
+ print filename + " has no TGID"
else:
- print filename+" has no TGID"
+ log_recording(tgid, tgname, sitename, filename, length)
+ else:
+ if tgid is None or tgid == '':
+ print filename + " has no TGID"
+ else:
+ log_recording(tgid, tgname, sitename, filename, length)
+ if oldtgid is None or oldtgid == '':
+ print filename + " has no old TGID"
+ else:
+ log_recording(oldtgid, oldtgname, oldsitename, filename, length)
+ return
- return
def filenameMaker():
global filename
- filename = date.today().isoformat()+'-'+str(time.time())+'-demo.wav'
+ filename = date.today().isoformat() + '-' + str(time.time()) + '-demo.wav'
-def record_to_async_file():
- "Records from the microphone and outputs the resulting data to `path`"
+
+def do_record():
+ #global filename
sample_width, data = snd.record()
- print str(len(data))
+ thr = threading.Thread(target=record_to_async_file, args=(sample_width, data, filename))
+ thr.start()
+
+
+def record_to_async_file(sample_width, data, filename):
+ "Records from the microphone and outputs the resulting data to `filename`"
+ print "Recording complete"
if len(data) > MIN_LENGTH:
- data = snd.pack('<' + ('h'*len(data)), *data)
- path = "./data/"+filename
- dispatcher.send( signal='FILE_CREATED', sender=filename, filename=filename, length=len(data))
+ print "Recording being saved..."
+ dispatcher.send(signal='FILE_CREATED', sender=filename, filename=filename, length=len(data))
+ print str(len(data))
+ data = snd.pack('<' + ('h' * len(data)), *data)
+ path = "./data/" + filename
wf = wave.open(path, 'wb')
- wf.setnchannels(1)
+ wf.setnchannels(2)
wf.setsampwidth(sample_width)
wf.setframerate(snd.RATE)
wf.writeframes(data)
wf.close()
del wf
- print("done - result "+str(len(data))+" frames written to "+path)
+ print("done - result " + str(len(data)) + " frames written to " + path)
del data
-dispatcher.connect( filenameMaker, signal='SND_STARTED', sender=dispatcher.Any )
-dispatcher.connect( worker, signal='FILE_CREATED', sender=dispatcher.Any )
+dispatcher.connect(filenameMaker, signal='SND_STARTED', sender=dispatcher.Any)
+dispatcher.connect(tgid_worker, signal='SND_STARTED', sender=dispatcher.Any)
+dispatcher.connect(save_worker, signal='FILE_CREATED', sender=dispatcher.Any)
print "Opening serial port..."
-ser = serial.Serial('COM20', 112500, timeout=1)
+if sys.platform.startswith('darwin'):
+ ser = serial.Serial('/dev/tty.usbserial-FTB3VL83', 112500, timeout=1)
+elif sys.platform.startswith('win32'):
+ ser = serial.Serial('COM20', 112500, timeout=1)
print "Loading notifymyandroid..."
-nma = pynma.PyNMA( "a6f50f76119eda33befe4325b4b9e1dd25eef7bad2868e4f")
+nma = pynma.PyNMA("a6f50f76119eda33befe4325b4b9e1dd25eef7bad2868e4f")
print "Connecting database..."
conn = psycopg2.connect("dbname=scannr user=postgres password=snmc")
print "Scannr started."
while True:
print "ready to record again"
- record_to_async_file()
+ do_record()
ser.close()
+
+
+
--- /dev/null
+++ b/scannrmobile/.gitignore
@@ -1,1 +1,14 @@
+bin
+gen
+target
+.settings
+.classpath
+.project
+*.keystore
+*.swp
+*.orig
+*.log
+*.properties
+seed.txt
+map.txt
--- /dev/null
+++ b/scannrmobile/.idea/.name
@@ -1,1 +1,1 @@
-
+scannrmobile
--- /dev/null
+++ b/scannrmobile/.idea/ant.xml
@@ -1,1 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="AntConfiguration">
+ <defaultAnt bundledAnt="true" />
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/compiler.xml
@@ -1,1 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="CompilerConfiguration">
+ <option name="DEFAULT_COMPILER" value="Javac" />
+ <excludeFromCompile>
+ <directory url="file://$PROJECT_DIR$/gen" includeSubdirectories="true" />
+ </excludeFromCompile>
+ <resourceExtensions />
+ <wildcardResourcePatterns>
+ <entry name="!?*.java" />
+ <entry name="!?*.form" />
+ <entry name="!?*.class" />
+ <entry name="!?*.groovy" />
+ <entry name="!?*.scala" />
+ <entry name="!?*.flex" />
+ <entry name="!?*.kt" />
+ <entry name="!?*.clj" />
+ </wildcardResourcePatterns>
+ <annotationProcessing>
+ <profile default="true" name="Default" enabled="false">
+ <processorPath useClasspath="true" />
+ </profile>
+ </annotationProcessing>
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/copyright/profiles_settings.xml
@@ -1,1 +1,5 @@
-
+<component name="CopyrightManager">
+ <settings default="">
+ <module2copyright />
+ </settings>
+</component>
--- /dev/null
+++ b/scannrmobile/.idea/encodings.xml
@@ -1,1 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/misc.xml
@@ -1,1 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="EntryPointsManager">
+ <entry_points version="2.0" />
+ </component>
+ <component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="Android 4.2 Platform" project-jdk-type="Android SDK">
+ <output url="file://$PROJECT_DIR$/out" />
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/modules.xml
@@ -1,1 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ProjectModuleManager">
+ <modules>
+ <module fileurl="file://$PROJECT_DIR$/scannrmobile.iml" filepath="$PROJECT_DIR$/scannrmobile.iml" />
+ </modules>
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/scopes/scope_settings.xml
@@ -1,1 +1,5 @@
-
+<component name="DependencyValidationManager">
+ <state>
+ <option name="SKIP_IMPORT_STATEMENTS" value="false" />
+ </state>
+</component>
--- /dev/null
+++ b/scannrmobile/.idea/uiDesigner.xml
@@ -1,1 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Palette2">
+ <group name="Swing">
+ <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+ </item>
+ <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+ <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+ <initial-values>
+ <property name="text" value="Button" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="RadioButton" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="CheckBox" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="Label" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+ <preferred-size width="-1" height="20" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+ </item>
+ </group>
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/vcs.xml
@@ -1,1 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="VcsDirectoryMappings">
+ <mapping directory="" vcs="" />
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/.idea/workspace.xml
@@ -1,1 +1,778 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="AndroidConfiguredLogFilters">
+ <filters>
+ <filter>
+ <option name="logLevel" value="verbose" />
+ <option name="logMessagePattern" value="Scannr" />
+ <option name="logTagPattern" value="" />
+ <option name="name" value="Scannr" />
+ <option name="pid" value="" />
+ </filter>
+ </filters>
+ </component>
+ <component name="AndroidDesignerProfile">
+ <option name="fullProfile">
+ <profile>
+ <option name="device" value="2.7in QVGA" />
+ <option name="deviceConfiguration" value="Portrait" />
+ <option name="targetHashString" value="android-17" />
+ <option name="theme" value="Theme" />
+ </profile>
+ </option>
+ <option name="selection" value="[Full]" />
+ </component>
+ <component name="AndroidLogFilters">
+ <option name="TOOL_WINDOW_CONFIGURED_FILTER" value="Scannr" />
+ </component>
+ <component name="ChangeListManager">
+ <list default="true" id="4912fbca-fcd2-420f-a992-61830c24c4b5" name="Default" comment="" />
+ <ignored path="scannrmobile.iws" />
+ <ignored path=".idea/workspace.xml" />
+ <file path="$PROJECT_DIR$/res/values/strings.xml" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356156665048" ignored="false" />
+ <file path="/fragment.java" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356173506003" ignored="false" />
+ <file path="/HttpTask.java" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356175420628" ignored="false" />
+ <file path="$PROJECT_DIR$/gen/com/example/scannrmobile/Manifest.java" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356176134813" ignored="false" />
+ <file path="$PROJECT_DIR$/gen/com/example/scannrmobile/R.java" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356176134813" ignored="false" />
+ <file path="$PROJECT_DIR$/gen/com/example/scannrmobile/BuildConfig.java" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356176134813" ignored="false" />
+ <file path="/ScannrMobile.java" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356177267735" ignored="false" />
+ <file path="/Dummy.txt" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356175572532" ignored="false" />
+ <file path="$USER_HOME$/Sites/scannr/calls.json.php" changelist="4912fbca-fcd2-420f-a992-61830c24c4b5" time="1356175698040" ignored="false" />
+ <option name="TRACKING_ENABLED" value="true" />
+ <option name="SHOW_DIALOG" value="false" />
+ <option name="HIGHLIGHT_CONFLICTS" value="true" />
+ <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+ <option name="LAST_RESOLUTION" value="IGNORE" />
+ </component>
+ <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
+ <component name="CreatePatchCommitExecutor">
+ <option name="PATCH_PATH" value="" />
+ </component>
+ <component name="DaemonCodeAnalyzer">
+ <disable_hints />
+ </component>
+ <component name="DebuggerManager">
+ <line_breakpoints default_suspend_policy="SuspendAll" default_condition_enabled="true" />
+ <breakpoint_any default_suspend_policy="SuspendAll" default_condition_enabled="true">
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="SUSPEND" value="true" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="true" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="SUSPEND" value="true" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="true" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ </breakpoint_any>
+ <ui_properties default_suspend_policy="SuspendAll" default_condition_enabled="true" />
+ <breakpoint_rules />
+ <ui_properties />
+ </component>
+ <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
+ <component name="FavoritesManager">
+ <favorites_list name="scannrmobile" />
+ </component>
+ <component name="FileEditorManager">
+ <leaf>
+ <file leaf-file-name="ScannrMobile.java" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/ScannrMobile.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="32" column="50" selection-start="1063" selection-end="1073" vertical-scroll-proportion="0.44060475">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="ArrayAdapter.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$USER_HOME$/Downloads/android-sdk-macosx/sources/android-17/android/widget/ArrayAdapter.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="46" column="13" selection-start="1860" selection-end="1860" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="simplerow.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/res/layout/simplerow.xml">
+ <provider selected="true" editor-type-id="android-designer">
+ <state />
+ </provider>
+ <provider editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="HttpTask.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/HttpTask.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="61" column="28" selection-start="1919" selection-end="1919" vertical-scroll-proportion="0.0">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="AndroidManifest.xml" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="5" column="68" selection-start="266" selection-end="266" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ </leaf>
+ </component>
+ <component name="FindManager">
+ <FindUsagesManager>
+ <setting name="OPEN_NEW_TAB" value="false" />
+ </FindUsagesManager>
+ </component>
+ <component name="IdeDocumentHistory">
+ <option name="changedFiles">
+ <list>
+ <option value="$PROJECT_DIR$/AndroidManifest.xml" />
+ <option value="$PROJECT_DIR$/src/com/example/scannrmobile/HttpTask.java" />
+ <option value="$PROJECT_DIR$/res/layout/main.xml" />
+ <option value="$PROJECT_DIR$/src/com/example/scannrmobile/ScannrMobile.java" />
+ </list>
+ </option>
+ </component>
+ <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
+ <component name="ProjectFrameBounds">
+ <option name="y" value="22" />
+ <option name="width" value="1680" />
+ <option name="height" value="937" />
+ </component>
+ <component name="ProjectLevelVcsManager" settingsEditedManually="false">
+ <OptionsSetting value="true" id="Add" />
+ <OptionsSetting value="true" id="Remove" />
+ <OptionsSetting value="true" id="Checkout" />
+ <OptionsSetting value="true" id="Update" />
+ <OptionsSetting value="true" id="Status" />
+ <OptionsSetting value="true" id="Edit" />
+ <ConfirmationsSetting value="0" id="Add" />
+ <ConfirmationsSetting value="0" id="Remove" />
+ </component>
+ <component name="ProjectReloadState">
+ <option name="STATE" value="0" />
+ </component>
+ <component name="ProjectView">
+ <navigator currentView="ProjectPane" proportions="" version="1" splitterProportion="0.5">
+ <flattenPackages />
+ <showMembers />
+ <showModules />
+ <showLibraryContents />
+ <hideEmptyPackages />
+ <abbreviatePackageNames />
+ <autoscrollToSource />
+ <autoscrollFromSource />
+ <sortByType />
+ </navigator>
+ <panes>
+ <pane id="ProjectPane">
+ <subPane>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="res" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="scannrmobile" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="res" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="layout" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
+ </pane>
+ <pane id="PackagesPane" />
+ <pane id="Scope" />
+ </panes>
+ </component>
+ <component name="PropertiesComponent">
+ <property name="GoToFile.includeJavaFiles" value="false" />
+ <property name="project.structure.last.edited" value="Modules" />
+ <property name="project.structure.proportion" value="0.0" />
+ <property name="options.splitter.main.proportions" value="0.3" />
+ <property name="options.lastSelected" value="preferences.pluginManager" />
+ <property name="MemberChooser.sorted" value="false" />
+ <property name="recentsLimit" value="5" />
+ <property name="AndroidLayoutSelectedEditor" value="android-designer" />
+ <property name="project.structure.side.proportion" value="0.2" />
+ <property name="MemberChooser.copyJavadoc" value="false" />
+ <property name="GoToClass.toSaveIncludeLibraries" value="false" />
+ <property name="WebServerToolWindowFactoryState" value="false" />
+ <property name="restartRequiresConfirmation" value="true" />
+ <property name="FullScreen" value="false" />
+ <property name="MemberChooser.showClasses" value="true" />
+ <property name="GoToClass.includeLibraries" value="false" />
+ <property name="options.splitter.details.proportions" value="0.2" />
+ <property name="options.searchVisible" value="true" />
+ </component>
+ <component name="PyConsoleOptionsProvider">
+ <option name="myPythonConsoleState">
+ <PyConsoleSettings />
+ </option>
+ <option name="myDjangoConsoleState">
+ <PyConsoleSettings />
+ </option>
+ </component>
+ <component name="RunManager" selected="Android Application.scannrmobile">
+ <configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
+ <module name="" />
+ <option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m" />
+ <option name="PROGRAM_PARAMETERS" />
+ <method />
+ </configuration>
+ <configuration default="true" type="AndroidTestRunConfigurationType" factoryName="Android Tests">
+ <module name="" />
+ <option name="TESTING_TYPE" value="0" />
+ <option name="INSTRUMENTATION_RUNNER_CLASS" value="" />
+ <option name="METHOD_NAME" value="" />
+ <option name="CLASS_NAME" value="" />
+ <option name="PACKAGE_NAME" value="" />
+ <option name="TARGET_SELECTION_MODE" value="EMULATOR" />
+ <option name="PREFERRED_AVD" value="" />
+ <option name="COMMAND_LINE" value="" />
+ <option name="WIPE_USER_DATA" value="false" />
+ <option name="DISABLE_BOOT_ANIMATION" value="false" />
+ <option name="NETWORK_SPEED" value="full" />
+ <option name="NETWORK_LATENCY" value="none" />
+ <option name="CLEAR_LOGCAT" value="false" />
+ <method />
+ </configuration>
+ <configuration default="true" type="Remote" factoryName="Remote">
+ <option name="USE_SOCKET_TRANSPORT" value="true" />
+ <option name="SERVER_MODE" value="false" />
+ <option name="SHMEM_ADDRESS" value="javadebug" />
+ <option name="HOST" value="localhost" />
+ <option name="PORT" value="5005" />
+ <method />
+ </configuration>
+ <configuration default="true" type="Applet" factoryName="Applet">
+ <module name="" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="HTML_FILE_NAME" />
+ <option name="HTML_USED" value="false" />
+ <option name="WIDTH" value="400" />
+ <option name="HEIGHT" value="300" />
+ <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
+ <option name="VM_PARAMETERS" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <method />
+ </configuration>
+ <configuration default="true" type="TestNG" factoryName="TestNG">
+ <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
+ <module name="" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="SUITE_NAME" />
+ <option name="PACKAGE_NAME" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="METHOD_NAME" />
+ <option name="GROUP_NAME" />
+ <option name="TEST_OBJECT" value="CLASS" />
+ <option name="VM_PARAMETERS" value="-ea" />
+ <option name="PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="OUTPUT_DIRECTORY" />
+ <option name="ANNOTATION_TYPE" />
+ <option name="ENV_VARIABLES" />
+ <option name="PASS_PARENT_ENVS" value="true" />
+ <option name="TEST_SEARCH_SCOPE">
+ <value defaultName="moduleWithDependencies" />
+ </option>
+ <option name="USE_DEFAULT_REPORTERS" value="false" />
+ <option name="PROPERTIES_FILE" />
+ <envs />
+ <properties />
+ <listeners />
+ <method />
+ </configuration>
+ <configuration default="true" type="Application" factoryName="Application">
+ <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="VM_PARAMETERS" />
+ <option name="PROGRAM_PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="ENABLE_SWING_INSPECTOR" value="false" />
+ <option name="ENV_VARIABLES" />
+ <option name="PASS_PARENT_ENVS" value="true" />
+ <module name="" />
+ <envs />
+ <method />
+ </configuration>
+ <configuration default="true" type="JUnit" factoryName="JUnit">
+ <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
+ <module name="" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="PACKAGE_NAME" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="METHOD_NAME" />
+ <option name="TEST_OBJECT" value="class" />
+ <option name="VM_PARAMETERS" value="-ea" />
+ <option name="PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ENV_VARIABLES" />
+ <option name="PASS_PARENT_ENVS" value="true" />
+ <option name="TEST_SEARCH_SCOPE">
+ <value defaultName="moduleWithDependencies" />
+ </option>
+ <envs />
+ <patterns />
+ <method />
+ </configuration>
+ <configuration default="true" type="AndroidRunConfigurationType" factoryName="Android Application">
+ <module name="" />
+ <option name="ACTIVITY_CLASS" value="" />
+ <option name="MODE" value="default_activity" />
+ <option name="DEPLOY" value="true" />
+ <option name="TARGET_SELECTION_MODE" value="EMULATOR" />
+ <option name="PREFERRED_AVD" value="" />
+ <option name="COMMAND_LINE" value="" />
+ <option name="WIPE_USER_DATA" value="false" />
+ <option name="DISABLE_BOOT_ANIMATION" value="false" />
+ <option name="NETWORK_SPEED" value="full" />
+ <option name="NETWORK_LATENCY" value="none" />
+ <option name="CLEAR_LOGCAT" value="false" />
+ <method />
+ </configuration>
+ <configuration default="false" name="scannrmobile" type="AndroidRunConfigurationType" factoryName="Android Application">
+ <module name="scannrmobile" />
+ <option name="ACTIVITY_CLASS" value="com.example.scannrmobile.ScannrMobile" />
+ <option name="MODE" value="specific_activity" />
+ <option name="DEPLOY" value="true" />
+ <option name="TARGET_SELECTION_MODE" value="EMULATOR" />
+ <option name="PREFERRED_AVD" value="MyAvd0" />
+ <option name="COMMAND_LINE" value="" />
+ <option name="WIPE_USER_DATA" value="false" />
+ <option name="DISABLE_BOOT_ANIMATION" value="false" />
+ <option name="NETWORK_SPEED" value="full" />
+ <option name="NETWORK_LATENCY" value="none" />
+ <option name="CLEAR_LOGCAT" value="true" />
+ <RunnerSettings RunnerId="AndroidDebugRunner" />
+ <ConfigurationWrapper RunnerId="AndroidDebugRunner" />
+ <method />
+ </configuration>
+ <list size="1">
+ <item index="0" class="java.lang.String" itemvalue="Android Application.scannrmobile" />
+ </list>
+ <configuration name="<template>" type="WebApp" default="true" selected="false">
+ <Host>localhost</Host>
+ <Port>5050</Port>
+ </configuration>
+ </component>
+ <component name="ShelveChangesManager" show_recycled="false" />
+ <component name="SvnConfiguration" maxAnnotateRevisions="500" myUseAcceleration="nothing" myAutoUpdateAfterCommit="false" cleanupOnStartRun="false">
+ <option name="USER" value="" />
+ <option name="PASSWORD" value="" />
+ <option name="mySSHConnectionTimeout" value="30000" />
+ <option name="mySSHReadTimeout" value="30000" />
+ <option name="LAST_MERGED_REVISION" />
+ <option name="MERGE_DRY_RUN" value="false" />
+ <option name="MERGE_DIFF_USE_ANCESTRY" value="true" />
+ <option name="UPDATE_LOCK_ON_DEMAND" value="false" />
+ <option name="IGNORE_SPACES_IN_MERGE" value="false" />
+ <option name="DETECT_NESTED_COPIES" value="true" />
+ <option name="CHECK_NESTED_FOR_QUICK_MERGE" value="false" />
+ <option name="IGNORE_SPACES_IN_ANNOTATE" value="true" />
+ <option name="SHOW_MERGE_SOURCES_IN_ANNOTATE" value="true" />
+ <option name="FORCE_UPDATE" value="false" />
+ <option name="IGNORE_EXTERNALS" value="false" />
+ <myIsUseDefaultProxy>false</myIsUseDefaultProxy>
+ </component>
+ <component name="TaskManager">
+ <task active="true" id="Default" summary="Default task">
+ <changelist id="4912fbca-fcd2-420f-a992-61830c24c4b5" name="Default" comment="" />
+ <created>1356156646856</created>
+ <updated>1356156646856</updated>
+ </task>
+ <servers />
+ </component>
+ <component name="ToolWindowManager">
+ <frame x="0" y="22" width="1680" height="937" extended-state="6" />
+ <editor active="true" />
+ <layout>
+ <window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32986537" sideWeight="0.6719706" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32986537" sideWeight="0.6719706" order="2" side_tool="false" content_ui="tabs" />
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39902082" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925338" sideWeight="0.500612" order="7" side_tool="true" content_ui="tabs" />
+ <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32802936" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="Android" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925338" sideWeight="0.49510404" order="7" side_tool="false" content_ui="tabs" />
+ <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
+ <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
+ <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.249694" sideWeight="0.6009792" order="0" side_tool="false" content_ui="combo" />
+ <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925338" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+ <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
+ <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925338" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
+ <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
+ </layout>
+ </component>
+ <component name="VcsContentAnnotationSettings">
+ <option name="myLimit" value="2678400000" />
+ </component>
+ <component name="VcsManagerConfiguration">
+ <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
+ <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
+ <option name="CHECK_NEW_TODO" value="true" />
+ <option name="myTodoPanelSettings">
+ <value>
+ <are-packages-shown value="false" />
+ <are-modules-shown value="false" />
+ <flatten-packages value="false" />
+ <is-autoscroll-to-source value="false" />
+ </value>
+ </option>
+ <option name="PERFORM_UPDATE_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_COMMIT_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_EDIT_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_CHECKOUT_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_ADD_REMOVE_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_ROLLBACK_IN_BACKGROUND" value="false" />
+ <option name="CHECK_LOCALLY_CHANGED_CONFLICTS_IN_BACKGROUND" value="false" />
+ <option name="CHANGED_ON_SERVER_INTERVAL" value="60" />
+ <option name="SHOW_ONLY_CHANGED_IN_SELECTION_DIFF" value="true" />
+ <option name="CHECK_COMMIT_MESSAGE_SPELLING" value="true" />
+ <option name="DEFAULT_PATCH_EXTENSION" value="patch" />
+ <option name="SHORT_DIFF_HORISONTALLY" value="true" />
+ <option name="SHORT_DIFF_EXTRA_LINES" value="2" />
+ <option name="SOFT_WRAPS_IN_SHORT_DIFF" value="true" />
+ <option name="INCLUDE_TEXT_INTO_PATCH" value="false" />
+ <option name="INCLUDE_TEXT_INTO_SHELF" value="false" />
+ <option name="SHOW_FILE_HISTORY_DETAILS" value="true" />
+ <option name="SHOW_VCS_ERROR_NOTIFICATIONS" value="true" />
+ <option name="SHOW_DIRTY_RECURSIVELY" value="false" />
+ <option name="LIMIT_HISTORY" value="true" />
+ <option name="MAXIMUM_HISTORY_ROWS" value="1000" />
+ <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
+ <option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="false" />
+ <option name="LAST_COMMIT_MESSAGE" />
+ <option name="MAKE_NEW_CHANGELIST_ACTIVE" value="false" />
+ <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
+ <option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
+ <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
+ <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
+ <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
+ <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
+ <option name="ACTIVE_VCS_NAME" />
+ <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
+ <option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
+ <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
+ <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
+ </component>
+ <component name="XDebuggerManager">
+ <breakpoint-manager />
+ </component>
+ <component name="antWorkspaceConfiguration">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="FILTER_TARGETS" value="false" />
+ </component>
+ <component name="editorHistoryManager">
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/HttpTask.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="6" column="30" selection-start="184" selection-end="184" vertical-scroll-proportion="0.0">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$USER_HOME$/Downloads/android-sdk-macosx/sources/android-17/android/os/AsyncTask.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="347" column="53" selection-start="14141" selection-end="14141" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="5" column="68" selection-start="266" selection-end="266" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/res/layout/main.xml">
+ <provider selected="true" editor-type-id="android-designer">
+ <state />
+ </provider>
+ <provider editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/ScannrMobile.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="37" column="0" selection-start="1317" selection-end="1317" vertical-scroll-proportion="0.0">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="5" column="68" selection-start="266" selection-end="266" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/res/layout/main.xml">
+ <provider selected="true" editor-type-id="android-designer">
+ <state />
+ </provider>
+ <provider editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/ScannrMobile.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="48" column="0" selection-start="1666" selection-end="1666" vertical-scroll-proportion="0.0">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="5" column="68" selection-start="266" selection-end="266" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$USER_HOME$/Downloads/android-sdk-macosx/sources/android-17/android/os/AsyncTask.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="347" column="53" selection-start="14141" selection-end="14141" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/AndroidManifest.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="5" column="68" selection-start="266" selection-end="266" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/res/layout/main.xml">
+ <provider selected="true" editor-type-id="android-designer">
+ <state />
+ </provider>
+ <provider editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/res/layout/simplerow.xml">
+ <provider selected="true" editor-type-id="android-designer">
+ <state />
+ </provider>
+ <provider editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$USER_HOME$/Downloads/android-sdk-macosx/sources/android-17/android/widget/ArrayAdapter.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="46" column="13" selection-start="1860" selection-end="1860" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/HttpTask.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="61" column="28" selection-start="1919" selection-end="1919" vertical-scroll-proportion="0.0">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/src/com/example/scannrmobile/ScannrMobile.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="32" column="50" selection-start="1063" selection-end="1073" vertical-scroll-proportion="0.44060475">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ </component>
+ <component name="masterDetails">
+ <states>
+ <state key="ArtifactsStructureConfigurable.UI">
+ <settings>
+ <artifact-editor />
+ <splitter-proportions>
+ <option name="proportions">
+ <list>
+ <option value="0.2" />
+ </list>
+ </option>
+ </splitter-proportions>
+ </settings>
+ </state>
+ <state key="FacetStructureConfigurable.UI">
+ <settings>
+ <last-edited>Android</last-edited>
+ <splitter-proportions>
+ <option name="proportions">
+ <list>
+ <option value="0.2" />
+ </list>
+ </option>
+ </splitter-proportions>
+ </settings>
+ </state>
+ <state key="GlobalLibrariesConfigurable.UI">
+ <settings>
+ <splitter-proportions>
+ <option name="proportions">
+ <list>
+ <option value="0.2" />
+ </list>
+ </option>
+ </splitter-proportions>
+ </settings>
+ </state>
+ <state key="JdkListConfigurable.UI">
+ <settings>
+ <last-edited>Android 4.2 Platform</last-edited>
+ <splitter-proportions>
+ <option name="proportions">
+ <list>
+ <option value="0.2" />
+ </list>
+ </option>
+ </splitter-proportions>
+ </settings>
+ </state>
+ <state key="ModuleStructureConfigurable.UI">
+ <settings>
+ <last-edited>Android|scannrmobile</last-edited>
+ <splitter-proportions>
+ <option name="proportions">
+ <list>
+ <option value="0.2" />
+ </list>
+ </option>
+ </splitter-proportions>
+ </settings>
+ </state>
+ <state key="ProjectLibrariesConfigurable.UI">
+ <settings>
+ <splitter-proportions>
+ <option name="proportions">
+ <list>
+ <option value="0.2" />
+ </list>
+ </option>
+ </splitter-proportions>
+ </settings>
+ </state>
+ </states>
+ </component>
+</project>
+
--- /dev/null
+++ b/scannrmobile/AndroidManifest.xml
@@ -1,1 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="com.example.scannrmobile"
+ android:versionCode="1"
+ android:versionName="1.0">
+ <uses-sdk android:minSdkVersion="17"/>
+ <uses-permission android:name="android.permission.INTERNET"/>
+ <application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
+ <activity android:name="ScannrMobile"
+ android:label="@string/app_name">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN"/>
+ <category android:name="android.intent.category.LAUNCHER"/>
+ </intent-filter>
+ </activity>
+ </application>
+</manifest>
--- /dev/null
+++ b/scannrmobile/build.xml
@@ -1,1 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="scannrmobile" default="help">
+ <!-- The local.properties file is created and updated by the 'android' tool.
+ It contains the path to the SDK. It should *NOT* be checked into
+ Version Control Systems. -->
+ <property file="local.properties"/>
+
+ <!-- The ant.properties file can be created by you. It is only edited by the
+ 'android' tool to add properties to it.
+ This is the place to change some Ant specific build properties.
+ Here are some properties you may want to change/update:
+
+ source.dir
+ The name of the source directory. Default is 'src'.
+ out.dir
+ The name of the output directory. Default is 'bin'.
+
+ For other overridable properties, look at the beginning of the rules
+ files in the SDK, at tools/ant/build.xml
+
+ Properties related to the SDK location or the project target should
+ be updated using the 'android' tool with the 'update' action.
+
+ This file is an integral part of the build system for your
+ application and should be checked into Version Control Systems.
+
+ -->
+ <property file="ant.properties"/>
+
+ <!-- if sdk.dir was not set from one of the property file, then
+ get it from the ANDROID_HOME env var.
+ This must be done before we load project.properties since
+ the proguard config can use sdk.dir -->
+ <property environment="env"/>
+ <condition property="sdk.dir" value="${env.ANDROID_HOME}">
+ <isset property="env.ANDROID_HOME"/>
+ </condition>
+
+ <!-- The project.properties file is created and updated by the 'android'
+ tool, as well as ADT.
+
+ This contains project specific properties such as project target, and library
+ dependencies. Lower level build properties are stored in ant.properties
+ (or in .classpath for Eclipse projects).
+
+ This file is an integral part of the build system for your
+ application and should be checked into Version Control Systems. -->
+ <loadproperties srcFile="project.properties"/>
+
+ <!-- quick check on sdk.dir -->
+ <fail
+ message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
+ unless="sdk.dir"
+ />
+
+ <!--
+ Import per project custom build rules if present at the root of the project.
+ This is the place to put custom intermediary targets such as:
+ -pre-build
+ -pre-compile
+ -post-compile (This is typically used for code obfuscation.
+ Compiled code location: ${out.classes.absolute.dir}
+ If this is not done in place, override ${out.dex.input.absolute.dir})
+ -post-package
+ -post-build
+ -pre-clean
+ -->
+ <import file="custom_rules.xml" optional="true"/>
+
+ <!-- Import the actual build file.
+
+ To customize existing targets, there are two options:
+ - Customize only one target:
+ - copy/paste the target into this file, *before* the
+ <import> task.
+ - customize it to your needs.
+ - Customize the whole content of build.xml
+ - copy/paste the content of the rules files (minus the top node)
+ into this file, replacing the <import> task.
+ - customize to your needs.
+
+ ***********************
+ ****** IMPORTANT ******
+ ***********************
+ In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
+ in order to avoid having your file be overridden by tools such as "android update project"
+ -->
+ <!-- version-tag: 1 -->
+ <import file="${sdk.dir}/tools/ant/build.xml"/>
+
+</project>
+
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/BuildConfig.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/HttpTask$HttpTaskHandler.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/HttpTask.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/R$attr.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/R$drawable.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/R$id.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/R$layout.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/R$string.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/R.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/ScannrMobile$1.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/com/example/scannrmobile/ScannrMobile.class differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/scannrmobile.afp.apk differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/scannrmobile.apk differ
Binary files /dev/null and b/scannrmobile/out/production/scannrmobile/scannrmobile.unaligned.apk differ
--- /dev/null
+++ b/scannrmobile/proguard-project.txt
@@ -1,1 +1,21 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
Binary files /dev/null and b/scannrmobile/res/drawable-hdpi/ic_launcher.png differ
Binary files /dev/null and b/scannrmobile/res/drawable-ldpi/ic_launcher.png differ
Binary files /dev/null and b/scannrmobile/res/drawable-mdpi/ic_launcher.png differ
Binary files /dev/null and b/scannrmobile/res/drawable-xhdpi/ic_launcher.png differ
--- /dev/null
+++ b/scannrmobile/res/layout/main.xml
@@ -1,1 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <ListView android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:id="@+id/mainListView">
+ </ListView>
+
+</LinearLayout>
--- /dev/null
+++ b/scannrmobile/res/layout/simplerow.xml
@@ -1,1 +1,8 @@
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/rowTextView"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:padding="10dp"
+ android:textSize="16sp" >
+</TextView>
--- /dev/null
+++ b/scannrmobile/res/values/strings.xml
@@ -1,1 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">scannrmobile</string>
+</resources>
--- /dev/null
+++ b/scannrmobile/scannrmobile.iml
@@ -1,1 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="JAVA_MODULE" version="4">
+ <component name="FacetManager">
+ <facet type="android" name="Android">
+ <configuration>
+ <option name="GEN_FOLDER_RELATIVE_PATH_APT" value="/gen" />
+ <option name="GEN_FOLDER_RELATIVE_PATH_AIDL" value="/gen" />
+ <option name="MANIFEST_FILE_RELATIVE_PATH" value="/AndroidManifest.xml" />
+ <option name="RES_FOLDER_RELATIVE_PATH" value="/res" />
+ <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/assets" />
+ <option name="LIBS_FOLDER_RELATIVE_PATH" value="/libs" />
+ <option name="USE_CUSTOM_APK_RESOURCE_FOLDER" value="false" />
+ <option name="CUSTOM_APK_RESOURCE_FOLDER" value="" />
+ <option name="USE_CUSTOM_COMPILER_MANIFEST" value="false" />
+ <option name="CUSTOM_COMPILER_MANIFEST" value="" />
+ <option name="APK_PATH" value="" />
+ <option name="LIBRARY_PROJECT" value="false" />
+ <option name="RUN_PROCESS_RESOURCES_MAVEN_TASK" value="true" />
+ <option name="GENERATE_UNSIGNED_APK" value="false" />
+ <option name="CUSTOM_DEBUG_KEYSTORE_PATH" value="" />
+ <option name="PACK_TEST_CODE" value="false" />
+ <option name="RUN_PROGUARD" value="false" />
+ <option name="PROGUARD_CFG_PATH" value="/proguard-project.txt" />
+ <resOverlayFolders>
+ <path>/res-overlay</path>
+ </resOverlayFolders>
+ <includeSystemProguardFile>true</includeSystemProguardFile>
+ <includeAssetsFromLibraries>false</includeAssetsFromLibraries>
+ <additionalNativeLibs />
+ </configuration>
+ </facet>
+ </component>
+ <component name="NewModuleRootManager" inherit-compiler-output="true">
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
+
--- /dev/null
+++ b/scannrmobile/src/com/example/scannrmobile/HttpTask.java
@@ -1,1 +1,73 @@
+package com.example.scannrmobile;
+import android.os.AsyncTask;
+
+import org.apache.http.client.methods.*;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+
+import org.apache.http.HttpResponse;
+import org.apache.http.client.HttpClient;
+import org.apache.http.impl.client.DefaultHttpClient;
+
+import org.json.*;
+import android.util.Log;
+
+
+//http://www.accella.net/android-http-get-json/
+public class HttpTask extends AsyncTask<HttpUriRequest,Void,JSONArray> {
+ private static final String TAG = "Scannr_HTTP_TASK";
+
+ @Override
+ protected JSONArray doInBackground(HttpUriRequest...params) {
+
+ // Performed on Background Thread
+
+ HttpUriRequest request = params[0];
+ HttpClient client = new DefaultHttpClient();
+
+ try {
+ // The UI Thread shouldn't be blocked long enough to do the reading in of the stream.
+ HttpResponse response = client.execute(request);
+
+// TODO handle bad response codes (such as 404, etc)
+
+ BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
+ StringBuilder builder = new StringBuilder();
+ for (String line = null; (line = reader.readLine()) != null; ) {
+ builder.append(line).append("\n");
+ }
+ JSONTokener tokener = new JSONTokener(builder.toString());
+ JSONArray json = new JSONArray(tokener);
+ return json;
+
+ } catch (Exception e) {
+ // TODO handle different exception cases
+ Log.e(TAG,e.toString());
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+ @Override
+ protected void onPostExecute(JSONArray json) {
+ // Done on UI Thread
+ if(json != null) {
+ taskHandler.taskSuccessful(json);
+ } else {
+ taskHandler.taskFailed();
+ }
+ }
+
+ public static interface HttpTaskHandler {
+ void taskSuccessful(JSONArray json);
+ void taskFailed();
+ }
+
+ HttpTaskHandler taskHandler;
+
+ public void setTaskHandler(HttpTaskHandler taskHandler) {
+ this.taskHandler = taskHandler;
+ }
+
+}
--- /dev/null
+++ b/scannrmobile/src/com/example/scannrmobile/ScannrMobile.java
@@ -1,1 +1,66 @@
+package com.example.scannrmobile;
+import android.app.Activity;
+import android.os.Bundle;
+import android.util.Log;
+import android.widget.ArrayAdapter;
+import android.widget.ListView;
+import com.example.scannrmobile.HttpTask.HttpTaskHandler;
+import org.apache.http.client.methods.HttpGet;
+import org.json.JSONArray;
+import org.json.JSONException;
+
+import java.util.ArrayList;
+
+public class ScannrMobile extends Activity {
+ private ListView mainListView ;
+ private ArrayAdapter<String> listAdapter ;
+ private ScannrMobile view;
+ /**
+ * Called when the activity is first created.
+ */
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.main);
+ mainListView = (ListView) findViewById( R.id.mainListView );
+ view = this;
+ //DownloadWebPageTask task = new DownloadWebPageTask();
+ //task.execute(new String[] { "http://www.vogella.com" });
+ HttpTask task = new HttpTask();
+
+ task.setTaskHandler(new HttpTaskHandler()
+ {
+ public void taskSuccessful(JSONArray nodes) {
+ // Just put the JSONObjects into an array list so we can use a ListAdapter
+ ArrayList<String> data = new ArrayList();
+ // Ingest Data
+ try {
+
+ Log.d(this.getClass().getName(), "Total Nodes: "+nodes.length());
+ for (int i = 0; i < nodes.length(); i++ ) {
+ data.add(nodes.getJSONObject(i).toString() );
+ }
+ // TODO update the list
+ } catch (JSONException j){
+ Log.e(this.getClass().getName(), j.getMessage());
+ }
+ // Create ArrayAdapter using the planet list.
+ listAdapter = new ArrayAdapter<String>(view, R.layout.simplerow, R.id.rowTextView, data);
+
+ // Set the ArrayAdapter as the ListView's adapter.
+ mainListView.setAdapter( listAdapter );
+ }
+
+ public void taskFailed() {
+ // handler failure (e.g network not available etc.)
+ Log.e(this.getClass().getName(),"Task Failed");
+ }
+ });
+ task.execute(new HttpGet("http://192.168.1.113/~maxious/scannr/calls.json.php?action=data"));
+ }
+
+
+}
+
+
--- a/snd.py
+++ b/snd.py
@@ -1,23 +1,24 @@
-""" Record a few seconds of audio and save to a WAVE file.
+""" Record a few seconds of audio and save to a WAVE file.
Based on http://stackoverflow.com/questions/892199/detect-record-audio-in-python/6743593#6743593
"""
import pyaudio
import wave
import sys
-import audioop # http://docs.python.org/library/audioop
-from os.path import exists
from array import array
from struct import unpack, pack
-import threading
from pydispatch import dispatcher
-CHANNELS = 1
THRESHOLD = 500
CHUNK_SIZE = 1024
FORMAT = pyaudio.paInt16
RATE = 44100
-MAX_SILENT = 30
+if sys.platform.startswith('darwin'):
+ CHANNELS = 2
+elif sys.platform.startswith('win32'):
+ CHANNELS = 1
+
+MAX_SILENT = 80
def is_silent(L):
"Returns `True` if below the 'silent' threshold"
@@ -25,24 +26,27 @@
"print max(L) < THRESHOLD"
return max(L) < THRESHOLD
+
def normalize(L):
"Average the volume out"
MAXIMUM = 16384
- times = float(MAXIMUM)/max(abs(i) for i in L)
+ times = float(MAXIMUM) / max(abs(i) for i in L)
LRtn = array('h')
for i in L:
- LRtn.append(int(i*times))
+ LRtn.append(int(i * times))
return LRtn
+
def trim(L):
"Trim the blank spots at the start and end"
+
def _trim(L):
snd_started = False
LRtn = array('h')
for i in L:
- if not snd_started and abs(i)>THRESHOLD:
+ if not snd_started and abs(i) > THRESHOLD:
snd_started = True
LRtn.append(i)
@@ -59,27 +63,29 @@
L.reverse()
return L
+
def add_silence(L, seconds):
"Add silence to the start and end of `L` of length `seconds` (float)"
- LRtn = array('h', [0 for i in xrange(int(seconds*RATE))])
+ LRtn = array('h', [0 for i in xrange(int(seconds * RATE))])
LRtn.extend(L)
- LRtn.extend([0 for i in xrange(int(seconds*RATE))])
+ LRtn.extend([0 for i in xrange(int(seconds * RATE))])
return LRtn
+
def record():
"""
- Record a word or words from the microphone and
+ Record a word or words from the microphone and
return the data as an array of signed shorts.
- Normalizes the audio, trims silence from the
- start and end, and pads with 0.5 seconds of
- blank sound to make sure VLC et al can play
+ Normalizes the audio, trims silence from the
+ start and end, and pads with 0.5 seconds of
+ blank sound to make sure VLC et al can play
it without getting chopped off.
"""
p = pyaudio.PyAudio()
- stream = p.open(format=FORMAT, channels=1, rate=RATE,
- input=True, output=True,
- frames_per_buffer=CHUNK_SIZE)
+ stream = p.open(format=FORMAT, channels=CHANNELS, rate=RATE,
+ input=True,
+ frames_per_buffer=CHUNK_SIZE)
num_silent = 0
snd_started = False
@@ -87,8 +93,13 @@
LRtn = array('h')
while 1:
- data = stream.read(CHUNK_SIZE)
- L = unpack('<' + ('h'*(len(data)/2)), data) # little endian, signed short
+ try:
+ data = stream.read(CHUNK_SIZE)
+ except IOError as ex:
+ if ex[1] != pyaudio.paInputOverflowed:
+ raise
+ data = '\x00' * CHUNK_SIZE
+ L = unpack('<' + ('h' * (len(data) / 2)), data) # little endian, signed short
L = array('h', L)
silent = is_silent(L)
@@ -96,11 +107,13 @@
if silent and snd_started:
num_silent += 1
- print num_silent
+ #print num_silent
elif not silent and not snd_started:
- dispatcher.send( signal='SND_STARTED')
+ dispatcher.send(signal='SND_STARTED')
snd_started = True
print snd_started
+ if snd_started and not silent:
+ num_silent = 0
if snd_started:
LRtn.extend(L)
if snd_started and num_silent > MAX_SILENT:
@@ -116,25 +129,24 @@
LRtn = add_silence(LRtn, 0.5)
return sample_width, LRtn
+
def record_to_file(path):
"Records from the microphone and outputs the resulting data to `path`"
sample_width, data = record()
- data = pack('<' + ('h'*len(data)), *data)
+ data = pack('<' + ('h' * len(data)), *data)
wf = wave.open(path, 'wb')
- wf.setnchannels(1)
+ wf.setnchannels(CHANNELS)
wf.setsampwidth(sample_width)
wf.setframerate(RATE)
wf.writeframes(data)
wf.close()
- print("done - result written to "+path)
+ print("done - result written to " + path)
del data
+if __name__ == '__main__':
+ filename = 'demo.wav'
+ record_to_file(filename)
+ print("done - result written to " + filename)
-
-if __name__ == '__main__':
- filename = 'demo.wav'
- record_to_file(filename)
- print("done - result written to "+filename)
-
--- /dev/null
+++ b/test.py
@@ -1,1 +1,47 @@
+"""PyAudio example: Record a few seconds of audio and save to a WAVE file."""
+import pyaudio
+import wave
+
+CHUNK = 1024
+FORMAT = pyaudio.paInt16
+CHANNELS = 2
+RATE = 44100
+RECORD_SECONDS = 5
+WAVE_OUTPUT_FILENAME = "output.wav"
+
+p = pyaudio.PyAudio()
+device_idx = 0;
+for i in range (0, p.get_device_count()):
+ print(p.get_device_info_by_index(i))
+ if p.get_device_info_by_index(i)['name'] == 'Built-in Input':
+ device_idx = i
+ print i
+stream = p.open(format=FORMAT,
+ channels=CHANNELS,
+ rate=RATE,
+ input=True,
+ input_device_index=device_idx,
+ frames_per_buffer=CHUNK)
+
+print("* recording")
+
+frames = []
+
+for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
+ data = stream.read(CHUNK)
+ frames.append(data)
+
+print("* done recording")
+
+stream.stop_stream()
+stream.close()
+p.terminate()
+
+wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
+wf.setnchannels(CHANNELS)
+wf.setsampwidth(p.get_sample_size(FORMAT))
+wf.setframerate(RATE)
+wf.writeframes(b''.join(frames))
+wf.close()
+
--- /dev/null
+++ b/test2.py
@@ -1,1 +1,127 @@
+from os.path import exists
+from array import array
+from struct import unpack, pack
+import pyaudio
+import wave
+
+THRESHOLD = 500
+CHUNK_SIZE = 1024
+FORMAT = pyaudio.paInt16
+RATE = 44100
+
+def is_silent(L):
+ "Returns `True` if below the 'silent' threshold"
+ return max(L) < THRESHOLD
+
+
+def normalize(L):
+ "Average the volume out"
+ MAXIMUM = 16384
+ times = float(MAXIMUM) / max(abs(i) for i in L)
+
+ LRtn = array('h')
+ for i in L:
+ LRtn.append(int(i * times))
+ return LRtn
+
+
+def trim(L):
+ "Trim the blank spots at the start and end"
+
+ def _trim(L):
+ snd_started = False
+ LRtn = array('h')
+
+ for i in L:
+ if not snd_started and abs(i) > THRESHOLD:
+ snd_started = True
+ LRtn.append(i)
+
+ elif snd_started:
+ LRtn.append(i)
+ return LRtn
+
+ # Trim to the left
+ L = _trim(L)
+
+ # Trim to the right
+ L.reverse()
+ L = _trim(L)
+ L.reverse()
+ return L
+
+
+def add_silence(L, seconds):
+ "Add silence to the start and end of `L` of length `seconds` (float)"
+ LRtn = array('h', [0 for i in xrange(int(seconds * RATE))])
+ LRtn.extend(L)
+ LRtn.extend([0 for i in xrange(int(seconds * RATE))])
+ return LRtn
+
+
+def record():
+ """
+ Record a word or words from the microphone and
+ return the data as an array of signed shorts.
+
+ Normalizes the audio, trims silence from the
+ start and end, and pads with 0.5 seconds of
+ blank sound to make sure VLC et al can play
+ it without getting chopped off.
+ """
+ p = pyaudio.PyAudio()
+ stream = p.open(format=FORMAT, channels=2, rate=RATE,
+ input=True,
+ frames_per_buffer=CHUNK_SIZE)
+
+ num_silent = 0
+ snd_started = False
+
+ LRtn = array('h')
+
+ while 1:
+ data = stream.read(CHUNK_SIZE)
+ L = unpack('<' + ('h' * (len(data) / 2)), data) # little endian, signed short
+ L = array('h', L)
+ LRtn.extend(L)
+
+ silent = is_silent(L)
+ #print silent, num_silent, L[:10]
+
+ if silent and snd_started:
+ num_silent += 1
+ elif not silent and not snd_started:
+ snd_started = True
+
+ if snd_started and num_silent > 30:
+ break
+
+ sample_width = p.get_sample_size(FORMAT)
+ stream.stop_stream()
+ stream.close()
+ p.terminate()
+
+ LRtn = normalize(LRtn)
+ LRtn = trim(LRtn)
+ LRtn = add_silence(LRtn, 0.5)
+ return sample_width, LRtn
+
+
+def record_to_file(path):
+ "Records from the microphone and outputs the resulting data to `path`"
+ sample_width, data = record()
+ data = pack('<' + ('h' * len(data)), *data)
+
+ wf = wave.open(path, 'wb')
+ wf.setnchannels(2)
+ wf.setsampwidth(sample_width)
+ wf.setframerate(RATE)
+ wf.writeframes(data)
+ wf.close()
+
+if __name__ == '__main__':
+ print("please speak a word into the microphone")
+ record_to_file('demo.wav')
+ print("done - result written to demo.wav")
+
--- /dev/null
+++ b/tgid.csv
@@ -1,1 +1,787 @@
+Decimal,Subfleet,Alpha Tag,Mode,Description,Service Tag,Category,"insert into tgids (tgid,alpha_tag) (SELECT distinct ""tgid"", ""tgname"" as alpha_tag
+FROM ""recordings"" order by tgid)"
+10000,,GL 1,D,GL 1,Fire-Tac,Rural Fire Service RFS,
+10001,,GL 2,D,GL 2,Fire-Tac,Rural Fire Service RFS,
+10002,,GL 3,D,GL 3,Fire-Tac,Rural Fire Service RFS,
+10003,,GL 4,D,GL 4,Fire-Tac,Rural Fire Service RFS,
+10004,,GL 5,D,GL 5,Fire-Tac,Rural Fire Service RFS,
+10005,,GL 6,D,GL 6,Fire-Tac,Rural Fire Service RFS,
+10006,,GL 7,D,GL 7,Fire-Tac,Rural Fire Service RFS,
+10007,,GL 8,D,GL 8,Fire-Tac,Rural Fire Service RFS,
+10008,,GL 9,D,GL 9,Fire-Tac,Rural Fire Service RFS,
+10009,,GL 10,D,GL 10,Fire-Tac,Rural Fire Service RFS,
+10010,,ESO 1,D,ESO 1,Fire-Tac,Rural Fire Service RFS,
+10011,,ESO 2,D,ESO 2,Fire-Tac,Rural Fire Service RFS,
+10012,,ESO 3,D,ESO 3,Fire-Tac,Rural Fire Service RFS,
+10013,,ESO 4,D,ESO 4,Fire-Tac,Rural Fire Service RFS,
+10014,,ESO 5,D,ESO 5,Fire-Tac,Rural Fire Service RFS,
+10015,,ESO 6,D,ESO 6,Fire-Tac,Rural Fire Service RFS,
+10016,,ESO 7,D,ESO 7,Fire-Tac,Rural Fire Service RFS,
+10017,,ESO 8,D,ESO 8,Fire-Tac,Rural Fire Service RFS,
+10018,,ESO 9,D,ESO 9,Fire-Tac,Rural Fire Service RFS,
+10019,,ESO 10,D,ESO 10,Fire-Tac,Rural Fire Service RFS,
+10020,,ESO 11,D,ESO 11,Fire-Tac,Rural Fire Service RFS,
+10021,,ESO 12,D,ESO 12,Fire-Tac,Rural Fire Service RFS,
+10022,,ESO 13,D,ESO 13,Fire-Tac,Rural Fire Service RFS,
+10023,,ESO 14,D,ESO 14,Fire-Tac,Rural Fire Service RFS,
+10024,,ESO 15,D,ESO 15,Fire-Tac,Rural Fire Service RFS,
+10025,,ESO 16,D,ESO 16,Fire-Tac,Rural Fire Service RFS,
+10026,,ESO 17,D,ESO 17,Fire-Tac,Rural Fire Service RFS,
+10027,,ESO 18,D,ESO 18,Fire-Tac,Rural Fire Service RFS,
+10028,,ESO 19,D,ESO 19,Fire-Tac,Rural Fire Service RFS,
+10029,,ESO 20,D,ESO 20,Fire-Tac,Rural Fire Service RFS,
+10030,,AVIATN1,D,RFS GD01 AVIATN1,Fire-Tac,Rural Fire Service RFS,
+10031,,AVIATN2,D,RFS GD02 AVIATN2,Fire-Tac,Rural Fire Service RFS,
+10032,,AVIATN3,D,RFS GD03 AVIATN3,Fire-Tac,Rural Fire Service RFS,
+10033,,AVIATN4,D,RFS GD04 AVIATN4,Fire-Tac,Rural Fire Service RFS,
+10034,,AVIATN5,D,RFS GD05 AVIATN5,Fire-Tac,Rural Fire Service RFS,
+10035,,AVIATN6,D,RFS GD06 AVIATN6,Fire-Tac,Rural Fire Service RFS,
+10036,,BLKM HL,D,RFS GD08 BLKM HL,Fire-Tac,Rural Fire Service RFS,
+10037,,BL MTNS,D,RFS GD10 BL MTNS,Fire-Tac,Rural Fire Service RFS,
+10038,,CISS,D,RFS GD14 CISS,Fire-Tac,Rural Fire Service RFS,
+10039,,COM ED1,D,RFS GD16 COM ED1,Fire-Tac,Rural Fire Service RFS,
+10040,,COM ED2,D,RFS GD17 COM ED2,Fire-Tac,Rural Fire Service RFS,
+10041,,COM ED3,D,RFS GD18 COM ED3,Fire-Tac,Rural Fire Service RFS,
+10042,,CMBRLND,D,RFS GD20 CMBRLND,Fire-Tac,Rural Fire Service RFS,
+10043,,EAST OP,D,RFS GD21 EAST OP,Fire-Tac,Rural Fire Service RFS,
+10044,,EXEC OP,D,RFS GD22 EXEC OP,Fire-Tac,Rural Fire Service RFS,
+10045,,FIU 1,D,RFS GD26 FIU 1,Fire-Tac,Rural Fire Service RFS,
+10046,,FIU 2,D,RFS GD27 FIU 2,Fire-Tac,Rural Fire Service RFS,
+10047,,GOSFORD,D,RFS GD28 GOSFORD,Fire-Tac,Rural Fire Service RFS,
+10048,,HAWKESB,D,RFS GD29 HAWKESB,Fire-Tac,Rural Fire Service RFS,
+10049,,HORNSBY,D,RFS GD30 HORNSBY,Fire-Tac,Rural Fire Service RFS,
+10050,,LDS 1,D,RFS GD38 LDS 1,Fire-Tac,Rural Fire Service RFS,
+10051,,LDS 2,D,RFS GD39 LDS 2,Fire-Tac,Rural Fire Service RFS,
+10052,,MCARTHR,D,RFS GD42 MCARTHR,Fire-Tac,Rural Fire Service RFS,
+10053,,MEDIA 1,D,RFS GD44 MEDIA 1,Fire-Tac,Rural Fire Service RFS,
+10054,,MEDIA 2,D,RFS GD45 MEDIA 2,Fire-Tac,Rural Fire Service RFS,
+10055,,OP COM1,D,RFS GD58 OP COM1,Fire-Tac,Rural Fire Service RFS,
+10056,,OP COM2,D,RFS GD59 OP COM2,Fire-Tac,Rural Fire Service RFS,
+10057,,OP COM3,D,RFS GD60 OP COM3,Fire-Tac,Rural Fire Service RFS,
+10058,,OPS1,D,RFS GD62 OPS1,Fire-Tac,Rural Fire Service RFS,
+10059,,OPS2,D,RFS GD63 OPS2,Fire-Tac,Rural Fire Service RFS,
+10060,,OPS3,D,RFS GD64 OPS3,Fire-Tac,Rural Fire Service RFS,
+10061,,OPS4,D,RFS GD65 OPS4,Fire-Tac,Rural Fire Service RFS,
+10062,,OPS5,D,RFS GD66 OPS5,Fire-Tac,Rural Fire Service RFS,
+10063,,OPS6,D,RFS GD67 OPS6,Fire-Tac,Rural Fire Service RFS,
+10064,,OPS7,D,RFS GD68 OPS7,Fire-Tac,Rural Fire Service RFS,
+10065,,OPS8,D,RFS GD69 OPS8,Fire-Tac,Rural Fire Service RFS,
+10066,,OPS9,D,RFS GD70 OPS9,Fire-Tac,Rural Fire Service RFS,
+10067,,OPS10,D,RFS GD71 OPS10,Fire-Tac,Rural Fire Service RFS,
+10068,,OPS11,D,RFS GD72 OPS11,Fire-Tac,Rural Fire Service RFS,
+10069,,OPS12,D,RFS GD73 OPS12,Fire-Tac,Rural Fire Service RFS,
+10070,,OPS13,D,RFS GD74 OPS13,Fire-Tac,Rural Fire Service RFS,
+10071,,OPS14,D,RFS GD75 OPS14,Fire-Tac,Rural Fire Service RFS,
+10072,,OPS15,D,RFS GD76 OPS15,Fire-Tac,Rural Fire Service RFS,
+10073,,RGN EST,D,RFS GD77 RGN EST,Fire-Tac,Rural Fire Service RFS,
+10074,,STATEOP,D,RFS GD87 STATEOP,Fire-Tac,Rural Fire Service RFS,
+10075,,STHRLND,D,RFS GD88 STHRLND,Fire-Tac,Rural Fire Service RFS,
+10076,,WARINGH,D,RFS GD91 WARINGH,Fire-Tac,Rural Fire Service RFS,
+10077,,WOLONDL,D,RFS GD94 WOLONDL,Fire-Tac,Rural Fire Service RFS,
+10101,,SYD 1,D,SYD 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10102,,SYD 2,D,SYD 2,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10103,,SYD 3,D,SYD 3,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10104,,SYD 4,D,SYD 4,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10105,,SYD 6,D,SYD 6,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10106,,SYD 7,D,SYD 7,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10107,,SYD 8,D,SYD 8,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10108,,SYD 9,D,SYD 9,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10109,,SYD 10,D,SYD 10,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10110,,SYD 11,D,SYD 11,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10111,,SYD 12,D,SYD 12,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10112,,New 1,D,New 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10113,,New 2,D,New 2,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10114,,Gos 1,D,Gos 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10115,,Gos 2,D,Gos 2,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10117,,HAST 1,D,HAST 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10118,,SUMLND1,D,SUMLND1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10119,,PEEL 1,D,PEEL 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10120,,WOLL 1,D,WOLL 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10121,,WOLL 2,D,WOLL 2,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10122,,SHIGH1,D,SHIGH1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10123,,GOULB1,D,GOULB1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10124,,MONARO1,D,MONARO1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10125,,SCST 1,D,SCST 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10126,,ACTNSW,D,ACTNSW,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10127,,GRIFFTH,D,GRIFFTH,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10128,,MURRAY1,D,MURRAY1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10129,,CWEST1,D,CWEST1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10130,,BLU MT1,D,BLU MT1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10131,,BLU MT2,D,BLU MT2,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10132,,BOGAN 1,D,BOGAN 1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10133,,LACHLN1,D,LACHLN1,Fire Dispatch,Fire and Rescue New South Wales FRNSW,
+10134,,Ops 1,D,Special Operations 1,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10135,,Ops 2,D,Special Operations 2,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10136,,Ops 3,D,Special Operations 3,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10137,,Ops 4,D,Special Operations 4,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10138,,Ops 5,D,Special Operations 5,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10139,,Ops 6,D,Special Operations 6,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10144,,Ops 11,D,Special Operations 11,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10145,,Ops 12,D,Special Operations 12,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10146,,Ops 13,D,Special Operations 13,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10147,,Ops 14,D,Special Operations 14,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10148,,Ops 15,D,Special Operations 15,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10149,,Ops 16,D,Special Operations 16,Fire-Tac,Fire and Rescue New South Wales FRNSW,
+10154,,Comms,D,Communications,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10155,,Property,D,Property,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10156,,Fleet,D,Fleet,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10157,,Admin,D,Administration,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10158,,Mech,D,Mechanics,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10159,,Eng,D,Engineers,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10160,,Op Comms,D,Operation Communications,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10161,,Hazmat,D,BAHazmat,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10162,,Bushfire,D,Bushfire,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10163,,FIU,D,Fire Investigation Unit,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10164,,Fire Prev,D,Fire Prevention,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10165,,Train,D,Training,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10166,,Rescue,D,Rescue,Fire-Talk,Fire and Rescue New South Wales FRNSW,
+10201,,SNTAC1,D,SES 307SNTAC1,EMS-Tac,State Emergency Service SES,
+10202,,SNTAC2,D,SES 308SNTAC2,EMS-Tac,State Emergency Service SES,
+10203,,SNTAC3,D,SES 309SNTAC3,EMS-Tac,State Emergency Service SES,
+10204,,SNTAC4,D,SES 310SNTAC4,EMS-Tac,State Emergency Service SES,
+10205,,SNTAC5,D,SES 311SNTAC5,EMS-Tac,State Emergency Service SES,
+10206,,SNTAC6,D,SES 312SNTAC6,EMS-Tac,State Emergency Service SES,
+10207,,SNSTRAT,D,SES 314SNSTRAT,EMS-Tac,State Emergency Service SES,
+10208,,SSTAC1,D,SES 316SSTAC1,EMS-Tac,State Emergency Service SES,
+10209,,SSTAC2,D,SES 317SSTAC2,EMS-Tac,State Emergency Service SES,
+10210,,SSTAC3,D,SES 318SSTAC3,EMS-Tac,State Emergency Service SES,
+10211,,SSTAC4,D,SES 319SSTAC4,EMS-Tac,State Emergency Service SES,
+10212,,SSTAC5,D,SES 320SSTAC5,EMS-Tac,State Emergency Service SES,
+10213,,SSTAC6,D,SES 321SSTAC6,EMS-Tac,State Emergency Service SES,
+10214,,SSSTRAT,D,SES 323SSSTRAT,EMS-Tac,State Emergency Service SES,
+10215,,SWTAC1,D,SES 324SWTAC1,EMS-Tac,State Emergency Service SES,
+10216,,SWTAC2,D,SES 325SWTAC2,EMS-Tac,State Emergency Service SES,
+10217,,SWTAC3,D,SES 326SWTAC3,EMS-Tac,State Emergency Service SES,
+10218,,SWTAC4,D,SES 327SWTAC4,EMS-Tac,State Emergency Service SES,
+10219,,SWTAC5,D,SES 328SWTAC5,EMS-Tac,State Emergency Service SES,
+10220,,SWTAC6,D,SES 329SWTAC6,EMS-Tac,State Emergency Service SES,
+10221,,SWSTRAT,D,SES 331SWSTRAT,EMS-Tac,State Emergency Service SES,
+10222,,SWRCR,D,SES 332SWRCR,EMS-Tac,State Emergency Service SES,
+10223,,HNCNT1,D,SES 340HNCNT1,EMS-Tac,State Emergency Service SES,
+10224,,HNCNT2,D,SES 341HNCNT2,EMS-Tac,State Emergency Service SES,
+10225,,HNCNT3,D,SES 342HNCNT3,EMS-Tac,State Emergency Service SES,
+10226,,HNCNT4,D,SES 343HNCNT4,EMS-Tac,State Emergency Service SES,
+10227,,HNCNT5,D,SES 344HNCNT5,EMS-Tac,State Emergency Service SES,
+10228,,TRNSPRT,D,SES 347TRNSPRT,EMS-Tac,State Emergency Service SES,
+10229,,COORD,D,SES 348COORD,EMS-Tac,State Emergency Service SES,
+10230,,TSKFCE1,D,SES 349TSKFCE1,EMS-Tac,State Emergency Service SES,
+10231,,TSKFCE2,D,SES 350TSKFCE2,EMS-Tac,State Emergency Service SES,
+10232,,TSKFCE3,D,SES 351TSKFCE3,EMS-Tac,State Emergency Service SES,
+10233,,TSKFCE4,D,SES 352TSKFCE4,EMS-Tac,State Emergency Service SES,
+10234,,SOPS1,D,SES 353SOPS1,EMS-Tac,State Emergency Service SES,
+10235,,SOPS2,D,SES 354SOPS2,EMS-Tac,State Emergency Service SES,
+10236,,SOPS3,D,SES 355SOPS3,EMS-Tac,State Emergency Service SES,
+10237,,SOPS4,D,SES 356SOPS4,EMS-Tac,State Emergency Service SES,
+10238,,SOPS5,D,SES 357SOPS5,EMS-Tac,State Emergency Service SES,
+10239,,SOPS6,D,SES 358SOPS6,EMS-Tac,State Emergency Service SES,
+10240,,SOPS7,D,SES 359SOPS7,EMS-Tac,State Emergency Service SES,
+10241,,SOPS8,D,SES 360SOPS8,EMS-Tac,State Emergency Service SES,
+10242,,SOPS9,D,SES 361SOPS9,EMS-Tac,State Emergency Service SES,
+10243,,SOPS10,D,SES 362SOPS10,EMS-Tac,State Emergency Service SES,
+10244,,SOPS11,D,SES 363SOPS11,EMS-Tac,State Emergency Service SES,
+10245,,SOPS12,D,SES 364SOPS12,EMS-Tac,State Emergency Service SES,
+10246,,COMMS1,D,SES 367COMMS1,EMS-Tac,State Emergency Service SES,
+10247,,DOCSLO,D,SES 345DOCSLO,EMS-Tac,State Emergency Service SES,
+10248,,DOCSST,D,SES 346DOCSST,EMS-Tac,State Emergency Service SES,
+10301,,MRU,D,Administration 1 State Ops MRU,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10302,,Admin 2,D,Administration 2,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10303,,Admin 3,D,Administration 3,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10304,,Admin 4,D,Administration 4,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10305,,Admin 5,D,Administration 5,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10306,,NETS,D,Administration 6 NETS,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10307,,7 PUB HLTH,,Administration Public Health Service Liaison,,Ambulance Service of New South Wales ASNSW,
+10308,,8 GWEST AH,,Administration Greater West AHS,,Ambulance Service of New South Wales ASNSW,
+10309,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10310,,10 NSCC AH,,Administration North SydneyCentral Coast AHS,,Ambulance Service of New South Wales ASNSW,
+10311,,11 SW AH,,Administration Sydney West AHS,,Ambulance Service of New South Wales ASNSW,
+10312,,12 SSW AH,,Administration Sydney South West AHS,,Ambulance Service of New South Wales ASNSW,
+10313,,13 SESI AH,,Administration South Eastern SydneyIllawarra AHS,,Ambulance Service of New South Wales ASNSW,
+10314,,14 AH INCDT,,Administration AHS Incident 1,,Ambulance Service of New South Wales ASNSW,
+10315,,15 AH INCDT,,Administration AHS Incident 2,,Ambulance Service of New South Wales ASNSW,
+10316,,16 AH INCDT,,Administration AHS Incident 3,,Ambulance Service of New South Wales ASNSW,
+10317,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10318,,18 MEDI 2,,Administration Medical 2,,Ambulance Service of New South Wales ASNSW,
+10319,,PTO Ops 1,D,Patient Transport,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10320,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10321,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10322,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10323,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10324,,PTO OPS 6,,Patient Transport Operations 6,,Ambulance Service of New South Wales ASNSW,
+10325,,Syd North,D,Sydney North,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10326,,Syd South,D,Sydney South,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10327,,Syd East,D,Sydney East,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10328,,Syd West,D,Sydney West,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10329,,Syd SW,D,Sydney SW,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10330,,Syd Outer,D,Sydney Outer SW,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10331,,Syd Rural,D,Sydney Rural West Outer WestBlue Mts,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+10332,,10 ECP 1,,Sydney Extended Care Paramedic 1,,Ambulance Service of New South Wales ASNSW,
+10333,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10334,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10335,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10336,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10337,,15 INCDNT 4,,Sydney Incident 4,,Ambulance Service of New South Wales ASNSW,
+10338,,16 INCDNT 5,,Sydney Incident 5,,Ambulance Service of New South Wales ASNSW,
+10339,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10340,,18 INCDNT 7,,Sydney Incident 7,,Ambulance Service of New South Wales ASNSW,
+10341,,Sports,D,Sports,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10342,,Workshop,D,Workshops,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10343,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10344,,Sth Hosps,D,South Hospitals,Hospital,Ambulance Service of New South Wales ASNSW,
+10345,,ASNSW,D,ASNSW,EMS-Talk,Ambulance Service of New South Wales ASNSW,
+10346,,West Hosp,D,West Hospitals,Hospital,Ambulance Service of New South Wales ASNSW,
+10347,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10348,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10349,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10350,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10351,,FAULT REPORT,,FAULT REPORT,,Ambulance Service of New South Wales ASNSW,
+10352,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10353,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10354,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10355,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10356,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10357,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+10358,,IT SUPPORT,,IT SUPPORT,,Ambulance Service of New South Wales ASNSW,
+10381,,Net 1,D,Hatzolah Net 1,EMS Dispatch,Hatzolah Ambulance Service,
+10382,,Net 2,D,Hatzolah Net 2,EMS Dispatch,Hatzolah Ambulance Service,
+10383,,Net 3,D,Hatzolah Net 3,EMS Dispatch,Hatzolah Ambulance Service,
+10384,,Net 4,D,Hatzolah Net 4,EMS Dispatch,Hatzolah Ambulance Service,
+10385,,Net 5,D,Hatzolah Net 5,EMS Dispatch,Hatzolah Ambulance Service,
+10386,,Net 6,D,Hatzolah Net 6,EMS Dispatch,Hatzolah Ambulance Service,
+10387,,Net 7,D,Hatzolah Net 7,EMS Dispatch,Hatzolah Ambulance Service,
+10388,,Net 8,D,Hatzolah Net 8,EMS Dispatch,Hatzolah Ambulance Service,
+10389,,Net 9,D,Hatzolah Net 9,EMS Dispatch,Hatzolah Ambulance Service,
+10390,,Net 10,D,Hatzolah Net 10,EMS Dispatch,Hatzolah Ambulance Service,
+10402,,Transport,D,Corrective Services Transports,Corrections,Corrective Services,
+10403,,VG visits,D,Corrective Services VG visits,Corrections,Corrective Services,
+10404,,VK visits,D,Corrective Services VK visits,Corrections,Corrective Services,
+10405,,NC visits,D,Corrective Services NC visits,Corrections,Corrective Services,
+10406,,WG visits,D,Corrective Services WG visits,Corrections,Corrective Services,
+10407,,unk,D,Corrective Services,Corrections,Corrective Services,
+10408,,unk,D,Corrective Services,Corrections,Corrective Services,
+10409,,Ext Escorts,D,Corrective Service External escorts,Corrections,Corrective Services,
+10411,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10413,,unk,D,Corrective Services,Corrections,Corrective Services,
+10414,,Secure Unit,D,Corrective Services Secure Unit,Corrections,Corrective Services,
+10415,,unk,D,Corrective Services,Corrections,Corrective Services,
+10419,,unk,D,Corrective Services,Corrections,Corrective Services,
+10421,,Projects,D,Corrective Services projects,Corrections,Corrective Services,
+10422,,unk,D,Corrective Services,Corrections,Corrective Services,
+10423,,unk,D,Corrective Services,Corrections,Corrective Services,
+10427,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10428,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10429,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10430,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10451,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10481,,unk,D,Corrective Services ,Corrections,Corrective Services,
+10502,,unk,D,Ausgrid ,Utilities,AusGrid,
+10503,,GH UG,D,AusGrid Gore Hill Underground,Utilities,AusGrid,
+10504,,GH OH,D,AusGrid Gore Hill Overhead,Utilities,AusGrid,
+10505,,Horn OH,D,AusGrid Hornsby Overhead,Utilities,AusGrid,
+10506,,Horn UG,D,AusGrid Hornsby Underground,Utilities,AusGrid,
+10507,,Nth Subs,D,AusGrid North Substations,Utilities,AusGrid,
+10508,,Nth Prot,D,AusGrid North Protection,Utilities,AusGrid,
+10509,,Nth DistOps,D,AusGrid North District Operators,Utilities,AusGrid,
+10510,,GH Street,D,AusGrid Gore Hill Street Lighting,Utilities,AusGrid,
+10511,,Nth Op,D,AusGrid North Operator,Utilities,AusGrid,
+10512,,Util 1,D,AusGrid Utility 1,Utilities,AusGrid,
+10513,,Nth EMSO 1,D,AusGrid North EMSO Data 1,Utilities,AusGrid,
+10514,,DY OH 1,D,AusGrid Dee Why Overhead 1,Utilities,AusGrid,
+10515,,DY OH 2,D,AusGrid Dee Why Overhead 2,Utilities,AusGrid,
+10516,,DY Op,D,AusGrid Dee Why Operator,Utilities,AusGrid,
+10517,,DY Subs,D,AusGrid Dee Why Substations,Utilities,AusGrid,
+10518,,Projects,D,AusGrid Projects and Contracts,Utilities,AusGrid,
+10519,,East Op,D,AusGrid East Operator,Utilities,AusGrid,
+10520,,Util 1,D,AusGrid Utility 1,Utilities,AusGrid,
+10521,,Util 2,D,AusGrid Utility 2,Utilities,AusGrid,
+10522,,East UG,D,AusGrid East Underground,Utilities,AusGrid,
+10523,,East OH,D,AusGrid East Overhead,Utilities,AusGrid,
+10524,,East Subs,D,AusGrid East Substations,Utilities,AusGrid,
+10525,,Asset Acc,D,AusGrid Asset Access,Utilities,AusGrid,
+10526,,East DistOps,D,AusGrid East District Operators,Utilities,AusGrid,
+10527,,East Prot,D,AusGrid East Protection,Utilities,AusGrid,
+10528,,CBD HV UG,D,AusGrid CBD High Voltage Underground,Utilities,AusGrid,
+10529,,PINC Ctrl,D,AusGrid PINC Network Operations Controller,Utilities,AusGrid,
+10530,,SO TPDR 1,D,AusGrid SO Transponder 1,Utilities,AusGrid,
+10531,,SO TODR 2,D,AusGrid SO Transponder 2,Utilities,AusGrid,
+10532,,Rad CMDR,D,AusGrid Radio Commander,Utilities,AusGrid,
+10533,,unk,D,Ausgrid ,Utilities,AusGrid,
+10534,,unk,D,Ausgrid ,Utilities,AusGrid,
+10535,,Sth OP,D,AusGrid South Operator,Utilities,AusGrid,
+10536,,IW OH,D,AusGrid Inner West Overhead,Utilities,AusGrid,
+10537,,HB UG,D,AusGrid Homebush Underground,Utilities,AusGrid,
+10538,,SW Train,D,AusGrid Silverwater Training Centre,Utilities,AusGrid,
+10539,,BT OH,D,AusGrid Bankstown Overhead,Utilities,AusGrid,
+10540,,BT Dist Op,D,AusGrid Bankstown District Operators,Utilities,AusGrid,
+10541,,Sth Dist Op,D,AusGrid South District Operators,Utilities,AusGrid,
+10542,,BT Op,D,AusGrid Bankstown Operator,Utilities,AusGrid,
+10543,,unk,D,Ausgrid ,Utilities,AusGrid,
+10544,,OAT OH,D,AusGrid Oatley Overhead,Utilities,AusGrid,
+10545,,Nth EMSO 1,D,AusGrid South EMSO Data 1,Utilities,AusGrid,
+10546,,unk,D,Ausgrid ,Utilities,AusGrid,
+10547,,unk,D,Ausgrid ,Utilities,AusGrid,
+10548,,Trans 1,D,AusGrid Transmission 1,Utilities,AusGrid,
+10549,,Trans 2,D,AusGrid Transmission 2,Utilities,AusGrid,
+10550,,unk,D,Ausgrid ,Utilities,AusGrid,
+10551,,unk,D,Ausgrid ,Utilities,AusGrid,
+10556,,Nth Op,D,AusGrid North Operator,Utilities,AusGrid,
+10557,,Sth Op,D,AusGrid South Operator,Utilities,AusGrid,
+10558,,East Op,D,AusGrid East Operator,Utilities,AusGrid,
+10559,,BT Op,D,AusGrid Bankstown Operator,Utilities,AusGrid,
+10560,,DY Op,D,AusGrid Dee Why Operator,Utilities,AusGrid,
+10561,,TeleCtrl,D,AusGrid TelecontrolFacilitiesDriver Training,Utilities,AusGrid,
+10562,,CIPIMS,D,AusGrid CIPIMS ControlDuty Managers,Utilities,AusGrid,
+10563,,INC Ops,D,AusGrid Incident Operations,Utilities,AusGrid,
+10564,,Subs Meter,D,AusGrid TCA Substations Metering,Utilities,AusGrid,
+10565,,Net Test 1,D,AusGrid TCA Network Test 1,Utilities,AusGrid,
+10566,,Net Test 2,D,AusGrid TCA Network Test 2,Utilities,AusGrid,
+10567,,Net Test 3,D,AusGrid TCA Network Test 3,Utilities,AusGrid,
+10568,,Net Test 4,D,AusGrid TCA Network Test 4,Utilities,AusGrid,
+10569,,Net Test 5,D,AusGrid TCA Network Test 5,Utilities,AusGrid,
+10570,,CASS Data1,D,AusGrid CASS Data 1,Utilities,AusGrid,
+10601,,Control 1,D,Integral Energy Control,Utilities,Integral Energy,
+10602,,Control 2,D,Integral Energy Control,Utilities,Integral Energy,
+10603,,Control 3,D,Integral Energy Control,Utilities,Integral Energy,
+10604,,Control 4,D,Integral Energy Control,Utilities,Integral Energy,
+10605,,Control 5,D,Integral Energy Control,Utilities,Integral Energy,
+10606,,Control 6,D,Integral Energy Control,Utilities,Integral Energy,
+10607,,Control 7,D,Integral Energy Control,Utilities,Integral Energy,
+10608,,Control 8,D,Integral Energy Control,Utilities,Integral Energy,
+10609,,Control 9,D,Integral Energy Control,Utilities,Integral Energy,
+10610,,Control 10,D,Integral Energy Consion Control,Utilities,Integral Energy,
+10611,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10612,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10613,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10614,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10615,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10616,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10617,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10618,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10619,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10620,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10621,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10622,,Katoomba,D,Integral Energy Katoomba,Utilities,Integral Energy,
+10623,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10624,,Penrith 1,D,Integral Energy Penrith 1,Utilities,Integral Energy,
+10625,,Penrith 2,D,Integral Energy Penrith 2,Utilities,Integral Energy,
+10626,,Windsor,D,Integral Energy Windsor,Utilities,Integral Energy,
+10627,,Kings Park 1,D,Integral Energy Kings Park 1,Utilities,Integral Energy,
+10628,,Kings Park 2,D,Integral Energy Kings Park 2,Utilities,Integral Energy,
+10629,,Parramatta 1,D,Integral Energy Parramatta 1,Utilities,Integral Energy,
+10630,,Parramatta 2,D,Integral Energy Parramatta 2,Utilities,Integral Energy,
+10631,,Hoxton 1,D,Integral Energy Hoxton 1,Utilities,Integral Energy,
+10632,,Hoxton 2,D,Integral Energy Hoxton 2,Utilities,Integral Energy,
+10633,,Narellan 1,D,Integral Energy Narellan 1,Utilities,Integral Energy,
+10634,,Narellan 2,D,Integral Energy Narellan 2,Utilities,Integral Energy,
+10635,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10636,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10637,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10638,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10639,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10640,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10641,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10642,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10643,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10644,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10645,,Techs,D,Integral Energy Radio techs and workshop,Utilities,Integral Energy,
+10649,,unk,D,Integral Energy ,Utilities,Integral Energy,
+10901,,Ch 1 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10905,,Ch 5 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10906,,Ch 6 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10907,,Ch 7 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10909,,Ch 9 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10910,,Ch 10 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10911,,Ch 11 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10914,,Ch 14 ,D,Sydney Ferries,Transportation,Sydney Ferries,
+10951,,Syd Region,D,NSW Maritime Sydney Region,Public Works,NSW Maritime,
+10952,,unk,D,NSW Maritime,Public Works,NSW Maritime,
+10953,,unk,D,NSW Maritime,Public Works,NSW Maritime,
+10954,,Hbr Clean,D,NSW Maritime Harbour Cleaning,Public Works,NSW Maritime,
+10955,,TG Alpha,D,NSW Maritime Special talkgroup Alpha,Public Works,NSW Maritime,
+10956,,TG Bravo,D,NSW Maritime Special talkgroup Bravo,Public Works,NSW Maritime,
+10957,,unk,D,NSW Maritime ,Public Works,NSW Maritime,
+10958,,unk,D,NSW Maritime,Public Works,NSW Maritime,
+10959,,unk,D,NSW Maritime,Public Works,NSW Maritime,
+10960,,unk,D,NSW Maritime,Public Works,NSW Maritime,
+10961,,unk,D,NSW Maritime,Public Works,NSW Maritime,
+11021,,City,D,Sheriff City,Law Dispatch,NSW Sheriff,
+11022,,West,D,Sheriff West,Law Dispatch,NSW Sheriff,
+11023,,North,D,Sheriff North,Law Dispatch,NSW Sheriff,
+11024,,Nth BC 1,D,Sheriff Nth Region Back Ch 1,Law Talk,NSW Sheriff,
+11025,,South,D,Sheriff South,Law Dispatch,NSW Sheriff,
+11026,,Sth BC 1,D,Sheriff Sth Region Back Ch 1,Law Talk,NSW Sheriff,
+11027,,Tac 1,D,Sheriff Tactical 1 ch17,Law Tac,NSW Sheriff,
+11028,,Tac 2,D,Sheriff Tactical 2,Law Tac,NSW Sheriff,
+11029,,Tac 3,D,Sheriff Tactical 3,Law Tac,NSW Sheriff,
+11030,,JTF Sec Ch,D,Sheriff Joint Task Fed Sec Channel,Interop,NSW Sheriff,
+11034,,unk,D,Sheriff ,Law Talk,NSW Sheriff,
+11071,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11072,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11073,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11074,,Depot WS,D,Sutherland Council depot workshop,Public Works,Sutherland Council,
+11075,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11076,,Rangers,D,Sutherland Council Rangers,Public Works,Sutherland Council,
+11077,,Back Chan,D,Sutherland Council Rangers back channel,Public Works,Sutherland Council,
+11078,,Work Crews,D,Sutherland Council Work crews,Public Works,Sutherland Council,
+11079,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11080,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11081,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11082,,unk,D,Sutherland Council,Public Works,Sutherland Council,
+11104,,SEC 1,D,Rail SEC 1,Railroad,Railways,
+11105,,SEC 2,D,Rail SEC 2,Railroad,Railways,
+11106,,SEC 3,D,Rail SEC 3,Railroad,Railways,
+11107,,SEC 4,D,Rail SEC 4,Railroad,Railways,
+11108,,PATROL 1,D,Rail PATROL 1,Railroad,Railways,
+11109,,PATROL 2,D,Rail PATROL 2,Railroad,Railways,
+11110,,PATROL 3,D,Rail PATROL 3,Railroad,Railways,
+11111,,CONSEC,D,Rail CONSEC,Railroad,Railways,
+11112,,SP OPS 1,D,Rail SP OPS 1,Railroad,Railways,
+11113,,SP OPS 2,D,Rail SP OPS 2,Railroad,Railways,
+11114,,SP OPS 3,D,Rail SP OPS 3,Railroad,Railways,
+11115,,REV PR 1,D,Rail REV PR 1,Railroad,Railways,
+11116,,REV PR 2,D,Rail REV PR 2,Railroad,Railways,
+11117,,REV PR 3,D,Rail REV PR 3,Railroad,Railways,
+11118,,REV PR 4,D,Rail REV PR 4,Railroad,Railways,
+11120,,BLACK 1,D,Rail BLACK 1,Railroad,Railways,
+11121,,BLACK 2,D,Rail BLACK 2,Railroad,Railways,
+11122,,CITY 1,D,Rail CITY 1,Railroad,Railways,
+11123,,CITY 2,D,Rail CITY 2,Railroad,Railways,
+11124,,GOSFORD 1,D,Rail GOSFORD 1,Railroad,Railways,
+11125,,GOSFORD 2,D,Rail GOSFORD 2,Railroad,Railways,
+11126,,NEWC 1,D,Rail NEWC 1,Railroad,Railways,
+11127,,NEWC 2,D,Rail NEWC 2,Railroad,Railways,
+11128,,SOUTH 1,D,Rail SOUTH 1,Railroad,Railways,
+11129,,SOUTH 2,D,Rail SOUTH 2,Railroad,Railways,
+11130,,ILLAW 1,D,Rail ILLAW 1,Railroad,Railways,
+11131,,ILLAWA 2,D,Rail ILLAWA 2,Railroad,Railways,
+11132,,SCOAST 1,D,Rail S COAST 1,Railroad,Railways,
+11136,,Chan 01,D,Rail CHAN 01,Railroad,Railways,
+11144,,Chan 9,D,Rail Channel 9,Railroad,Railways,
+11145,,Hunter Ops,D,Rail Hunter Operations,Railroad,Railways,
+11146,,Hunter Inc,D,Rail Hunter Incidents,Railroad,Railways,
+11147,,Chan 12,D,Rail CHAN 12,Railroad,Railways,
+11151,,ALL Chans,D,Rail All channels,Railroad,Railways,
+11158,,unk,D,Rail ,Railroad,Railways,
+11168,,SW Rail 1,D,Rail SW Rail 1,Railroad,Railways,
+11169,,SW Rail 2,D,Rail SW Rail 2,Railroad,Railways,
+11173,,Rail 6,D,Rail Rail 6,Railroad,Railways,
+11184,,unk,D,Rail ,Railroad,Railways,
+11200,,unk,D,Rail ,Railroad,Railways,
+11218,,CIVSTRUCT,D,Rail CIVSTRUCT,Railroad,Railways,
+11229,,Sig Cent3,D,Rail SIG CENT3,Railroad,Railways,
+11240,,WGong 1,D,Rail WGong 1,Railroad,Railways,
+11291,,Earth,D,Rail earth,Railroad,Railways,
+11294,,WONDABYNE,D,Rail WONDABYNE,Railroad,Railways,
+11316,,unk,D,Rail ,Railroad,Railways,
+11317,,unk,D,Rail ,Railroad,Railways,
+11320,,unk,D,Rail ,Railroad,Railways,
+11321,,unk,D,Rail ,Railroad,Railways,
+11322,,unk,D,Rail ,Railroad,Railways,
+11323,,unk,D,Rail ,Railroad,Railways,
+11324,,unk,D,Rail ,Railroad,Railways,
+11325,,unk,D,Rail ,Railroad,Railways,
+11350,,Row 1,D,Rail Row 1,Railroad,Railways,
+11471,,ABC 1,D,ABC News,Media,Australian Broadcasting Corporation ABC News,
+11472,,ABC 2,D,ABC News,Media,Australian Broadcasting Corporation ABC News,
+11473,,ABC 3,D,ABC News,Media,Australian Broadcasting Corporation ABC News,
+11474,,ABC 4,D,ABC News,Media,Australian Broadcasting Corporation ABC News,
+11475,,ABC 5,D,ABC News,Media,Australian Broadcasting Corporation ABC News,
+19801,,Rent 1,D,Short term rental,Business,GRN Short Term Rental,
+19802,,Rent 2,D,Short term rental,Business,GRN Short Term Rental,
+19803,,Rent 3,D,Short term rental,Business,GRN Short Term Rental,
+19804,,Rent 4,D,Short term rental,Business,GRN Short Term Rental,
+19805,,Rent 5,D,Short term rental,Business,GRN Short Term Rental,
+19901,,Test TG 1,D,Test talkgroup 1,Business,Test,
+19902,,Test TG 2,D,Test talkgroup 2,Business,Test,
+19903,,Test TG 3,D,Test talkgroup 3,Business,Test,
+19904,,Test TG 4,D,Test talkgroup 4,Business,Test,
+19905,,Test TG 5,D,Test talkgroup 5,Business,Test,
+19906,,Test TG 6,D,Test talkgroup 6,Business,Test,
+20000,,BAR DRL,D,RFS GD07 BAR DRL,Fire-Tac,Rural Fire Service RFS,
+20001,,CANBOLS,D,RFS GD11 CANBOLS,Fire-Tac,Rural Fire Service RFS,
+20002,,CSTLRGH,D,RFS GD12 CSTLRGH,Fire-Tac,Rural Fire Service RFS,
+20003,,CHIFLEY,D,RFS GD13 CHIFLEY,Fire-Tac,Rural Fire Service RFS,
+20004,,CLARNCE,D,RFS GD15 CLARNCE,Fire-Tac,Rural Fire Service RFS,
+20005,,CDGEGNG,D,RFS GD19 CDGEGNG,Fire-Tac,Rural Fire Service RFS,
+20006,,FARNHCO,D,RFS GD23 FARNHCO,Fire-Tac,Rural Fire Service RFS,
+20007,,FAR WST,D,RFS GD25 FAR WST,Fire-Tac,Rural Fire Service RFS,
+20008,,HUNTER,D,RFS GD32 HUNTER,Fire-Tac,Rural Fire Service RFS,
+20009,,HUNTVAL,D,RFS GD33 HUNTVAL,Fire-Tac,Rural Fire Service RFS,
+20010,,LITHGOW,D,RFS GD36 LITHGOW,Fire-Tac,Rural Fire Service RFS,
+20011,,LVPL RG,D,RFS GD37 LVPL RG,Fire-Tac,Rural Fire Service RFS,
+20012,,LOWNHCO,D,RFS GD40 LOWNHCO,Fire-Tac,Rural Fire Service RFS,
+20013,,MANNING,D,RFS GD43 MANNING,Fire-Tac,Rural Fire Service RFS,
+20014,,MD LACH,D,RFS GD47 MD LACH,Fire-Tac,Rural Fire Service RFS,
+20015,,MIDNHCO,D,RFS GD49 MIDNHCO,Fire-Tac,Rural Fire Service RFS,
+20016,,NMGWYDR,D,RFS GD52 NMGWYDR,Fire-Tac,Rural Fire Service RFS,
+20017,,NWENGLD,D,RFS GD53 NWENGLD,Fire-Tac,Rural Fire Service RFS,
+20018,,NTH OPS,D,RFS GD54 NTH OPS,Fire-Tac,Rural Fire Service RFS,
+20019,,NTHWEST,D,RFS GD55 NTHWEST,Fire-Tac,Rural Fire Service RFS,
+20020,,NTHN RIV,D,RFS GD56 NTHN RIV,Fire-Tac,Rural Fire Service RFS,
+20021,,NTH TAB,D,RFS GD57 NTH TAB,Fire-Tac,Rural Fire Service RFS,
+20022,,ORANA,D,RFS GD61 ORANA,Fire-Tac,Rural Fire Service RFS,
+20023,,RGN NTH,D,RFS GD78 RGN NTH,Fire-Tac,Rural Fire Service RFS,
+20024,,RGN WST,D,RFS GD80 RGN WST,Fire-Tac,Rural Fire Service RFS,
+20025,,TAMWRTH,D,RFS GD89 TAMWRTH,Fire-Tac,Rural Fire Service RFS,
+20026,,THE LKS,D,RFS GD90 THE LKS,Fire-Tac,Rural Fire Service RFS,
+20027,,WST OPS,D,RFS GD92 WST OPS,Fire-Tac,Rural Fire Service RFS,
+20201,,CNTAC1,D,SES 107CNTAC1,EMS-Tac,State Emergency Service SES,
+20202,,CNTAC2,D,SES 108CNTAC2,EMS-Tac,State Emergency Service SES,
+20203,,CNTAC3,D,SES 109CNTAC3,EMS-Tac,State Emergency Service SES,
+20204,,CNTAC4,D,SES 110CNTAC4,EMS-Tac,State Emergency Service SES,
+20205,,CNTAC5,D,SES 111CNTAC5,EMS-Tac,State Emergency Service SES,
+20206,,CNTAC6,D,SES 112CNTAC6,EMS-Tac,State Emergency Service SES,
+20207,,CNTAC7,D,SES 113CNTAC7,EMS-Tac,State Emergency Service SES,
+20208,,CNTAC8,D,SES 114CNTAC8,EMS-Tac,State Emergency Service SES,
+20209,,CNSTRAT,D,SES 116CNSTRAT,EMS-Tac,State Emergency Service SES,
+20210,,CWTAC1,D,SES 127CWTAC1,EMS-Tac,State Emergency Service SES,
+20211,,CWTAC2,D,SES 128CWTAC2,EMS-Tac,State Emergency Service SES,
+20212,,CWTAC3,D,SES 129CWTAC3,EMS-Tac,State Emergency Service SES,
+20213,,CWTAC4,D,SES 130CWTAC4,EMS-Tac,State Emergency Service SES,
+20214,,CWTAC5,D,SES 131CWTAC5,EMS-Tac,State Emergency Service SES,
+20215,,CWSTRAT,D,SES 133CWSTRAT,EMS-Tac,State Emergency Service SES,
+20216,,FWTAC1,D,SES 135FWTAC1,EMS-Tac,State Emergency Service SES,
+20217,,FWTAC2,D,SES 136FWTAC2,EMS-Tac,State Emergency Service SES,
+20218,,FWTAC3,D,SES 137FWTAC3,EMS-Tac,State Emergency Service SES,
+20219,,FWTAC4,D,SES 138FWTAC4,EMS-Tac,State Emergency Service SES,
+20220,,FWTAC5,D,SES 139FWTAC5,EMS-Tac,State Emergency Service SES,
+20221,,FWTAC6,D,SES 140FWTAC6,EMS-Tac,State Emergency Service SES,
+20222,,FWSTRAT,D,SES 142FWSTRAT,EMS-Tac,State Emergency Service SES,
+20223,,HUTAC1,D,SES 155HUTAC1,EMS-Tac,State Emergency Service SES,
+20224,,HUTAC2,D,SES 156HUTAC2,EMS-Tac,State Emergency Service SES,
+20225,,HUTAC3,D,SES 157HUTAC3,EMS-Tac,State Emergency Service SES,
+20226,,HUTAC4,D,SES 158HUTAC4,EMS-Tac,State Emergency Service SES,
+20227,,HUTAC5,D,SES 159HUTAC5,EMS-Tac,State Emergency Service SES,
+20228,,HUTAC6,D,SES 160HUTAC6,EMS-Tac,State Emergency Service SES,
+20229,,HUSTRAT,D,SES 162HUSTRAT,EMS-Tac,State Emergency Service SES,
+20230,,LATAC1,D,SES 173LATAC1,EMS-Tac,State Emergency Service SES,
+20231,,LATAC2,D,SES 174LATAC2,EMS-Tac,State Emergency Service SES,
+20232,,LATAC3,D,SES 175LATAC3,EMS-Tac,State Emergency Service SES,
+20233,,LATAC4,D,SES 176LATAC4,EMS-Tac,State Emergency Service SES,
+20234,,LATAC5,D,SES 177LATAC5,EMS-Tac,State Emergency Service SES,
+20235,,LATAC6,D,SES 178LATAC6,EMS-Tac,State Emergency Service SES,
+20236,,LASTRAT,D,SES 180LASTRAT,EMS-Tac,State Emergency Service SES,
+20237,,NMTAC1,D,SES 1129NMTAC1,EMS-Tac,State Emergency Service SES,
+20238,,NMTAC2,D,SES 1130NMTAC2,EMS-Tac,State Emergency Service SES,
+20239,,NMTAC3,D,SES 1131NMTAC3,EMS-Tac,State Emergency Service SES,
+20240,,NMTAC4,D,SES 1132NMTAC4,EMS-Tac,State Emergency Service SES,
+20241,,NMTAC5,D,SES 1133NMTAC5,EMS-Tac,State Emergency Service SES,
+20242,,NMTAC6,D,SES 1134NMTAC6,EMS-Tac,State Emergency Service SES,
+20243,,NMSTRAT,D,SES 1136NMSTRAT,EMS-Tac,State Emergency Service SES,
+20244,,NWTAC1,D,SES 1144NWTAC1,EMS-Tac,State Emergency Service SES,
+20245,,NWTAC2,D,SES 1145NWTAC2,EMS-Tac,State Emergency Service SES,
+20246,,NWTAC3,D,SES 1146NWTAC3,EMS-Tac,State Emergency Service SES,
+20247,,NWTAC4,D,SES 1147NWTAC4,EMS-Tac,State Emergency Service SES,
+20248,,NWTAC5,D,SES 1148NWTAC5,EMS-Tac,State Emergency Service SES,
+20249,,NWTAC6,D,SES 1149NWTAC6,EMS-Tac,State Emergency Service SES,
+20250,,NWTAC7,D,SES 1150NWTAC7,EMS-Tac,State Emergency Service SES,
+20251,,NWTAC8,D,SES 1151NWTAC8,EMS-Tac,State Emergency Service SES,
+20252,,NWSTRAT,D,SES 1153NWSTRAT,EMS-Tac,State Emergency Service SES,
+20253,,OXTAC1,D,SES 1165OXTAC1,EMS-Tac,State Emergency Service SES,
+20254,,OXTAC2,D,SES 1166OXTAC2,EMS-Tac,State Emergency Service SES,
+20255,,OXTAC3,D,SES 1167OXTAC3,EMS-Tac,State Emergency Service SES,
+20256,,OXTAC4,D,SES 1168OXTAC4,EMS-Tac,State Emergency Service SES,
+20257,,OXTAC5,D,SES 1169OXTAC5,EMS-Tac,State Emergency Service SES,
+20258,,OXTAC6,D,SES 1170OXTAC6,EMS-Tac,State Emergency Service SES,
+20259,,OXTAC7,D,SES 1171OXTAC7,EMS-Tac,State Emergency Service SES,
+20260,,OXTAC8,D,SES 1172OXTAC8,EMS-Tac,State Emergency Service SES,
+20261,,OXSTRAT,D,SES 1174OXSTRAT,EMS-Tac,State Emergency Service SES,
+20262,,RTTAC1,D,SES 1185RTTAC1,EMS-Tac,State Emergency Service SES,
+20263,,RTTAC2,D,SES 1186RTTAC2,EMS-Tac,State Emergency Service SES,
+20264,,RTTAC3,D,SES 1187RTTAC3,EMS-Tac,State Emergency Service SES,
+20265,,RTTAC4,D,SES 1188RTTAC4,EMS-Tac,State Emergency Service SES,
+20266,,RTTAC5,D,SES 1189RTTAC5,EMS-Tac,State Emergency Service SES,
+20267,,RTTAC6,D,SES 1190RTTAC6,EMS-Tac,State Emergency Service SES,
+20268,,RTTAC7,D,SES 1191RTTAC7,EMS-Tac,State Emergency Service SES,
+20269,,RTTAC8,D,SES 1192RTTAC8,EMS-Tac,State Emergency Service SES,
+20270,,RTSTRAT,D,SES 1194RTSTRAT,EMS-Tac,State Emergency Service SES,
+20301,,NewcOps,D,Newcastle Operations,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20302,,HuntOps,D,Outer Hunter Operations,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20303,,GosOps,D,Gosford Operations,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20304,,Nth Inc1,D,North Incident 1,EMS-Tac,Ambulance Service of New South Wales ASNSW,
+20305,,Nth Inc2,D,North Incident 2,EMS-Tac,Ambulance Service of New South Wales ASNSW,
+20306,,Hunt Hosp,D,Hunter Hospitals,Hospital,Ambulance Service of New South Wales ASNSW,
+20307,,MidWest1,D,MidWest Operations 1,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20308,,MidWest2,D,MidWest Operations 2,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20309,,MQOps1,D,Macquarie Operations 1,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20310,,MQOps2,D,Macquarie Operations 2,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20311,,NEOps1,D,New England Operations 1,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20312,,NEOps2,D,New England Operations 2,EMS Dispatch,Ambulance Service of New South Wales ASNSW,
+20313,,West Inc1,D,West Incident 1,EMS-Tac,Ambulance Service of New South Wales ASNSW,
+20314,,West Inc2,D,West Incident 2,EMS-Tac,Ambulance Service of New South Wales ASNSW,
+20315,,INCIDENT 1,,West Incident 1,,Ambulance Service of New South Wales ASNSW,
+20316,,INCIDENT 2,,West Incident 2,,Ambulance Service of New South Wales ASNSW,
+20317,,INCIDENT 3,,West Incident 3,,Ambulance Service of New South Wales ASNSW,
+20318,,HOSP 1,,West Hospital 1,,Ambulance Service of New South Wales ASNSW,
+20319,,HOSP 2,,West Hospital 2,,Ambulance Service of New South Wales ASNSW,
+20320,,HUN HOSP,,North Hunter Hospitals,,Ambulance Service of New South Wales ASNSW,
+20501,,CC Op,D,AusGrid Central Coast Operator,Utilities,AusGrid,
+20502,,CC Inspect,D,AusGrid Central Coast Installation Inspectors,Utilities,AusGrid,
+20503,,CC EMSOs,D,AusGrid Central Coast EMSOs,Utilities,AusGrid,
+20504,,CC Subs,D,AusGrid Central Coast Substations,Utilities,AusGrid,
+20505,,Gos OH,D,AusGrid Gosford Overhead,Utilities,AusGrid,
+20506,,CC UG,D,AusGrid Central Coast Underground,Utilities,AusGrid,
+20508,,Nora OH,D,AusGrid Noraville Overhead,Utilities,AusGrid,
+20509,,CC Prot,D,AusGrid Central Coast Protection,Utilities,AusGrid,
+20510,,Nora OH,D,AusGrid Noraville Overhead,Utilities,AusGrid,
+20511,,CC EMSO 1,D,AusGrid Central Coast EMSO Data 1,Utilities,AusGrid,
+20512,,CC Op,D,AusGrid Central Coast Operator,Utilities,AusGrid,
+20513,,Newc Op,D,AusGrid Newcastle Operator,Utilities,AusGrid,
+20514,,Newc Des Dat,D,AusGrid Newcastle Despatch Data 1,Utilities,AusGrid,
+20515,,Wall OH 1,D,AusGrid Wallsend Overhead 1,Utilities,AusGrid,
+20516,,Wall UG,D,AusGrid Wallsend Underground,Utilities,AusGrid,
+20517,,Wall Subs,D,AusGrid Wallsend Substations,Utilities,AusGrid,
+20518,,Mait 1,D,AusGrid Maitland 1,Utilities,AusGrid,
+20519,,Wall OH 2,D,AusGrid Wallsend Overhead 2,Utilities,AusGrid,
+20520,,Hunt TCA,D,AusGrid TCA Hunter,Utilities,AusGrid,
+20521,,Hunt Op,D,AusGrid Hunter Operator,Utilities,AusGrid,
+20522,,Musw 1,D,AusGrid Muswellbrook 1,Utilities,AusGrid,
+20523,,Musw 2,D,AusGrid Muswellbrook 2,Utilities,AusGrid,
+20524,,CASS Data2,D,AusGrid CASS Data 2,Utilities,AusGrid,
+20525,,Sing,D,AusGrid Singleton,Utilities,AusGrid,
+20526,,Hunt DistOp,D,AusGrid Hunter District Operators,Utilities,AusGrid,
+20527,,Newc DistOp,D,AusGrid Newcastle District Operators,Utilities,AusGrid,
+20528,,Hunt Proj,D,AusGrid Hunter Projects,Utilities,AusGrid,
+21001,,HuntWat Est,D,Hunter Water East,Utilities,Hunter Water,
+21002,,HuntWat 2,D,Hunter Water,Utilities,Hunter Water,
+21003,,HuntWat Nth,D,Hunter Water North,Utilities,Hunter Water,
+21004,,HuntWat 4,D,Hunter Water,Utilities,Hunter Water,
+21005,,HuntWat 5,D,Hunter Water,Utilities,Hunter Water,
+21006,,HuntWat 6,D,Hunter Water,Utilities,Hunter Water,
+30000,,BLD TEM,D,RFS GD09 BLD TEM,Fire-Tac,Rural Fire Service RFS,
+30001,,FARSHCO,D,RFS GD24 FARSHCO,Fire-Tac,Rural Fire Service RFS,
+30002,,HUME SB,D,RFS GD31 HUME SB,Fire-Tac,Rural Fire Service RFS,
+30003,,ILLWARA,D,RFS GD34 ILLWARA,Fire-Tac,Rural Fire Service RFS,
+30004,,L GEORG,D,RFS GD35 L GEORG,Fire-Tac,Rural Fire Service RFS,
+30005,,LOWWSTN,D,RFS GD41 LOWWSTN,Fire-Tac,Rural Fire Service RFS,
+30006,,MIA,D,RFS GD46 MIA,Fire-Tac,Rural Fire Service RFS,
+30007,,MID MUR,D,RFS GD48 MID MUR,Fire-Tac,Rural Fire Service RFS,
+30008,,MID WST,D,RFS GD50 MID WST,Fire-Tac,Rural Fire Service RFS,
+30009,,MONARO,D,RFS GD51 MONARO,Fire-Tac,Rural Fire Service RFS,
+30010,,RGN STH,D,RFS GD79 RGN STH,Fire-Tac,Rural Fire Service RFS,
+30011,,RV HIGH,D,RFS GD81 RV HIGH,Fire-Tac,Rural Fire Service RFS,
+30012,,RIVERNA,D,RFS GD82 RIVERNA,Fire-Tac,Rural Fire Service RFS,
+30013,,SHOALHN,D,RFS GD83 SHOALHN,Fire-Tac,Rural Fire Service RFS,
+30014,,STH OPS,D,RFS GD84 STH OPS,Fire-Tac,Rural Fire Service RFS,
+30015,,SWSZ,D,RFS GD85 SWSZ,Fire-Tac,Rural Fire Service RFS,
+30016,,STHN TD,D,RFS GD86 STHN TD,Fire-Tac,Rural Fire Service RFS,
+30017,,WNGCARI,D,RFS GD93 WNGCARI,Fire-Tac,Rural Fire Service RFS,
+30201,,ISTAC1,D,SES 163ISTAC1,EMS-Tac,State Emergency Service SES,
+30202,,ISTAC2,D,SES 164ISTAC2,EMS-Tac,State Emergency Service SES,
+30203,,ISTAC3,D,SES 165ISTAC3,EMS-Tac,State Emergency Service SES,
+30204,,ISTAC4,D,SES 166ISTAC4,EMS-Tac,State Emergency Service SES,
+30205,,ISTAC5,D,SES 167ISTAC5,EMS-Tac,State Emergency Service SES,
+30206,,ISTAC6,D,SES 168ISTAC6,EMS-Tac,State Emergency Service SES,
+30207,,ISTAC7,D,SES 169ISTAC7,EMS-Tac,State Emergency Service SES,
+30208,,ISTAC8,D,SES 170ISTAC8,EMS-Tac,State Emergency Service SES,
+30209,,ISSTRAT,D,SES 172ISSTRAT,EMS-Tac,State Emergency Service SES,
+30210,,METAC1,D,SES 181METAC1,EMS-Tac,State Emergency Service SES,
+30211,,METAC2,D,SES 182METAC2,EMS-Tac,State Emergency Service SES,
+30212,,METAC3,D,SES 183METAC3,EMS-Tac,State Emergency Service SES,
+30213,,METAC4,D,SES 184METAC4,EMS-Tac,State Emergency Service SES,
+30214,,METAC5,D,SES 185METAC5,EMS-Tac,State Emergency Service SES,
+30215,,METAC6,D,SES 186METAC6,EMS-Tac,State Emergency Service SES,
+30216,,METAC7,D,SES 187METAC7,EMS-Tac,State Emergency Service SES,
+30217,,METAC8,D,SES 188METAC8,EMS-Tac,State Emergency Service SES,
+30218,,MESTRAT,D,SES 190MESTRAT,EMS-Tac,State Emergency Service SES,
+30219,,MQTAC1,D,SES 1101MQTAC1,EMS-Tac,State Emergency Service SES,
+30220,,MQTAC2,D,SES 1102MQTAC2,EMS-Tac,State Emergency Service SES,
+30221,,MQTAC3,D,SES 1103MQTAC3,EMS-Tac,State Emergency Service SES,
+30222,,MQTAC4,D,SES 1104MQTAC4,EMS-Tac,State Emergency Service SES,
+30223,,MQTAC5,D,SES 1105MQTAC5,EMS-Tac,State Emergency Service SES,
+30224,,MQTAC6,D,SES 1106MQTAC6,EMS-Tac,State Emergency Service SES,
+30225,,MQSTRAT,D,SES 1108MQSTRAT,EMS-Tac,State Emergency Service SES,
+30226,,MYTAC1,D,SES 1109MYTAC1,EMS-Tac,State Emergency Service SES,
+30227,,MYTAC2,D,SES 1110MYTAC2,EMS-Tac,State Emergency Service SES,
+30228,,MYTAC3,D,SES 1111MYTAC3,EMS-Tac,State Emergency Service SES,
+30229,,MYTAC4,D,SES 1112MYTAC4,EMS-Tac,State Emergency Service SES,
+30230,,MYTAC5,D,SES 1113MYTAC5,EMS-Tac,State Emergency Service SES,
+30231,,MYTAC6,D,SES 1114MYTAC6,EMS-Tac,State Emergency Service SES,
+30232,,MYSTRAT,D,SES 1116MYSTRAT,EMS-Tac,State Emergency Service SES,
+30233,,SHTAC1,D,SES 1209SHTAC1,EMS-Tac,State Emergency Service SES,
+30234,,SHTAC2,D,SES 1210SHTAC2,EMS-Tac,State Emergency Service SES,
+30235,,SHTAC3,D,SES 1211SHTAC3,EMS-Tac,State Emergency Service SES,
+30236,,SHTAC4,D,SES 1212SHTAC4,EMS-Tac,State Emergency Service SES,
+30237,,SHTAC5,D,SES 1213SHTAC5,EMS-Tac,State Emergency Service SES,
+30238,,SHTAC6,D,SES 1214SHTAC6,EMS-Tac,State Emergency Service SES,
+30239,,SHTAC7,D,SES 1215SHTAC7,EMS-Tac,State Emergency Service SES,
+30240,,SHTAC8,D,SES 1216SHTAC8,EMS-Tac,State Emergency Service SES,
+30241,,SHSTRAT,D,SES 1218SHSTRAT,EMS-Tac,State Emergency Service SES,
+30301,,FSC OPS,,South Far South Coast Operations,,Ambulance Service of New South Wales ASNSW,
+30302,,ILLA OPS,,South Illawarra Operations,,Ambulance Service of New South Wales ASNSW,
+30303,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+30304,,WAGGA OPS,,South Wagga Operations,,Ambulance Service of New South Wales ASNSW,
+30305,,RIV OPS,,South Riverina Operations,,Ambulance Service of New South Wales ASNSW,
+30306,,MURRAY OPS,,South Murray Operations,,Ambulance Service of New South Wales ASNSW,
+30307,,ECP 3,,South Extended Care Paramedic 3,,Ambulance Service of New South Wales ASNSW,
+30308,,INCIDENT 1,,South Incident 1,,Ambulance Service of New South Wales ASNSW,
+30309,,INCIDENT 2,,South Incident 2,,Ambulance Service of New South Wales ASNSW,
+30310,,INCIDENT 3,,South Incident 3,,Ambulance Service of New South Wales ASNSW,
+30311,,INCIDENT 4,,South Incident 4,,Ambulance Service of New South Wales ASNSW,
+30312,,INCIDENT 5,,South Incident 5,,Ambulance Service of New South Wales ASNSW,
+30313,,INCIDENT 6,,South Incident 6,,Ambulance Service of New South Wales ASNSW,
+30314,,ILLAW HOSP,,South Illawarra Hospitals,,Ambulance Service of New South Wales ASNSW,
+30315,,GOULB HOSP,,South Goulburn Hospitals,,Ambulance Service of New South Wales ASNSW,
+30316,,SHAVEN OPS,,South Shoalhaven Operations,,Ambulance Service of New South Wales ASNSW,
+30317,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+30318,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+30319,,ASNSW,,ASNSW,,Ambulance Service of New South Wales ASNSW,
+30320,,ACT AMB,,South ACT Ambulance Liaison,,Ambulance Service of New South Wales ASNSW,
+30321,,STH EAST OPS,,South South East Operations,,Ambulance Service of New South Wales ASNSW,
+40010,,ESA 7,D,ESA 7,Interop,ACT ESA,
+40011,,ESA 8,D,ESA 8,Interop,ACT ESA,
+40013,,ACTAS Ops1,D,ACT Ambulance Ops 1,EMS Dispatch,ACT ESA,
+40031,,Air Sup,D,Air Sup,Interop,ACT ESA,
+40032,,ESA 1,D,ESA 1,Interop,ACT ESA,
+40033,,ESA 2,D,ESA 2,Interop,ACT ESA,
+40034,,ESA 3,D,ESA 3,Interop,ACT ESA,
+40035,,ESA 4,D,ESA 4,Interop,ACT ESA,
+40036,,ESA 5,D,ESA 5,Interop,ACT ESA,
+40037,,ESA 6,D,ESA 6,Interop,ACT ESA,
+40038,,ESA 9,D,ESA 9,Interop,ACT ESA,
+40039,,ESA 10,D,ESA 10,Interop,ACT ESA,
+40040,,ESA 11,D,ESA 11,Interop,ACT ESA,
+40041,,ESA 12,D,ESA 12,Interop,ACT ESA,
+40042,,ESA 13,D,ESA 13,Interop,ACT ESA,
+40043,,Joint T,D,Joint T,Interop,ACT ESA,
+40050,,ACTFB,E,ACTFB ,Public Works,ACT ESA,
+40051,,ACTFB,E,ACTFB ,Public Works,ACT ESA,
+40052,,ACTFB,E,ACTFB ,Public Works,ACT ESA,
+40059,,Priority,D,RFS Priority Channel,Emergency Ops,ACT RFS,
+40068,,RFS Ops 1,D,ACT RFS Ops 1,Fire-Tac,ACT RFS,
+40069,,FG 2,D,ACT RFS FG 2,Fire-Tac,ACT RFS,
+40070,,FG 3,D,ACT RFS FG 3,Fire-Tac,ACT RFS,
+40071,,FG 4,D,ACT RFS FG 4,Fire-Tac,ACT RFS,
+40072,,FG 5,D,ACT RFS FG 5,Fire-Tac,ACT RFS,
+40073,,RFS Ops 6,D,ACT RFS Ops 6,Fire-Tac,ACT RFS,
+40074,,FG 7,D,ACT RFS FG 7,Fire-Tac,ACT RFS,
+40075,,IMT,D,ACT RFS IMT,Fire-Tac,ACT RFS,
+40076,,Air Ops,D,ACT RFS Air Ops,Fire-Tac,ACT RFS,
+40077,,RFS Plt Ops,D,ACT RFS Plant Ops,Fire-Tac,ACT RFS,
+40078,,SES Ops 1,D,ACT SES Ops 1,EMS-Tac,ACT SES,
+40079,,SES Ops 2,D,ACT SES Ops 2,EMS-Tac,ACT SES,
+40080,,SES Ops 3,D,ACT SES Ops 3,EMS-Tac,ACT SES,
+40081,,SES Ops 4,D,ACT SES Ops 4,EMS-Tac,ACT SES,
+40082,,SES Ops 5,D,ACT SES Ops 5 Vehicle Talkgroup,EMS-Tac,ACT SES,
+40083,,SES Ops 6,D,ACT SES Ops 6,EMS-Tac,ACT SES,
+40084,,SES Ops 7,D,ACT SES Ops 7,EMS-Tac,ACT SES,
+40085,,SES Ops 8,D,ACT SES Ops 8,EMS-Tac,ACT SES,
+40086,,SES Ops 9,D,ACT SES Ops 9,EMS-Tac,ACT SES,
+40087,,SES Ops 10,D,ACT SES Ops 10,EMS-Tac,ACT SES,
+40088,,SES Ops 11,D,ACT SES Ops 11,EMS-Tac,ACT SES,
+40089,,PCL Ops,D,Parks Conserv Land Ops,Fire-Tac,ACT PCL,
+40090,,PCL Ops,D,Parks Conserv Land Ops,Fire-Tac,ACT PCL,
+40091,,Fire Mgt,D,TAMS Fire Mgmt,Fire Dispatch,ACT PCL,
+40092,,PCL CNP,D,Canberra Nature Parks,Fire-Tac,ACT PCL,
+40093,,PCL Rural,D,Parks Conserv Land Rural,Fire-Tac,ACT PCL,
+40097,,PCL HRB,D,Hazard Reduction Burn,Fire-Tac,ACT PCL,
+42000,,Guises Ck,D,RFS Guises Creek,Fire Dispatch,ACT RFS,
+42001,,Gunghalin,D,RFS Gunghalin,Fire Dispatch,ACT RFS,
+42002,,Hall,D,RFS Hall,Fire Dispatch,ACT RFS,
+42003,,Jerrabombera,D,RFS Jerrabombera,Fire Dispatch,ACT RFS,
+42004,,Molonglo,D,RFS Molongo,Fire Dispatch,ACT RFS,
+42005,,ACT,D,ACT RFS ,,ACT RFS,
+44010,,ACTION 44010,D,ACTION Buses,Transportation,ACTION Buses,
+44011,,ACTION 44011,D,ACTION Buses,Transportation,ACTION Buses,
+44012,,ACTION 44012,D,ACTION Buses,Transportation,ACTION Buses,
+44013,,ACTION 44013,D,ACTION Buses,Transportation,ACTION Buses,
--- a/trunklog.php
+++ b/trunklog.php
@@ -14,14 +14,14 @@
echo "<table>";
if (($handle = fopen("C:\Users\Madoka\AppData\Roaming\UniTrunker\S00000001\UniTrunker-20120411.LOG", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
-
+
if ($row > 0 && count($data) == 9) {
-
- echo "<tr>";
- for ($c=0; $c < count($data); $c++) {
- echo '<td>'.$data[$c] . "</td>\n";
- }
- echo "</tr>";
+
+ echo "<tr>";
+ for ($c = 0; $c < count($data); $c++) {
+ echo '<td>' . $data[$c] . "</td>\n";
+ }
+ echo "</tr>";
}
$row++;
}
--- a/viewcalls.php
+++ b/viewcalls.php
@@ -1,89 +1,111 @@
<?php
include('common.inc.php');
-$tgid = 1;
+$tgid = 44028;
+$from = (isset($_REQUEST['from']) ? $_REQUEST['from'] : strtotime("2012-09-12"));
+$to = (isset($_REQUEST['to']) ? $_REQUEST['to'] : strtotime("2012-12-12"));
+include_header("fdds");
+$sth = $conn->prepare('select distinct date_trunc(\'day\', call_timestamp) as rdate from recordings order by rdate');
+
+$sth->execute();
+foreach ($sth->fetchAll() as $row) {
+ echo '<a href="?from=' . strtotime($row['rdate']) . '&to=' . strtotime($row['rdate'] . ' +1 day') . '">' . $row['rdate'] . '</a> <br>';
+}
+
?>
<div class="span12">
-<table width="100%" height="375px"><tr><td valign="middle"><span class="arrow-w" style="font-size:2em;"></span></td><td width="95%"><div id="placeholder" style="width:100%;height:375px;"></div></td><td valign="middle"><span class="arrow-e" style="font-size:2em;"></span></td></tr></table>
-<script>
+ <table width="100%" height="775px">
+ <tr>
+ <td valign="middle"><span class="arrow-w" style="font-size:2em;"><</span></td>
+ <td width="95%">
+ <div id="placeholder" style="width:100%;height:575px;"></div>
+ </td>
+ <td valign="middle"><span class="arrow-e" style="font-size:2em;">></span></td>
+ </tr>
+ </table>
+ <script>
var data = [];
var plot;
- var options = {
+ var options = {
lines: { show: true },
points: { show: true },
- xaxis: { mode: "time" },
- crosshair: { mode: "x" },
+ xaxis: {
+ mode: 'time',
+ labelsAngle: 45
+ },
+ selection: { mode: 'x', fps: 30 },
series: {
lines: { show: true },
points: { show: true }
},
- grid: { hoverable: true, clickable: true }
+ mouse: {
+ track: true,
+ relative: true
+ }
};
- window.onload = function() {
- // graph
-
-
- var placeholder = $("#placeholder");
-
- var plot = $.plot(placeholder, data, options);
+ $(function () {
+ // graph
- $("#placeholder").bind("plothover", function (event, pos, item) {
-
- if (item) {
- if (previousPoint != item.dataIndex) {
- previousPoint = item.dataIndex;
-
- $("#tooltip").remove();
- var x = item.datapoint[0].toFixed(2),
- y = item.datapoint[1].toFixed(2);
- var d = new Date();
- d.setTime(x);
- var time = d.getDate() + "-" + (d.getMonth()+1) + "-" + d.getFullYear()
- + " " + d.getUTCHours() + ':'+ (d.getUTCMinutes().toString().length == 1 ? '0'+ d.getMinutes(): d.getUTCMinutes());
- showTooltip(item.pageX, item.pageY,
- item.series.label + " at " + time + " = " + y);
- }
+ var placeholder = document.getElementById("placeholder");
+
+ drawGraph(options);
+
+ // Hook into the 'flotr:select' event.
+ Flotr.EventAdapter.observe(placeholder, 'flotr:select', function (area) {
+
+ // Draw graph with new area
+ graph = drawGraph({
+ xaxis: {min: area.x1, max: area.x2, mode: 'time', labelsAngle: 45},
+ yaxis: {min: area.y1, max: area.y2}
+ });
+ });
+
+ // When graph is clicked, draw the graph with default area.
+ Flotr.EventAdapter.observe(placeholder, 'flotr:click', function () {
+ drawGraph();
+ });
+
+
+ getData('<?php echo $tgid; ?>', '<?php echo $from ?>', '<?php echo $to ?>');
+
+ });
+
+ // Draw graph with default options, overwriting with passed options
+ function drawGraph(opts) {
+
+ // Clone the options, so the 'options' variable always keeps intact.
+ var o = Flotr._.extend(Flotr._.clone(options), opts || {});
+
+ // Return a new graph.
+ return Flotr.draw(
+ placeholder,
+ data,
+ o
+ );
+ }
+
+
+ function onDataReceived(series) {
+ data = []
+ for (var key in series.data) {
+ data[data.length] = {label: key, data: series.data[key]};
}
- else {
- $("#tooltip").remove();
- previousPoint = null;
- }
-
- });
-
- getData('<?php echo $tgid; ?>','<?php echo strtotime("10/10/2012") ?>','<?php echo strtotime("12/10/2012") ?>');
-
- };
-
- function onDataReceived(series) {
- data =[]
- data[data.length] = series;
-
- plot = $.plot($("#placeholder"), data, options);
- }
- function getData(sensorID,from,to) {
- $.ajax({
- url: "<?php echo $basePath; ?>/calls.json.php?"+sensorID+"/"+from+"/"+to,
- method: 'GET',
- dataType: 'json',
- success: onDataReceived
- });
- }
+ drawGraph(options);
+ }
+ function getData(sensorID, from, to) {
+ $.ajax({
+ url: "<?php echo $basePath; ?>calls.json.php?action=graphcount&tgid=" + sensorID + "&from=" + from + "&to=" + to,
+ method: 'GET',
+ dataType: 'json',
+ success: onDataReceived
+ });
+ }
- function showTooltip(x, y, contents) {
- $('<div id="tooltip">' + contents + '</div>').css( {
- position: 'absolute',
- display: 'none',
- top: y + 5,
- left: x + 5,
- border: '1px solid #fdd',
- padding: '2px',
- 'background-color': '#fee',
- opacity: 0.80
- }).appendTo("body").fadeIn(200);
- }
-
-</script>
+ </script>
</div>
+<?php
+include_footer();
+?>
+