Full Code of knowitall/ollie for AI

master e8fa07a1d9d2 cached
85 files
6.1 MB
1.6M tokens
4 symbols
1 requests
Download .txt
Showing preview only (6,415K chars total). Download the full file or copy to clipboard to get everything.
Repository: knowitall/ollie
Branch: master
Commit: e8fa07a1d9d2
Files: 85
Total size: 6.1 MB

Directory structure:
gitextract_28sxprec/

├── .dockerignore
├── .gitignore
├── .travis.yml
├── Dockerfile
├── LICENSE
├── README.md
├── app/
│   ├── pom.xml
│   └── src/
│       ├── main/
│       │   ├── resources/
│       │   │   └── logback.xml
│       │   └── scala/
│       │       └── edu/
│       │           └── knowitall/
│       │               ├── ollie/
│       │               │   ├── OllieCli.scala
│       │               │   └── SentenceIterator.scala
│       │               └── openparse/
│       │                   ├── OpenParseCli.scala
│       │                   ├── OpenParseGui.scala
│       │                   └── gui/
│       │                       ├── Dot.scala
│       │                       ├── ExtractionEntry.scala
│       │                       ├── Parser.scala
│       │                       └── Sentence.scala
│       └── test/
│           └── resources/
│               └── logback-test.xml
├── core/
│   ├── build.sbt
│   ├── here.txt
│   ├── pom.xml
│   ├── project/
│   │   └── plugins.sbt
│   ├── scripts/
│   │   ├── applypatterns.sh
│   │   ├── build_templates.sh
│   │   ├── create_patterns.sh
│   │   ├── create_test_train.sh
│   │   ├── extractor.sh
│   │   └── keep_common_patterns.sh
│   └── src/
│       ├── main/
│       │   ├── resources/
│       │   │   └── edu/
│       │   │       └── knowitall/
│       │   │           ├── ollie/
│       │   │           │   ├── cognitiveWords.txt
│       │   │           │   ├── communicationWords.txt
│       │   │           │   ├── confidence/
│       │   │           │   │   └── default-classifier.txt
│       │   │           │   └── prefixWords.txt
│       │   │           └── openparse/
│       │   │               ├── categories/
│       │   │               │   ├── location.txt
│       │   │               │   └── person.txt
│       │   │               └── openparse.model
│       │   └── scala/
│       │       └── edu/
│       │           └── knowitall/
│       │               ├── common/
│       │               │   └── enrich/
│       │               │       └── Traversable.scala
│       │               ├── ollie/
│       │               │   ├── DependencyGraphExtras.scala
│       │               │   ├── NaryExtraction.scala
│       │               │   ├── Ollie.scala
│       │               │   ├── OllieExtraction.scala
│       │               │   ├── OllieExtractionInstance.scala
│       │               │   ├── ScoredOllieExtractionInstance.scala
│       │               │   ├── confidence/
│       │               │   │   ├── OllieConfidenceFunction.scala
│       │               │   │   ├── OllieFeatureEvaluation.scala
│       │               │   │   ├── OllieFeatureSet.scala
│       │               │   │   └── train/
│       │               │   │       ├── CrossValidateConfidence.scala
│       │               │   │       └── TrainOllieConfidence.scala
│       │               │   └── output/
│       │               │       └── BratOutput.scala
│       │               └── openparse/
│       │                   ├── AnalyzePatterns.scala
│       │                   ├── BuildPatterns.scala
│       │                   ├── ExtractorPattern.scala
│       │                   ├── GraphExpansions.scala
│       │                   ├── OpenParse.scala
│       │                   ├── bootstrap/
│       │                   │   ├── FilterTargetExtractions.scala
│       │                   │   ├── FindCommon.scala
│       │                   │   ├── FindTargetArguments.scala
│       │                   │   └── FindTargetExtractions.scala
│       │                   ├── eval/
│       │                   │   ├── GroupScoredBy.scala
│       │                   │   ├── PrecisionYield.scala
│       │                   │   ├── RankPatterns.scala
│       │                   │   ├── Score.scala
│       │                   │   └── StatisticalSignificance.scala
│       │                   ├── extract/
│       │                   │   ├── Extraction.scala
│       │                   │   ├── GeneralExtractor.scala
│       │                   │   ├── PatternExtractor.scala
│       │                   │   ├── SpecificExtractor.scala
│       │                   │   └── TemplateExtractor.scala
│       │                   └── template/
│       │                       ├── BuildTemplates.scala
│       │                       ├── CountsToConfidence.scala
│       │                       ├── GeneralizeTemplate.scala
│       │                       └── PassiveReflections.scala
│       └── test/
│           ├── resources/
│           │   └── logback-test.xml
│           └── scala/
│               └── edu/
│                   └── knowitall/
│                       ├── common/
│                       │   └── enrich/
│                       │       └── TraversableSpecTest.scala
│                       ├── ollie/
│                       │   ├── DependencyGraphExtrasSpec.scala
│                       │   └── confidence/
│                       │       └── OllieFeatureSetSpec.scala
│                       └── openparse/
│                           ├── BuildPatternsSpec.scala
│                           ├── ExtractorPatternSpec.scala
│                           ├── OllieSpec.scala
│                           ├── OpenParseSpec.scala
│                           └── PatternExtractorSpec.scala
├── data/
│   └── training.tsv
├── example/
│   ├── pom.xml
│   └── src/
│       └── main/
│           ├── java/
│           │   └── example/
│           │       └── JavaOllieWrapper.java
│           ├── resouces/
│           │   └── logback.xml
│           └── scala/
│               └── ollie/
│                   └── Example.scala
└── pom.xml

================================================
FILE CONTENTS
================================================

================================================
FILE: .dockerignore
================================================
Dockerfile
.dockerignore
.gitignore
.git


================================================
FILE: .gitignore
================================================
target
.cache
.classpath
.project
.settings
engmalt.linear.mco


================================================
FILE: .travis.yml
================================================
language: scala
scala:
  - "2.9.2"
jdk:
  - oraclejdk7
  - openjdk7


================================================
FILE: Dockerfile
================================================
FROM maven:3.5.2-jdk-7

WORKDIR /stage

COPY ./ /stage/
RUN curl http://www.maltparser.org/mco/english_parser/engmalt.linear-1.7.mco > /stage/engmalt.linear-1.7.mco
RUN mvn clean package

CMD ["java", "-Xmx512m", "-jar", "ollie-app-1.0.1-SNAPSHOT.jar"]


================================================
FILE: LICENSE
================================================
Ollie Software License Agreement
 
Ollie Software
(C) 2011-2012, University of Washington.  All rights reserved.
US patent number 7,877,343 and 12/970,155 patent pending
 
The University of Washington (UW), Professor Mausam, Michael Schmitz, Robert
Bart, and Stephen Soderland, (Developers) give permission for you and your
laboratory (University) to use Ollie. Ollie is a system that extracts
relational triples from text. Ollie is protected by a United States copyright
and patents. The National Science Foundation supported work on Ollie. Under
University of Washington's patents 7,877,343 (issued) and 12/970,155 (patent
pending), the UW grants to you the non-exclusive right to use patent claims
practiced by the University of Washington's Ollie software solely for
non-commercial purposes and as long as you comply with the terms of this Ollie
Software License Agreement.  UW and the Developers allow you to copy and modify
Ollie for non-commercial purposes, and to distribute modifications through
GitHub or directly to the University of Washington, on the following
conditions:

 
1.  Ollie is not used for any commercial purposes, or as part of a system
which has commercial purposes.

 
2.  Any software derived from Ollie must carry prominent notices stating that
you modified it along with the date modified.  The derivative must also carry
prominent notices stating that it is released under this Ollie Software
License Agreement
 
If you wish to obtain Ollie or to obtain any patent rights for any commercial
purposes, you will need to contact the University of Washington to see if
rights are available and to negotiate a commercial license and pay a fee. This
includes, but is not limited to, using Ollie to provide services to outside
parties for a fee. In that case please contact:
 
    UW Center for Commercialization 
    University of Washington
    4311 11th Ave. NE,
    Suite 500 Seattle, WA 98105-4608

    Phone: (206) 543-3970
    Email: license@u.washington.edu

 
3. You retain in Ollie and any modifications to Ollie, the copyright,
trademark, patent or other notices pertaining to Ollie as provided by UW.

 
4. You provide the Developers with feedback on the use of the Ollie software
in your research, and that the Developers and UW are permitted to use any
information you provide in making changes to the Ollie software. All bug
reports and technical questions shall be sent to: afader@cs.washington.edu.
Modifications may be communicated through GitHub pull requests at:

    https://github.com/knowitall/

 
5. You acknowledge that the Developers, UW and its licensees may develop
modifications to Ollie that may be substantially similar to your modifications
of Ollie, and that the Developers, UW and its licensees shall not be
constrained in any way by you in UW's or its licensees' use or management of
such modifications. You acknowledge the right of the Developers and UW to
prepare and publish modifications to Ollie that may be substantially similar
or functionally equivalent to your modifications and improvements, and if you
obtain patent protection for any modification or improvement to Ollie you
agree not to allege or enjoin infringement of your patent by the Developers,
the UW or by any of UW's licensees obtaining modifications or improvements to
Ollie from the University of Washington or the Developers.

 
6. If utilization of the Ollie software results in outcomes which will be
published, please specify the version of Ollie you used and cite the UW
Developers.

  @inproceedings{ollie-emnlp12,
      author = {Mausam and Michael Schmitz and Robert Bart and 
          Stephen Soderland and Oren Etzioni},
      title = {Open Language Learning for Information Extraction},
      booktitle = {Proceedings of Conference on Empirical Methods in 
          Natural Language Processing and Computational Natural 
          Language Learning (EMNLP-CONLL)},
      year = {2012}
  }

 
7. Any risk associated with using the Ollie software at your organization is
with you and your organization. Ollie is experimental in nature and is made
available as a research courtesy "AS IS," without obligation by UW to provide
accompanying services or support.

 
UW AND THE AUTHORS EXPRESSLY DISCLAIM ANY AND ALL WARRANTIES REGARDING THE 
SOFTWARE, WHETHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES 
PERTAINING TO MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


================================================
FILE: README.md
================================================
# Ollie

Ollie is a program that automatically identifies and extracts binary
relationships from English sentences.  Ollie is designed for Web-scale
information extraction, where target relations are not specified in advance.

Ollie is our second-generation information extraction system .  Whereas <a
href="http://reverb.cs.washington.edu/">ReVerb</a> operates on flat sequences
of tokens, Ollie works with the tree-like (graph with only small cycles)
representation using Stanford's compression of the dependencies.  This allows
Ollie to capture expression that ReVerb misses, such as long-range relations.

Ollie also captures context that modifies a binary relation.  Presently Ollie
handles attribution (He said/she believes) and enabling conditions (if X
then).

## Quick Start

### Docker

You can now run Ollie with a single Docker command.

```
docker run -it schmmd/ollie:latest
```

To configure Ollie, you can drop into a bash shell with `docker run -it schmmd/ollie:latest /bin/bash` 
and run Ollie from the command line.

### Local Machine

If you want to run Ollie on a small amount of text without modifying the source
code, you can use an executable file that can be run from the command line.
Please note that Ollie was built using Scala 2.9 and so it requires Java 7.
Follow these steps to get started:

1.  Download the latest Ollie binary from
    http://knowitall.cs.washington.edu/ollie/ollie-app-latest.jar.

2.  Download the linear English MaltParser model (engmalt.linear-1.7.mco) from
    http://www.maltparser.org/mco/english_parser/engmalt.html
    and place it in the same directory as Ollie.

3.  Run `java -Xmx512m -jar ollie-app-latest.jar yourfile.txt`.  The input file
    should contain one sentence per line unless `--split` is specified.  Omit
    the input file for an interactive console.

## Examples

### Enabling Condition

An enabling condition is a condition that needs to be met for the extraction to
be true.  Certain words demark an enabling condition, such as "if" and "when".
Ollie captures enabling conditions if they are present.

    sentence: If I slept past noon, I'd be late for work.
    extraction: (I; 'd be late for; work)[enabler=If I slept past noon]

### Attribution

An attribution clause specifies an entity that asserted an extraction and a
verb that specifies the expression.  Ollie captures attributions if they are
present.

    sentence: Some people say Barack Obama was not born in the United States.
    extraction: (Barack Obama; was not born in; the United States)[attrib=Some people say]

    sentence: Early astronomers believe that the earth is the center of the universe.
    extraction: (the earth; is the center of; the universe)[attrib=Early astronomers believe]

### Relational noun

Some relations are expressed without verbs.  Ollie can capture these as well as
verb-mediated relations.

    sentence: Microsoft co-founder Bill Gates spoke at a conference on Monday.
    extraction: (Bill Gates; be co-founder of; Microsoft)


### N-ary extractions

Often times similar relations will specify different aspects of the same event.
Since Ollie captures long-range relations it can capture N-ary extractions by
collapsing extractions where the relation phrase only differs by the
preposition.

    sentence: I learned that the 2012 Sasquatch music festival is scheduled for May 25th until May 28th.
    extraction: (the 2012 Sasquatch music festival; is scheduled for; May 25th)
    extraction: (the 2012 Sasquatch music festival; is scheduled until; May 28th)
    nary: (the 2012 Sasquatch music festival; is scheduled; [for May 25th; to May 28th])

## Building

Building Ollie from source requires Apache Maven (<http://maven.apache.org>).
First, clone or download the Ollie source from GitHub.  Run this command in the
top-level source folder to download the required dependencies, compile, and
create a single jar file.

    mvn clean package

The compiled class files will be put in the base directory.  The single
executable jar file will be written to `ollie-app-VERSION.jar` where `VERSION`
is the version number.

## Command Line Interface

Once you have built Ollie, you can run it from the command line.

    java -Xmx512m -jar ollie-app-VERSION.jar yourfile.txt

Omit the input file for an interactive console.

Ollie takes sentences, one-per-line as input or splits text into sentences if
`--split` is specified.  Run Ollie with `--usage` to see full usage.

The Ollie command line tool has a few output formats.  The output format is
specified by `--output-format` and a valid format:

1. The `interactive` format that is meant to be easily human readable.
2. The `tabbed` format is mean to be easily parsable.  A header will be output
   as the first row to label the columns.
3. `tabbedsingle` is similar to `tabbed` but the extraction is output as (arg1; relation;
   arg2) in a single column.
4. The `serialized` is meant to be fully deserialized into an
   `OllieExtractionInstance` class.

## Graphical Interface

Ollie works ontop of a subcomponent called OpenParse.  The distinction is
largely technical; OpenParse does not handle attribution and enabling condition
and uses a coarser confidence metric.  You can use a GUI application to
visualize the OpenParse extractions in a parse tree.  To use it, you will need
to have [graphviz](http://www.graphviz.org/) installed.  You can run the GUI
with:

    java -Xms512M -Xmx1g -cp ollie-app-VERSION.jar edu.knowitall.openparse.OpenParseGui

By default, this application will look for graphviz's `dot` program at
`/usr/bin/dot`.  You can specify a location with the `--graphviz` parameter.

You can try out your own models with `Options->Load Model...`.  To see an
example model, look at `openparse.model` in `src/main/resources`. Your model
may have one or more patterns in it.  If you want to see pattern matches
(without node expansion) instead of triple extractions, you can choose to show
the raw match with `Options->Raw Matches`.  This will allow you to use patterns
that do not capture an arg1, rel, and arg2.

## Parsers

Ollie is packaged to use Malt Parser, one of the fastest dependency parsers
available.  You will need the model file (`engmalt.linear-1.7.mco`) in the
directory the application is run from or you will need to specify its location
with the `--malt-model` parameter.  Malt Parser models are available online.

  http://www.maltparser.org/mco/english_parser/engmalt.html

Ollie works with any other parser in the `nlptools` project.  For example, it
is easy to swap out Malt for Stanford's parser.  Stanford's parser is not a
part of the Ollie distribution by default because of licensing conflicts, but
the Stanford parser was used as the execution parser for the results in the
paper.  Malt Parser was used to bootstrap the patterns.  We are interested
in Clear parser as an alternative, but it's not a trivial change because Clear
uses a slightly different dependency representation.

## Using Eclipse

To modify the Ollie source code in Eclipse, use the [M2Eclipse
plugin](http://www.sonatype.org/m2eclipse/) along with
[ScalaIDE](http://scala-ide.org/).  You can then import the project using 
the following.

    File > Import > Existing Maven Projects

## Including Ollie as a Dependency

Add the following as a Maven dependency.

    <groupId>edu.washington.cs.knowitall.ollie</groupId>
    <artifactId>ollie-core_2.9.2</artifactId>
    <version>[1.0.0, )</version>

The best way to find the latest version is to browse [Maven Central](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22edu.washington.cs.knowitall%22).

`ollie-core` does not include a way to parse sentences.  You will need to use a
parser supplied by the [nlptools](https://github.com/knowitall/nlptools)
project.  The source for for `ollie-app` is an excellent example of a project
using `ollie-core` as a dependency.  `ollie-app` supplies a parser from
[nlptools](https://github.com/knowitall/nlptools).

There is an example project that uses Ollie in the `example` folder of the
source distribution.

## Training the Confidence Function

While Ollie comes with a trained confidence function, it is possible to retrain
the confidence function.  First, you need to run Ollie over a set of sentences
and store the output in the *serialized* format.

    echo "Michael rolled down the hill." | java -jar ollie-app-1.0.0-SNAPSHOT.jar --serialized --output toannotate.tsv

Next you need to annotate the extractions.  Modify the output file and
**change** the first column to a binary annotation--`1` for correct and `0` for
wrong.  Your final file will look similar to `ollie/data/training.tsv`.  Now
run the logistic regression trainer.

    java -cp ollie-app-1.0.0-SNAPSHOT.jar edu.washington.cs.knowitall.ollie.confidence.train.TrainOllieConfidence toannotate.tsv

## Concurrency

When operating at web scale, parallelism is essential.  While the base Ollie
extractor is immutable and thread safe, the parser may not be thread safe.  I
do not know whether Malt parser is thread safe.

## FAQ

1.  How fast is Ollie?

    You should really benchmark Ollie yourself, but on my computer (a new computer in 2011), Ollie processed 5000 high-quality web sentences in 56 seconds, or 89 sentences per second, in a single thread.  Ollie is easily parallelizable and the Ollie extractor itself is threadsafe (see Concurrency section).

## Contact

To contact the UW about Ollie, email knowit-ollie@cs.washington.edu.

## Citing Ollie
If you use Ollie in your academic work, please cite Ollie with the following 
BibTeX citation:

    @inproceedings{ollie-emnlp12,
      author = {Mausam and Michael Schmitz and Robert Bart and Stephen Soderland and Oren Etzioni},
      title = {Open Language Learning for Information Extraction},
      booktitle = {Proceedings of Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning (EMNLP-CONLL)},
      year = {2012}
    }


================================================
FILE: app/pom.xml
================================================
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>edu.washington.cs.knowitall.ollie</groupId>
  <artifactId>ollie-app</artifactId>
  <name>ollie-app</name>
  <version>1.0.1-SNAPSHOT</version>
  <parent>
    <groupId>edu.washington.cs.knowitall</groupId>
    <artifactId>knowitall-oss</artifactId>
    <version>1.0.2</version>
  </parent>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <nlptools.version>2.4.0</nlptools.version>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.scala-lang</groupId>
      <artifactId>scala-swing</artifactId>
      <version>2.9.2</version>
    </dependency>
    <dependency>
      <groupId>edu.washington.cs.knowitall.ollie</groupId>
      <artifactId>ollie-core_2.9.2</artifactId>
      <version>1.0.2</version>
    </dependency>
    <dependency>
      <groupId>edu.washington.cs.knowitall.nlptools</groupId>
      <artifactId>nlptools-parse-malt_2.9.2</artifactId>
      <version>${nlptools.version}</version>
    </dependency>
    <dependency>
      <groupId>edu.washington.cs.knowitall.nlptools</groupId>
      <artifactId>nlptools-parse-stanford_2.9.2</artifactId>
      <version>${nlptools.version}</version>
    </dependency>
    <dependency>
      <groupId>edu.washington.cs.knowitall.nlptools</groupId>
      <artifactId>nlptools-sentence-opennlp_2.9.2</artifactId>
      <version>${nlptools.version}</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>batik</groupId>
      <artifactId>batik-swing</artifactId>
      <version>1.6-1</version>
    </dependency>
    <dependency>
      <groupId>org.specs2</groupId>
      <artifactId>specs2_2.9.2</artifactId>
      <version>1.12.3</version>
      <scope>test</scope>
    </dependency>
    <!-- Logging -->
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.0.9</version>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-core</artifactId>
      <version>1.0.9</version>
    </dependency>
  </dependencies>
  <build>
    <sourceDirectory>src/main/scala</sourceDirectory>
    <testSourceDirectory>src/test/scala</testSourceDirectory>
    <!-- build scala code -->
    <plugins>
      <plugin>
        <groupId>net.alchim31.maven</groupId>
        <artifactId>scala-maven-plugin</artifactId>
        <version>3.1.1</version>
        <configuration>
          <args>
            <arg>-deprecation</arg>
            <arg>-unchecked</arg>
          </args>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>compile</goal>
              <goal>testCompile</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <outputDirectory>${project.build.directory}/../..</outputDirectory>
          <appendAssemblyId>false</appendAssemblyId>
          <archive>
            <manifest>
              <mainClass>edu.knowitall.ollie.OllieCli</mainClass>
            </manifest>
          </archive>
        </configuration>
        <executions>
          <execution>
            <id>distro-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>


================================================
FILE: app/src/main/resources/logback.xml
================================================
<?xml version="1.0"?>
<configuration>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type
         ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>
  <root level="info">
    <appender-ref ref="STDOUT"/>
  </root>
</configuration>


================================================
FILE: app/src/main/scala/edu/knowitall/ollie/OllieCli.scala
================================================
package edu.knowitall.ollie;

import java.io.File
import java.io.PrintWriter
import java.io.OutputStreamWriter
import java.nio.charset.MalformedInputException
import scala.io.Source
import edu.knowitall.common.Resource.using
import edu.knowitall.ollie.confidence.OllieConfidenceFunction
import edu.knowitall.openparse.OpenParse
import edu.knowitall.tool.parse.MaltParser
import scopt.OptionParser
import edu.knowitall.tool.segment.Segmenter
import edu.knowitall.common.Timing
import edu.knowitall.tool.sentence.OpenNlpSentencer
import java.text.DecimalFormat
import java.net.URL
import edu.knowitall.tool.parse.graph.DependencyGraph
import edu.knowitall.ollie.confidence.OllieFeatureSet

/**
  * An entry point to use Ollie on the command line.
  */
object OllieCli {
  /** A definition of command line arguments. */
  abstract class Settings {
    def inputFiles: Option[Seq[File]]
    def outputFile: Option[File]

    def encoding: String

    def modelUrl: URL
    def confidenceModelUrl: Option[URL]
    def confidenceThreshold: Double
    def openparseConfidenceThreshold: Double

    def maltModelFile: Option[File]

    def parseInput: Boolean
    def splitInput: Boolean
    def outputFormat: OutputFormat
    def parallel: Boolean
    def invincible: Boolean
  }

  sealed abstract class OutputFormat {
    def header: Option[String]
    def format(conf: Double, extr: OllieExtractionInstance): String
  }
  object OutputFormat {
    val confFormatter = new DecimalFormat("#.###")
    def parse(format: String): OutputFormat = {
      format.toLowerCase match {
        case "interactive" => InteractiveFormat
        case "tabbed" => TabbedFormat
        case "tabbedsingle" => TabbedSingleColumnFormat
        case "serialized" => SerializedFormat
      }
    }
  }
  case object InteractiveFormat extends OutputFormat {
    def header = None
    def format(conf: Double, inst: OllieExtractionInstance): String =
      OutputFormat.confFormatter.format(conf) + ": " + inst.extr
  }
  case object TabbedFormat extends OutputFormat {
    def headers = Seq("confidence", "arg1", "rel", "arg2", "enabler", "attribution", "text", "pattern", "dependencies")
    def header = Some(headers.mkString("\t"))
    def format(conf: Double, inst: OllieExtractionInstance): String =
      Iterable(OutputFormat.confFormatter.format(conf),
        inst.extr.arg1.text,
        inst.extr.rel.text,
        inst.extr.arg2.text,
        inst.extr.enabler.map(_.text),
        inst.extr.attribution.map(_.text),
        inst.sent.text,
        inst.pat,
        inst.sent.serialize).mkString("\t")
  }
  case object TabbedSingleColumnFormat extends OutputFormat {
    def headers = Seq("confidence", "extraction", "enabler", "attribution", "text", "pattern", "dependencies")
    def header = Some(headers.mkString("\t"))
    def format(conf: Double, inst: OllieExtractionInstance): String =
      Iterable(OutputFormat.confFormatter.format(conf),
        inst.extr.toString,
        inst.extr.enabler.map(_.text),
        inst.extr.attribution.map(_.text),
        inst.sent.text,
        inst.pat,
        inst.sent.serialize).mkString("\t")
  }
  case object SerializedFormat extends OutputFormat {
    def header = None
    def format(conf: Double, inst: OllieExtractionInstance): String =
      OutputFormat.confFormatter.format(conf) + "\t" + inst.extr.toString + "\t" + inst.tabSerialize
  }

  /** Size to group for parallelism. */
  private val CHUNK_SIZE = 10000

  def main(args: Array[String]): Unit = {
    object settings extends Settings {
      var inputFiles: Option[Seq[File]] = None
      var outputFile: Option[File] = None

      var encoding: String = "UTF-8"

      var modelUrl: URL = OpenParse.defaultModelUrl
      var confidenceModelUrl: Option[URL] = Some(OllieConfidenceFunction.defaultModelUrl)
      var confidenceThreshold: Double = 0.0
      var openparseConfidenceThreshold: Double = 0.005

      var maltModelFile: Option[File] = None

      var parseInput: Boolean = true
      var splitInput: Boolean = false
      var outputFormat: OutputFormat = InteractiveFormat
      var parallel: Boolean = false
      var invincible: Boolean = false

      var showUsage: Boolean = false
    }

    // define the argument parser
    val argumentParser = new OptionParser("ollie") {
      arglistOpt("<file>", "input text file (one sentence per line unless --split is specified)", { path: String =>
        val file = new File(path)
        require(file.exists, "file does not exist: " + file)
        settings.inputFiles = Some(settings.inputFiles.getOrElse(Vector.empty) :+ file)
      })

      opt(Some("o"), "output", "<file>", "output file (otherwise stdout)", { path: String =>
        settings.outputFile = Some(new File(path))
      })

      opt(Some("e"), "encoding", "<encoding>", "character encoding (UTF8 by default)", { encoding: String =>
        settings.encoding = encoding
      })

      opt(Some("m"), "model", "<file>", "model file", { path: String =>
        val file = new File(path)
        require(file.exists, "file does not exist: " + path)
        settings.modelUrl = file.toURI.toURL
      })

      opt(Some("c"), "confidence model", "<file>", "model file", { path: String =>
        if (path equalsIgnoreCase "None") {
          settings.confidenceModelUrl = None
        } else {
          val file = new File(path)
          require(file.exists, "file does not exist: " + path)
          settings.confidenceModelUrl = Some(file.toURI.toURL)
        }
      })

      opt(None, "malt-model", "<file>", "malt model file", { path: String =>
        settings.maltModelFile = Some(new File(path))
      })

      opt("h", "help", "usage information", { settings.showUsage = true })

      doubleOpt(Some("t"), "threshold", "<double>", "confidence threshold for Ollie extractor", { t: Double =>
        settings.confidenceThreshold = t
      })

      doubleOpt(None, "openparse-threshold", "<double>", "confidence threshold for OpenParse component", { t: Double =>
        settings.openparseConfidenceThreshold = t
      })

      opt("p", "parallel", "execute in parallel", { settings.parallel = true })
      opt("s", "split", "split text into sentences", { settings.splitInput = true })
      opt("dependencies", "input is serialized dependency graphs (don't parse)", { settings.parseInput = false })
      opt("output-format", "specify output format from {interactive, tabbed, tabbedsingle, serialized}", { s: String => settings.outputFormat = OutputFormat.parse(s) })
      opt("ignore-errors", "ignore errors", { settings.invincible = true })
      opt("usage", "this usage message", { settings.showUsage = true })
    }

    if (argumentParser.parse(args)) {
      require(!(settings.splitInput && !settings.parseInput), "options 'split' and 'dependencies' are not compatible.")
      if (settings.showUsage) {
        println()
        println("Ollie takes sentences as input, one per line.")
        println("The response is \"confidence: extraction\", one extraction per line.")
        println(argumentParser.usage)
      } else {
        try {
          run(settings)
        }
        catch {
          case e: MalformedInputException =>
            System.err.println("\nError: a MalformedInputException was thrown.\nThis usually means there is a mismatch between what Ollie expects and the input file.  Try changing the input file's character encoding to UTF-8 or specifying the correct character encoding for the input file with '--encoding'.\n")
            e.printStackTrace()
        }
      }
    }
  }

  def run(settings: Settings) = {
    System.err.println("Loading parser models... ")
    val parser = Timing.timeThen {
      if (settings.parseInput) {
        settings.maltModelFile match {
          case None => Some(new MaltParser())
          case Some(file) => Some(new MaltParser(file))
        }
      } else None
    } { ns =>
      System.err.println(Timing.Seconds.format(ns))
    }

    System.err.print("Loading ollie models... ")
    val ollieExtractor = Timing.timeThen {
      val configuration =
        new OpenParse.Configuration(
          confidenceThreshold = settings.openparseConfidenceThreshold)

      val openparse = OpenParse.fromModelUrl(settings.modelUrl, configuration)
      new Ollie(openparse)
    } { ns =>
      System.err.println(Timing.Seconds.format(ns))
    }

    System.err.print("Loading ollie confidence function... ")
    val confFunction = Timing.timeThen {
      settings.confidenceModelUrl.map(url => OllieConfidenceFunction.fromUrl(OllieFeatureSet, url))
    } { ns =>
      System.err.println(Timing.Seconds.format(ns))
    }

    val sentencer = if (settings.splitInput) {
      System.err.println("Prose input split by OpenNlpSentencer.");
      Some(new OpenNlpSentencer()) 
    } else {
      if (settings.inputFiles.isDefined) {
        System.err.println()
        System.err.println("WARNING: Each line is expected to be a unique sentence.")
        System.err.println("If you want prose to be split into sentences, restart Ollie with --prose.")
      }
      None
    }

    using(settings.outputFile match {
      case Some(output) => new PrintWriter(output, settings.encoding)
      case None => new PrintWriter(new OutputStreamWriter(System.out, settings.encoding))
    }) { writer =>

      // print headers for output
      settings.outputFormat.header match {
        case Some(header) => writer.println(header)
        case None =>
      }

      // process a source and output extractions
      def processSource(source: Source) {
        val ns = Timing.time {
          // print prompt if standard input
          if (!settings.inputFiles.isDefined) {
            System.out.print("> ")
            System.out.flush()
          }

          val lines = parseLines(source.getLines, sentencer) filter (!_.isEmpty)
          // group the lines so we can parallelize
          val grouped = if (settings.parallel) lines.grouped(CHUNK_SIZE) else lines.map(Seq(_))
          for (group <- grouped) {

            // potentially transform to a parallel collection
            val sentences = if (settings.parallel) group.par else group
            for (sentence <- sentences) {
              try {
                if (settings.outputFormat == InteractiveFormat) {
                  writer.println(sentence)
                  writer.flush()
                }

                // parse the sentence
                val graph =
                  parser.map(_.dependencyGraph(sentence)).getOrElse(DependencyGraph.deserialize(sentence))

                // extract sentence and compute confidence
                val extrs = ollieExtractor.extract(graph).iterator.map(extr => (confFunction.map(_.getConf(extr)).getOrElse(0.0), extr))

                extrs match {
                  case it if it.isEmpty && settings.outputFormat == InteractiveFormat => writer.println("No extractions found.")
                  case it if it.isEmpty =>
                  case extrs => (extrs filter (_._1 >= settings.confidenceThreshold)).toList.sortBy(-_._1).foreach {
                    case (conf, e) =>
                      writer.println(settings.outputFormat.format(conf, e))
                      writer.flush()
                  }
                }

                if (settings.outputFormat == InteractiveFormat) {
                  writer.println()
                  writer.flush()
                }
              } catch {
                case e: Exception if settings.invincible => e.printStackTrace
              }
            }

            // print prompt if standard input
            if (!settings.inputFiles.isDefined) {
              System.out.print("> ")
              System.out.flush()
            }
          }
        }

        System.err.println()
        System.err.println("Completed in " + Timing.Seconds.format(ns) + " seconds")
      }

      settings.inputFiles match {
        // single file
        case Some(Seq(file)) =>
          System.err.println("\nRunning extractor on " + file + "...")
          using (Source.fromFile(file, settings.encoding)) { source =>
            processSource(source)
          }

        // multiple files
        case Some(files) =>
          System.err.println("\nRunning extractor on multiple files...")
          val ns = Timing.time {
            for ((file, i) <- files.iterator.zipWithIndex) {
              System.err.println("Processing file " + file + " (" + (i+1) + "/" + files.size + ")...")
              System.err.println()
              using(Source.fromFile(file, settings.encoding)) { source =>
                processSource(source)
              }
            }
          }
          System.err.println("All files completed in " + Timing.Seconds.format(ns) + " seconds")

        // standard input
        case None =>
          System.err.println("\nRunning extractor on standard input...")
          processSource(Source.fromInputStream(System.in, settings.encoding))
      }
    }
  }

  def parseLines(lines: Iterator[String], sentencer: Option[Segmenter]) = {
    sentencer match {
      case None => lines
      case Some(sentencer) => new SentenceIterator(sentencer, lines.buffered)
    }
  }
}


================================================
FILE: app/src/main/scala/edu/knowitall/ollie/SentenceIterator.scala
================================================
package edu.knowitall.ollie

import edu.knowitall.tool.segment.Segmenter

class SentenceIterator(sentencer: Segmenter, private var lines: BufferedIterator[String]) extends Iterator[String] {
  var sentences: Iterator[String] = Iterator.empty
      
  lines.dropWhile(_.trim.isEmpty)

  def nextSentences = {
    val (paragraph, rest) = lines.span(!_.trim.isEmpty)
    lines = rest.dropWhile(_.trim.isEmpty).buffered
    sentencer.segmentTexts(paragraph.mkString(" ")).iterator.buffered
  }
  
  def hasNext: Boolean = {
    if (sentences.hasNext) {
      true
    }
    else if (!lines.hasNext) {
      false
    }
    else {
      sentences = nextSentences
      sentences.hasNext
    }
  }
  
  def next: String = {
    if (sentences.hasNext) {
      sentences.next()
    }
    else {
      sentences = nextSentences
	  sentences.next()
    }
  }
}

================================================
FILE: app/src/main/scala/edu/knowitall/openparse/OpenParseCli.scala
================================================
package edu.knowitall.openparse

import java.io.{PrintWriter, File}
import java.net.URL

import scala.collection.Set
import scala.io.Source

import org.slf4j.LoggerFactory

import edu.knowitall.collection.immutable.graph.pattern.Match
import edu.knowitall.collection.immutable.graph.Graph
import edu.knowitall.common.Resource.using
import edu.knowitall.common.Timing
import edu.knowitall.tool.parse.MaltParser
import edu.knowitall.openparse.OpenParse.validMatch
import edu.knowitall.openparse.extract.{TemplateExtractor, PatternExtractorType, PatternExtractor, GeneralExtractor, Extraction, DetailedExtraction}
import edu.knowitall.tool.parse.graph.{DependencyNode, DependencyGraph}

import scopt.OptionParser

object OpenParseCli {
  val logger = LoggerFactory.getLogger(this.getClass)

  abstract class Settings {
    def modelUrl: URL
    def outputFile: Option[File]
    def sentenceFile: File

    def confidenceThreshold: Double
    def expandArguments: Boolean
    def verbose: Boolean

    def parallel: Boolean
    def invincible: Boolean
  }

  def main(args: Array[String]) {
    object settings extends Settings {
      var modelUrl: URL = OpenParse.defaultModelUrl
      var outputFile: Option[File] = None
      var sentenceFile: File = null

      var confidenceThreshold = 0.0;
      var expandArguments: Boolean = true
      var verbose: Boolean = false

      var parallel: Boolean = false
      var invincible: Boolean = false
    }

    val parser = new OptionParser("openparse-cli") {
      arg("sentences", "sentence file", { path: String => 
        val file = new File(path)
        require(file.exists, "file does not exist: " + path)
        settings.sentenceFile = file
      })
      opt(Some("m"), "model", "<file>", "model file", { path: String => 
        val file = new File(path)
        require(file.exists, "file does not exist: " + path)
        settings.modelUrl = file.toURI.toURL 
      })
      doubleOpt(Some("t"), "threshold", "<threshold>", "confident threshold for shown extractions", { t: Double => settings.confidenceThreshold = t })
      opt("o", "output", "output file (otherwise stdout)", { path => settings.outputFile = Some(new File(path)) })

      opt("x", "expand-arguments", "expand extraction arguments", { settings.expandArguments = true })
      opt("v", "verbose", "", { settings.verbose = true })

      opt("p", "parallel", "", { settings.parallel = true })
      opt("invincible", "", { settings.invincible = true })
    }

    if (parser.parse(args)) {
      logger.info("args: " + args.mkString(" "))
      run(settings)
    }
  }

  def run(settings: Settings) {
    val parser = new MaltParser
    def parse(line: String): Option[DependencyGraph] = {
      Some(parser.dependencyGraph(line))
    }

    val other = new OpenParse.Settings {
      var modelUrl = settings.modelUrl
      var outputFile = settings.outputFile
      var sentenceFile = settings.sentenceFile 
      var confidenceThreshold = settings.confidenceThreshold 
      val duplicates = false
      var expandArguments = settings.expandArguments 
      val showAll = false
      var verbose = settings.verbose 
      val collapseVB = false
      var parallel = settings.parallel 
      var invincible = settings.invincible 
    }

    OpenParse.run(other, parse)
  }
}


================================================
FILE: app/src/main/scala/edu/knowitall/openparse/OpenParseGui.scala
================================================
package edu.knowitall.openparse

import java.awt.Cursor
import java.awt.Dimension
import java.io.File
import java.net.URL
import scala.collection.SortedSet
import scala.io.Source
import scala.swing.Action
import scala.swing.BorderPanel
import scala.swing.BorderPanel.Position.Center
import scala.swing.BorderPanel.Position.East
import scala.swing.BorderPanel.Position.North
import scala.swing.BoxPanel
import scala.swing.Button
import scala.swing.ButtonGroup
import scala.swing.CheckMenuItem
import scala.swing.Component
import scala.swing.Dialog
import scala.swing.FileChooser
import scala.swing.FileChooser.Result
import scala.swing.Label
import scala.swing.ListView
import scala.swing.MainFrame
import scala.swing.Menu
import scala.swing.MenuBar
import scala.swing.MenuItem
import scala.swing.Orientation
import scala.swing.RadioMenuItem
import scala.swing.ScrollPane
import scala.swing.Separator
import scala.swing.SimpleSwingApplication
import scala.swing.Slider
import scala.swing.Swing
import scala.swing.TextField
import scala.swing.event.ButtonClicked
import scala.swing.event.SelectionChanged
import scala.swing.event.ValueChanged
import scala.util.control.Exception.catching
import org.apache.batik.swing.JSVGCanvas
import org.apache.batik.swing.svg.JSVGComponent
import edu.knowitall.common.Resource.using
import edu.knowitall.common.Timing.Seconds
import edu.knowitall.common.Timing.time
import edu.knowitall.openparse.eval.Score
import edu.knowitall.openparse.extract.Extraction
import edu.knowitall.openparse.extract.PatternExtractorType
import edu.knowitall.openparse.gui.Dot
import edu.knowitall.openparse.gui.ExtractionEntry
import edu.knowitall.openparse.gui.Parser
import edu.knowitall.openparse.gui.Parser.ParserEnum
import edu.knowitall.openparse.gui.Sentence
import edu.knowitall.tool.parse.DependencyParser
import edu.knowitall.tool.parse.graph.DependencyGraph
import edu.knowitall.tool.parse.graph.DependencyGraph.SerializationException
import edu.knowitall.tool.parse.graph.DependencyGraph.deserialize
import edu.knowitall.tool.parse.graph.DependencyNode
import scopt.OptionParser
import edu.knowitall.ollie.DependencyGraphExtras
import scala.swing.event.KeyPressed
import scala.swing.event.Key
import scala.swing.event.KeyReleased
import edu.knowitall.openparse.eval.GoldSet

object OpenParseGui extends SimpleSwingApplication {
  /** Which parser we are using. */
  var parser: Option[(Parser.ParserEnum, DependencyParser)] = None

  /** Which extractor we are using. */
  var extractor: Option[OpenParse] = None

  /** Which graph is presently being used. */
  var current: Option[DependencyGraph] = None

  /** A gold set of annotations. */
  var gold: Map[String, Boolean] = Map.empty

  /** Which sentences are associated with the slider bar. */
  var sentences: Seq[Sentence] = Seq.empty

  /** The present sentence index. */
  var sentenceIndex = 0;

  /** What to perform on a node click in the graph. */
  var nodeClickEvent: String=>Unit = (nodeText: String) => Unit

  object Settings {
    var rawMatches = false
    var graphvizFile: Option[File] = None // use PATH by default
    var modelUrl: URL = OpenParse.defaultModelUrl
    var sentenceFile: Option[File] = None
    var confidenceThreshold: Double = 0.0
    var goldFile: Option[File] = None

    def configuration = new OpenParse.Configuration(confidenceThreshold = this.confidenceThreshold, collapseGraph = false)
  }

  object Elements {
    val scrollBar = new Slider() {
      orientation = Orientation.Horizontal
      value = 0
      min = 0
      max = 0
      majorTickSpacing = 1
      enabled = false

      def adjust() = {
        if (sentences.size > 1) {
          min = 0
          max = sentences.size - 1
          this.enabled = true
        } else {
          value = 0
          min = 0
          max = 0
          this.enabled = false
        }
      }
    }
  }

  override def main(args: Array[String]) = {
    val parser = new OptionParser("openparse-gui") {
      opt(Some("i"), "input", "<file>", "input file", { v: String => Settings.sentenceFile = Some(new File(v)) })
      opt(Some("m"), "model", "<file>", "model file", { v: String => Settings.modelUrl = new File(v).toURI.toURL })
      doubleOpt(Some("t"), "threshold", "<threshold>", "confident threshold for shown extractions", {
        t: Double => Settings.confidenceThreshold = t
      })
      opt(Some("g"), "gold", "<gold set>", "gold set", { v: String => Settings.goldFile = Some(new File(v)) })
      opt(None, "graphviz", "<file>", "path to graphviz", { v: String => Settings.graphvizFile = Some(new File(v)) })
    }

    if (parser.parse(args)) {
      extractor = Some(OpenParse.fromModelUrl(Settings.modelUrl, Settings.configuration))

      Settings.goldFile.foreach { goldFile =>
        gold = GoldSet.load(goldFile)
      }

      Settings.sentenceFile.foreach { sentenceFile => loadSentences(sentenceFile) }

      super.main(args)
    }
  }

  /** Helper to pop up a dialog to find a file. */
  def choose(default: Option[File] = None): Option[File] = {
    import FileChooser.Result

    val chooser = new FileChooser
    default.map(chooser.selectedFile = _)

    chooser.showOpenDialog(null) match {
      case Result.Approve => Option(chooser.selectedFile)
      case Result.Cancel | Result.Error => None
    }
  }

  def chooseSave(default: Option[File] = None): Option[File] = {
    import FileChooser.Result

    val chooser = new FileChooser
    default.map(chooser.selectedFile = _)

    chooser.showSaveDialog(null) match {
      case Result.Approve => Option(chooser.selectedFile)
      case Result.Cancel | Result.Error => None
    }
  }

  def loadParser(parserType: ParserEnum): Unit =
    parser = Some(Parser.load(parserType))

  def loadParserIfNone(): Unit = parser match {
    case Some(parser) => // nothing
    case None => loadParser(Parser.default)
  }

  def readSentences(file: File): Array[Sentence] = {
    import DependencyGraph._

    // read the sentences
    using (Source.fromFile(file)) { source =>
      val lines = source.getLines.buffered

      val parts = lines.head.split("\t")

      // check if any part is deserializable
      val graphIndex = parts.iterator.indexWhere { column =>
        catching(classOf[SerializationException]).opt {
          deserialize(column).collapse
        }.isDefined
      }

      lines.map { line =>
        val parts = line.split("\t")

        if (graphIndex != -1) {
          Sentence.Graph(deserialize(parts(graphIndex)).collapse)
        }
        else {
          Sentence.Text(parts(0))
        }
      }.toArray
    }
  }

  def loadSentences(): Boolean = {
    choose(Settings.sentenceFile) map { file =>
      Settings.sentenceFile = Some(file)
      loadSentences(Settings.sentenceFile.get)
    } match {
      case Some(_) => true
      case None => false
    }
  }

  def loadSentences(file: File) = {
    this.sentences = readSentences(file)

    sentenceIndex = 0
    Elements.scrollBar.value = 0
    Elements.scrollBar.adjust()
  }

  def loadExtractor(extractorType: Option[PatternExtractorType]) = {
    extractor = None
  }

  def top: MainFrame = new MainFrame {
    title = "OpenParse Explorer"
    minimumSize = new Dimension(400, 200)

    // helper methods
    def withCursor(c: java.awt.Cursor)(block: => Unit) =
      try {
        cursor = c
        block
      } finally {
        cursor = Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)
      }

    def withWaitCursor =
      withCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)) _

    def orReport(block: =>Unit) =
      try {
        block
      }
      catch {
        case e => e.printStackTrace; Dialog.showMessage(message = e.toString)
      }

    def andReport(block: =>Unit) =
      try {
        block
      }
      catch {
        case e => Dialog.showMessage(message = e.toString); throw e
      }

    // important ui elements
    val button = new Button {
      text = "Process"
    }

    val field = new TextField

    val extractionList = new ListView[ExtractionEntry]() {
      listenTo(keys)
      reactions += {
        case KeyPressed(_, Key.Equals, _, _) if this.selection.items.size > 0 =>
          val selection = this.selection.items(0)
          val item = selection.toString.dropWhile(_ != '(')
          gold += item -> true
          this.listData = this.listData.map {
            case item if item == selection => item.annotate(true)
            case other => other
          }
        case KeyReleased(_, Key.Minus, _, _) if this.selection.items.size > 0  =>
          val selection = this.selection.items(0)
          val item = selection.toString.dropWhile(_ != '(')
          gold += item -> false
          this.listData = this.listData.map {
            case item if item == selection => item.annotate(false)
            case other => other
          }
        case KeyReleased(_, Key.Space, _, _) if this.selection.items.size > 0  =>
          val selection = this.selection.items(0)
          val item = selection.toString.dropWhile(_ != '(')
          gold += item -> false
          this.listData = this.listData.map {
            case item if item == selection => item.unannotate
            case other => other
          }
      }
    }

    val label = new Label()

    this.defaultButton = button

    def updateDocument(dgraph: DependencyGraph, dot: String) {
      val svg = Dot.dot2svg(Settings.graphvizFile, dot)
      val doc = Dot.svg2xml(svg, nodeClickEvent)
      canvas.setDocument(doc)
      OpenParseGui.current = Some(dgraph)
    }

    def updateDocument(dgraph: DependencyGraph, extr: ExtractionEntry) {
      val entry = extractionList.selection.items(0)
      val dot = Dot.dotgraph(dgraph, entry)
      updateDocument(dgraph, dot)
    }

    def updateDocument(dgraph: DependencyGraph, nodes: Set[DependencyNode]) {
      val dot = Dot.dotgraph(dgraph, nodes)
      updateDocument(dgraph, dot)
    }

    def updateDocument(dgraph: DependencyGraph) {
      updateDocument(Sentence.Graph(dgraph))
    }

    def updateDocument(sentence: Sentence) {
      field.text = sentence.toString

      val (parseTime, dgraph) = time(parse(sentence))
      val (extractTime, extractions) = time(extract(dgraph))

      extractionList.listData = extractions

      val dot = dgraph.dot("\\n"+dgraph.text)
      updateDocument(dgraph, dot)

      label.text = sentence match {
        case Sentence.Graph(_) => "Input contains dependency graph.  Sentence will not be reparsed."
        case Sentence.Text(_) =>
          parser.map("Parsed using '"+_._2.getClass.getSimpleName+"' in "+Seconds.format(parseTime)+".  ").getOrElse {
            "No parsers selected."
          } +
          "Extracted in "+Seconds.format(extractTime)+"."
      }
    }

    val canvas = new JSVGCanvas
    canvas.setDocumentState(JSVGComponent.ALWAYS_DYNAMIC)

    // menu definition
    def menu = {
      def parserMenuItem(parserType: ParserEnum) = {
        new RadioMenuItem(parserType.toString) {
          this.selected = Parser.default == parserType
          action = Action(this.text) {
            withWaitCursor {
              andReport {
                loadParser(parserType)
                this.selected = true
              }
            }
          }
        }
      }

      def expandMenuItem(display: String, expand: (DependencyGraph,DependencyNode)=>SortedSet[DependencyNode]) = {
        new RadioMenuItem(display) {
          action = Action(display) {
            nodeClickEvent = (nodeText: String) => {
              current.map { dgraph =>
                withWaitCursor {
                  dgraph.nodes.find(_.toFullString.startsWith(nodeText)) match {
                    case Some(node) => updateDocument(dgraph, expand(dgraph, node).toSet)
                    case None => System.err.println("error: node not found: " + nodeText)
                  }
                }
              }
            }
          }
        }
      }

      new MenuBar {
        val parserOptions = Parser.values.map(parserMenuItem(_)).toList

        val expandOptions =
          List(expandMenuItem("Expand Argument", (dgraph: DependencyGraph, node: DependencyNode)=>
            Extraction.expandArgument(dgraph, node, Set())),
          expandMenuItem("Expand Relation", (dgraph: DependencyGraph, node: DependencyNode)=>
            Extraction.expandRelation(dgraph, node, Set()).head.nodes))

        val parserMutex = new ButtonGroup(parserOptions: _*)
        val expandMutex = new ButtonGroup(expandOptions: _*)

        contents += new Menu("File") {
          contents += new MenuItem(Action("Load gold set...") {
            withWaitCursor {
              choose(Settings.goldFile) match {
                case Some(file) =>
                  gold = GoldSet.load(file)
                  extractionList.listData = extractionList.listData.map(entry => entry.copy(correct = gold.get(entry.string)))
                case None =>
              }
            }
          })
          contents += new MenuItem(Action("Save gold set...") {
            withWaitCursor {
              chooseSave(Settings.goldFile) match {
                case Some(file) => GoldSet.save(gold, file)
                case None =>
              }
            }
          })
          contents += new Separator()
          contents += new MenuItem(Action("Search Sentences...") {
            withWaitCursor {
              val query = Dialog.showInput(null, message="Enter the sentence text to search for.", title="Search Sentences", Dialog.Message.Plain, Swing.EmptyIcon, Seq(), "")
              query match {
                case Some(query) =>
                  val index = sentences.indexWhere {
                    case Sentence.Text(s) => s.contains(query)
                    case Sentence.Graph(g) => g.text.contains(query)
                  }

                  if (index >= 0) {
                    sentenceIndex = index
                    Elements.scrollBar.value = index
                    updateDocument(sentences(index))
                  }
                case None => label.text = "No results found."
              }
            }
          })
          contents += new MenuItem(Action("Next Extraction...") {
            withWaitCursor {
              sentences.zipWithIndex.drop(sentenceIndex).foreach {
                case (sentence, index) =>
                  val dgraph = parse(sentence)
                  val extractions = extract(dgraph)

                  if (extractions.size > 0) {
                    sentenceIndex = index
                    Elements.scrollBar.value = index
                    Elements.scrollBar.adjust()
                    updateDocument(dgraph)
                  }
              }
            }
          })
          contents += new Separator()
          contents += new MenuItem(Action("Load Sentences...") {
            withWaitCursor {
              if (loadSentences()) {
                Elements.scrollBar.adjust()
                sentences.headOption.map(updateDocument)
              }
            }
          })
          contents += new MenuItem(Action("Clear Sentences...") {
            sentences = Seq.empty
            Elements.scrollBar.adjust
          })
          contents += new Separator()
          contents += new MenuItem(Action("Exit") { exit() })
        }
        contents += new Menu("Options") {
          contents += new CheckMenuItem("Raw Matches") {
            selected = Settings.rawMatches
            action = Action("Raw Matches") {
              if (this.selected) {
                Settings.rawMatches = true
              } else {
                Settings.rawMatches = false
              }
            }
          }
          contents += new MenuItem(Action("Switch Voice") {
            current.flatMap(dgraph => new DependencyGraphExtras(dgraph).switchVoice.headOption).foreach { dgraph =>
              updateDocument(dgraph)
            }
          })
          contents += new Menu("Parser") {
            contents ++= parserOptions
          }
          contents += new Menu("Click") {
            contents ++= expandOptions
          }
          contents += new Separator()
          contents += new MenuItem(Action("Load default model") {
            extractor = Some(OpenParse.fromModelUrl(OpenParse.defaultModelUrl))
          })
          contents += new MenuItem(Action("Load model...") {
            choose(None) map { file =>
              extractor = Some(OpenParse.fromModelFile(file))
            }
          })
        }
      }
    }

    // user interface
    val ui = new BorderPanel() {
      import BorderPanel.Position._

      val panel = new BoxPanel(Orientation.Vertical) {
        val input = new BorderPanel {
          layout(field) = Center
          layout(button) = East
        }

        contents += input
        contents += Swing.VStrut(10)
        contents += label
        contents += Swing.VStrut(10)
        contents += Elements.scrollBar
        contents += Swing.VStrut(5)
      }
      layout(panel) = North

      val display = new BoxPanel(Orientation.Horizontal) {
        contents += new ScrollPane {
          minimumSize = new Dimension(0, Int.MaxValue)
          maximumSize = new Dimension(200, Int.MaxValue)
          contents = extractionList
        }
        contents += new Component {
          override lazy val peer = canvas
        }
      }
      layout(display) = Center

      listenTo(button)
      listenTo(extractionList.selection)
      listenTo(Elements.scrollBar)

      reactions += {
        case ButtonClicked(b) =>
          withWaitCursor {
            if (field.text.trim.length > 0) {
              val sentence = Sentence(field.text)

              // update state
              if (sentences.isEmpty || sentence != sentences(sentenceIndex)) {
                sentences = sentences.take(sentenceIndex + 1) :+ sentence
              }
              Elements.scrollBar.adjust
              sentenceIndex = Elements.scrollBar.max
              Elements.scrollBar.value = Elements.scrollBar.max

              updateDocument(sentence)
            }
          }

        case SelectionChanged(`extractionList`) => {
          if (extractionList.listData.size > 0) {
            if (extractionList.selection.items.size > 0) {
              withWaitCursor {
                current.map { dgraph =>
                  updateDocument(dgraph, extractionList.selection.items(0))
                }
              }
            }
          }
        }

        case ValueChanged(Elements.scrollBar) => if (sentenceIndex != Elements.scrollBar.value) {
          withWaitCursor {
            if (sentences.indices.contains(Elements.scrollBar.value)) {
              sentenceIndex = Elements.scrollBar.value
              try {
                updateDocument(sentences(sentenceIndex))
              }
              catch {
                case e => e.printStackTrace
              }
            }
          }
        }
      }
    }

    contents = ui
    menuBar = menu
  }

  def parse(sentence: Sentence) = {
    sentence match {
      case Sentence.Text(text) =>
        loadParserIfNone()
        val dgraph = parser.get._2.dependencyGraph(text).collapse
        extractor.map(_.simplifyGraph _) match {
          case Some(f) => f(dgraph)
          case None => dgraph
        }
      case Sentence.Graph(dgraph) =>
        dgraph
    }
  }

  def extract(dgraph: DependencyGraph) = {
    extractor.map { extractor =>
      if (!Settings.rawMatches) {
        val extractions = for {
          (conf, extr) <- extractor.extract(dgraph)
        } yield {
          new ExtractionEntry(conf, extr, parser.map(_._1).getOrElse(Parser.Deserialize), gold.get(extr.toString))
        }

        extractions.sortBy(_.confidence).reverse
      } else {
        val extractions = for {
          ex <- extractor.extractors
          m <- ex.pattern(dgraph.graph)
        } yield {
          ExtractionEntry(None, m, m.nodes.toSet, ex, parser.map(_._1).getOrElse(Parser.Deserialize), m.nodes.iterator.map(_.string).mkString(" "), None)
        }

        extractions.sortBy(_.confidence).reverse

      }
    }.getOrElse(Seq.empty)
  }

  def exit() {
    System.exit(0)
  }
}


================================================
FILE: app/src/main/scala/edu/knowitall/openparse/gui/Dot.scala
================================================
package edu.knowitall.openparse.gui

import edu.knowitall.openparse.extract.TemplateExtractor
import edu.knowitall.common.Resource.using
import edu.knowitall.tool.parse.graph.DependencyGraph
import edu.knowitall.tool.parse.graph.DependencyNode
import java.io.IOException
import scala.swing.Dialog
import scala.io.Source
import java.io.InputStream
import java.io.OutputStream
import java.io.PrintWriter
import java.io.File

/** Code pertaining to rendering and converting DOT graphs. */
object Dot {
  def dot2svg(graphvizFile: Option[File], dotgraph: String) = {
    import sys.process.ProcessIO

    trait InputHandler[A] {
      def handle(a: A)(input: OutputStream)
    }

    trait OutputHandler[A] {
      def handle(output: InputStream)
      def value: A
    }

    val errHandler = new OutputHandler[String] {
      var value: String = null

      def handle(out: InputStream) {
        value = Source.fromInputStream(out).mkString
        out.close()
      }
    }

    val inputHandler = new InputHandler[String] {
      def handle(a: String)(os: OutputStream) {
        val pw = new PrintWriter(os)
        pw write a
        pw.close()
      }
    }

    val outputHandler = new OutputHandler[String] {
      var value: String = null

      def handle(out: InputStream) {
        value = Source.fromInputStream(out).mkString
        out.close()
      }
    }
    val io = new ProcessIO(inputHandler.handle(dotgraph), outputHandler.handle, errHandler.handle, false)

    val process = graphvizFile match {
      case Some(file) => sys.process.Process(file.getAbsolutePath, Seq("-T", "svg"))
      case None => sys.process.Process("dot", Seq("-T", "svg"))
    }

    val proc = try (process run io)
    catch {
      case e: IOException =>
        Dialog.showMessage(message = e.getMessage() + ". You may need to install graphviz and add it to the PATH variable, or specify the path to the dot program using the '--graphviz' argument.", messageType = Dialog.Message.Error)
        throw e
    }

    proc.exitValue() match {
      case 0 => outputHandler.value
      case x => sys.error("Dot exited with error code: " + x + " with output:\n" + errHandler.value)
    }
  }

  def svg2xml(svgString: String, nodeClickEvent: String=>Unit) = {
    import org.apache.batik.dom.svg.SVGDOMImplementation;
    import org.apache.batik.util.XMLResourceDescriptor
    import org.apache.batik.dom.svg.SAXSVGDocumentFactory

    val uri = SVGDOMImplementation.SVG_NAMESPACE_URI;

    val doc = using(new java.io.StringReader(svgString)) { reader =>
      val parser = XMLResourceDescriptor.getXMLParserClassName();
      val f = new SAXSVGDocumentFactory(parser);
      f.createSVGDocument(uri, reader);
    }

    val gs = doc.getElementsByTagNameNS(uri, "g")
    for (i <- 0 until gs.getLength) {
      val g = gs.item(i)
      val attributes = g.getAttributes
      val clazz = attributes.getNamedItem("class").getNodeValue

      if (clazz == "node") {
        val children = g.getChildNodes
        for (j <- 0 until children.getLength) {
          val child = children.item(j)
          if (child.getNodeName == "title") {
            val text = child.getFirstChild.getNodeValue

            import org.w3c.dom.events._
            g.asInstanceOf[EventTarget].addEventListener("click",
              new EventListener() {
                def handleEvent(e: Event) { nodeClickEvent(text) }
              },
              true);
          }
        }
      }
    }

    doc
  }

  def dotgraph(dgraph: DependencyGraph, nodes: Set[DependencyNode]) = {
    val nodeStyle = nodes.map((_, "style=filled,color=lightblue"))
    dgraph.dot(dgraph.text, nodeStyle.toMap, Map.empty)
  }

  def dotgraph(dgraph: DependencyGraph, extraction: ExtractionEntry) = {
    def originalNodes(nodes: Iterable[DependencyNode]) = nodes.map { node =>
      dgraph.nodes.find(_.indices == node.indices).get
    }

    val title = "\\n" + dgraph.text + "\\n" + extraction.toString + "\\n" + extraction.`match`.pattern.toStringF((s: String) => if (s.length < 60) s else s.take(20) + "...") +
      (extraction.extractor match { case ex: TemplateExtractor => "\\n" + ex.template case _ => "" })

    // nodes
    val darkNodes = extraction.`match`.nodeGroups
    val lightNodes = originalNodes(extraction.nodes).toSet -- originalNodes(darkNodes.map(_._2.node))
    val filledNodes = (lightNodes zip Stream.continually("style=filled,fillcolor=lightgray")) ++
      (darkNodes.map { nodeGroup =>
        val style = "style=filled,fillcolor=" + (nodeGroup._1 match {
          case "rel" => "salmon1"
          case "arg1" | "arg2" => "lightblue"
          case "slot0" | "slot1" | "slot2" | "slot3" => "seashell"
          case _ => "yellow"
        })

        (nodeGroup._2.node, style)
      })

    // edges
    val solidEdges = extraction.edges.toSet

    val nodeStyle = filledNodes
    val edgeStyle = (solidEdges zip Stream.continually("style=filled")) ++
      ((dgraph.graph.edges.toSet -- solidEdges.toSet) zip Stream.continually("style=dotted,color=gray"))

    dgraph.dot(title, nodeStyle.toMap, edgeStyle.toMap)
  }
}

================================================
FILE: app/src/main/scala/edu/knowitall/openparse/gui/ExtractionEntry.scala
================================================
package edu.knowitall.openparse.gui

import edu.knowitall.collection.immutable.graph.pattern.Match
import edu.knowitall.tool.parse.graph.DependencyNode
import edu.knowitall.openparse.extract.PatternExtractor
import edu.knowitall.openparse.extract.DetailedExtraction

/**
  * A more generic representation of an extraction.
  *
  * This is needed to allow for raw matches, which do
  * not have an arg1, rel, etc.
  */
case class ExtractionEntry(
  confidence: Option[Double],
  `match`: Match[DependencyNode],
  nodes: Set[DependencyNode],
  extractor: PatternExtractor,
  parser: Parser.ParserEnum,
  string: String = "",
  correct: Option[Boolean]) {

  /**
    * Convenient constructor for instantiating from
    * an OpenParse extraction.
    */
  def this(confidence: Double, extraction: DetailedExtraction, parser: Parser.ParserEnum, correct: Option[Boolean] = None) = this(Some(confidence), extraction.`match`, extraction.nodes.toSet, extraction.extractor, parser, extraction.toString, correct)

  def edges = `match`.edges

  def annotate(correct: Boolean) = this.copy(correct = Some(correct))
  def unannotate = this.copy(correct = None)

  private def goldString = {
    correct match {
      case Some(true) => "+ "
      case Some(false) => "- "
      case None => ""
    }
  }

  override def toString = confidence.map("%1.4f:" format _).getOrElse("") + goldString + string
}

================================================
FILE: app/src/main/scala/edu/knowitall/openparse/gui/Parser.scala
================================================
package edu.knowitall.openparse.gui

import edu.knowitall.tool.parse.DependencyParser
import edu.knowitall.tool.parse.MaltParser
import edu.knowitall.tool.parse.graph.Dependencies
import edu.knowitall.tool.parse.graph.DependencyGraph

/** An enumerator for parser options */
object Parser extends Enumeration {
  type ParserEnum = Value

  val Deserialize = Value("Deserialize")
  val Stanford = Value("Stanford")
  val MaltL = Value("Malt (Linear)")
  val MaltPoly = Value("Malt (Poly)")

  def default = MaltL

  def load(parserType: ParserEnum): (ParserEnum, DependencyParser) = parserType match {
    case Parser.Stanford => (parserType, new edu.knowitall.tool.parse.StanfordParser)
    case Parser.MaltL => (parserType, new MaltParser())
    case Parser.MaltPoly => (parserType, new MaltParser(modelUrl = new java.io.File("engmalt.poly-1.7.mco").toURI.toURL))
    case Parser.Deserialize => (parserType, new DependencyParser() {
      override def dependencies(input: String) = Dependencies.deserialize(input)
      override def dependencyGraph(input: String) = DependencyGraph.deserialize(input)
    })
  }
}


================================================
FILE: app/src/main/scala/edu/knowitall/openparse/gui/Sentence.scala
================================================
package edu.knowitall.openparse.gui

import scala.util.control.Exception.catching

import edu.knowitall.tool.parse.graph.DependencyGraph
import edu.knowitall.tool.parse.graph.DependencyGraph.SerializationException
import edu.knowitall.tool.parse.graph.DependencyGraph.deserialize

/** A representation of the input sentence. */
sealed abstract class Sentence
object Sentence {
  case class Text(text: String) extends Sentence {
    override def toString = text
  }
  case class Graph(dgraph: DependencyGraph) extends Sentence {
    override def toString = dgraph.serialize
  }

  def apply(string: String): Sentence = {
    import DependencyGraph._

    catching(classOf[SerializationException]).opt {
      deserialize(string)
    } match {
      case Some(dgraph) => Graph(dgraph)
      case None => Text(string)
    }
  }
}

================================================
FILE: app/src/test/resources/logback-test.xml
================================================
<?xml version="1.0"?>
<configuration>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type
         ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>
  <root level="info">
    <appender-ref ref="STDOUT"/>
  </root>
</configuration>


================================================
FILE: core/build.sbt
================================================
organization := "edu.washington.cs.knowitall.ollie"

name := "ollie-core"

description := "Wrapper and implementation for extractors of chunked sentences."

version := "1.0.4-SNAPSHOT"

crossScalaVersions := Seq("2.9.2", "2.10.1")

scalaVersion <<= crossScalaVersions { (vs: Seq[String]) => vs.head }

libraryDependencies ++= Seq(
    "edu.washington.cs.knowitall.nlptools" %% "nlptools-core" % "2.4.1",
    "edu.washington.cs.knowitall.nlptools" %% "nlptools-conf-breeze" % "2.4.1",
    "edu.washington.cs.knowitall.nlptools" %% "nlptools-stem-morpha" % "2.4.1",
    "org.slf4j" % "slf4j-api" % "1.7.2",
    "org.scalaz" %% "scalaz-core" % "7.0.0",
    "ch.qos.logback" % "logback-classic" % "1.0.9" % "test",
    "ch.qos.logback" % "logback-core" % "1.0.9" % "test",
    "junit" % "junit" % "4.11" % "test",
    "org.specs2" %% "specs2" % "1.12.3" % "test")

scalacOptions ++= Seq("-unchecked", "-deprecation")

licenses := Seq("Ollie Software License Agreement" -> url("https://raw.github.com/knowitall/ollie/master/LICENSE"))

homepage := Some(url("http://ollie.cs.washington.edu"))

publishMavenStyle := true

resolvers += "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"

publishTo <<= version { (v: String) =>
  val nexus = "https://oss.sonatype.org/"
  if (v.trim.endsWith("SNAPSHOT"))
    Some("snapshots" at nexus + "content/repositories/snapshots")
  else
    Some("releases"  at nexus + "service/local/staging/deploy/maven2")
}

pomExtra := (
  <scm>
    <url>https://github.com/knowitall/ollie</url>
    <connection>scm:git://github.com/knowitall/ollie.git</connection>
    <developerConnection>scm:git:git@github.com:knowitall/ollie.git</developerConnection>
    <tag>HEAD</tag>
  </scm>
  <developers>
   <developer>
      <name>Michael Schmitz</name>
    </developer>
    <developer>
      <name>Robert Bart</name>
    </developer>
  </developers>)


================================================
FILE: core/here.txt
================================================
score	conf	op-conf	yield	precision	extr	enabler	attrib	sentence	dependencies	Arg1 Cleanup feature	Arg1 comes after arg2	Arg2 comes before Rel	Args both start and end with nouns	Extr has attribution?	Extr has enabledBy?	Hyp words near rel	If before arg1 and no enabledBy?	Noun-Verb-Noun in arg2	OpenParse Confidence	Prep in arg2?	Prep right after arg2?	Prep right before arg1?	Rel contains VBD	Rel contains VBG	Rel contains VBP	Rel ends with of	Rel head is a communication verb?	Rel starts with "be"?	Sentence starts with extr?	That before rel	Vacuous rel+arg2	Verb after arg2?
										-1.9474	-0.1342	-0.4772	0.1987	0.3096	0.6941	-0.4802	-2.1688	-0.4579	1.304	0.5695	-0.5616	-0.2119	0.6841	-0.4981	0.5545	-0.2275	-0.8676	-0.5553	0.3185	-0.2083	-1.8374	0.2496
1	0.9446846123114957	1.0	0	1.0	(M and N phenotypes; Rather are exhibited by; heterozygotes)[enabler=since both molecules are present]	true	false	Rather , both M and N phenotypes are exhibited by heterozygotes , since both molecules are present .	preconj(M_NNP_3_14, both_DT_2_9); cc(M_NNP_3_14, and_CC_4_16); conj(M_NNP_3_14, phenotypes_NNS_6_22); nn(phenotypes_NNS_6_22, N_NNP_5_20); advmod(exhibited_VBN_8_37, Rather_RB_0_0); punct(exhibited_VBN_8_37, ,_,_1_7); nsubjpass(exhibited_VBN_8_37, M_NNP_3_14); auxpass(exhibited_VBN_8_37, are_VBP_7_33); prep(exhibited_VBN_8_37, by_IN_9_47); punct(exhibited_VBN_8_37, ,_,_11_64); advcl(exhibited_VBN_8_37, present_JJ_16_91); punct(exhibited_VBN_8_37, ._._17_99); pobj(by_IN_9_47, heterozygotes_NNS_10_50); det(molecules_NNS_14_77, both_DT_13_72); mark(present_JJ_16_91, since_IN_12_66); nsubj(present_JJ_16_91, molecules_NNS_14_77); cop(present_JJ_16_91, are_VBP_15_87)	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9378010670485936	1.0	2	1.0	(The companies; are followed by; at least three analysts)	false	false	The companies are followed by at least three analysts , and had a minimum five-cent change in actual earnings per share .	det(companies_NNS_1_4, The_DT_0_0); nsubjpass(followed_VBN_3_18, companies_NNS_1_4); auxpass(followed_VBN_3_18, are_VBP_2_14); prep(followed_VBN_3_18, by_IN_4_27); punct(followed_VBN_3_18, ,_,_9_54); cc(followed_VBN_3_18, and_CC_10_56); conj(followed_VBN_3_18, had_VBD_11_60); punct(followed_VBN_3_18, ._._21_120); pobj(by_IN_4_27, analysts_NNS_8_45); dep(at_IN_5_30, least_JJS_6_33); quantmod(three_CD_7_39, at_IN_5_30); num(analysts_NNS_8_45, three_CD_7_39); dobj(had_VBD_11_60, change_NN_15_84); det(change_NN_15_84, a_DT_12_64); amod(change_NN_15_84, minimum_JJ_13_66); amod(change_NN_15_84, five-cent_JJ_14_74); prep(change_NN_15_84, in_IN_16_91); pobj(in_IN_16_91, earnings_NNS_18_101); amod(earnings_NNS_18_101, actual_JJ_17_94); prep(earnings_NNS_18_101, per_IN_19_110); pobj(per_IN_19_110, share_NN_20_114)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9339431602264946	1.0	3	1.0	(he; was called back from; the loan)[enabler=CSKA qualified for the round of 16 of the UEFA Cup 2008]	true	false	After CSKA qualified for the round of 16 of the UEFA Cup 2008 , he was called back from the loan and on 12 March 2009 was registered as a CSKA player .	pobj(After_IN_0_0, CSKA_NNP_1_6); prep(qualified_VBD_2_11, After_IN_0_0); prep(qualified_VBD_2_11, for_IN_3_21); pobj(for_IN_3_21, round_NN_5_29); det(round_NN_5_29, the_DT_4_25); prep(round_NN_5_29, of_IN_6_35); pobj(of_IN_6_35, 16_CD_7_38); prep(16_CD_7_38, of_IN_8_41); pobj(of_IN_8_41, Cup_NNP_11_53); det(Cup_NNP_11_53, the_DT_9_44); nn(Cup_NNP_11_53, UEFA_NNP_10_48); num(Cup_NNP_11_53, 2008_CD_12_57); advcl(called_VBN_16_71, qualified_VBD_2_11); punct(called_VBN_16_71, ,_,_13_62); nsubjpass(called_VBN_16_71, he_PRP_14_64); auxpass(called_VBN_16_71, was_VBD_15_67); advmod(called_VBN_16_71, back_RB_17_78); prep(called_VBN_16_71, from_IN_18_83); cc(called_VBN_16_71, and_CC_21_97); conj(called_VBN_16_71, registered_VBN_27_122); punct(called_VBN_16_71, ._._32_150); pobj(from_IN_18_83, loan_NN_20_92); det(loan_NN_20_92, the_DT_19_88); pobj(on_IN_22_101, March_NNP_24_107); num(March_NNP_24_107, 12_CD_23_104); num(March_NNP_24_107, 2009_CD_25_113); prep(registered_VBN_27_122, on_IN_22_101); auxpass(registered_VBN_27_122, was_VBD_26_118); prep(registered_VBN_27_122, as_IN_28_133); pobj(as_IN_28_133, player_NN_31_143); det(player_NN_31_143, a_DT_29_136); nn(player_NN_31_143, CSKA_NNP_30_138)	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.9323012325715606	0.7345	4	1.0	(they; played locally throughout; the winter of 2004 and the spring of 2005)[enabler=As the band struggled to find support slots on upcoming tours without the help of a booking agent]	true	false	As the band struggled to find support slots on upcoming tours without the help of a booking agent , they played locally in Southern California throughout the winter of 2004 and the spring of 2005 .	det(band_NN_2_7, the_DT_1_3); mark(struggled_VBD_3_12, As_IN_0_0); nsubj(struggled_VBD_3_12, band_NN_2_7); xcomp(struggled_VBD_3_12, find_VB_5_25); prep(struggled_VBD_3_12, without_IN_11_62); aux(find_VB_5_25, to_TO_4_22); dobj(find_VB_5_25, slots_NNS_7_38); nn(slots_NNS_7_38, support_NN_6_30); prep(slots_NNS_7_38, on_IN_8_44); pobj(on_IN_8_44, tours_NNS_10_56); nn(tours_NNS_10_56, upcoming_NN_9_47); pobj(without_IN_11_62, help_NN_13_74); det(help_NN_13_74, the_DT_12_70); prep(help_NN_13_74, of_IN_14_79); pobj(of_IN_14_79, agent_NN_17_92); det(agent_NN_17_92, a_DT_15_82); nn(agent_NN_17_92, booking_NN_16_84); advcl(played_VBD_20_105, struggled_VBD_3_12); punct(played_VBD_20_105, ,_,_18_98); nsubj(played_VBD_20_105, they_PRP_19_100); advmod(played_VBD_20_105, locally_RB_21_112); prep(played_VBD_20_105, in_IN_22_120); prep(played_VBD_20_105, throughout_IN_25_143); punct(played_VBD_20_105, ._._35_196); pobj(in_IN_22_120, California_NNP_24_132); amod(California_NNP_24_132, Southern_JJ_23_123); pobj(throughout_IN_25_143, winter_NN_27_158); det(winter_NN_27_158, the_DT_26_154); prep(winter_NN_27_158, of_IN_28_165); cc(winter_NN_27_158, and_CC_30_173); conj(winter_NN_27_158, spring_NN_32_181); pobj(of_IN_28_165, 2004_CD_29_168); det(spring_NN_32_181, the_DT_31_177); prep(spring_NN_32_181, of_IN_33_188); pobj(of_IN_33_188, 2005_CD_34_191)	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.9304226589378597	1.0	5	1.0	(A collection of her art; was displayed by; supporters campaigning to release her)	false	false	A collection of her art was displayed at an exhibition in Tehran by supporters campaigning to release her .	det(collection_NN_1_2, A_DT_0_0); prep(collection_NN_1_2, of_IN_2_13); pobj(of_IN_2_13, art_NN_4_20); poss(art_NN_4_20, her_PRP$_3_16); nsubjpass(displayed_VBN_6_28, collection_NN_1_2); auxpass(displayed_VBN_6_28, was_VBD_5_24); prep(displayed_VBN_6_28, at_IN_7_38); prep(displayed_VBN_6_28, by_IN_12_65); punct(displayed_VBN_6_28, ._._18_106); pobj(at_IN_7_38, exhibition_NN_9_44); det(exhibition_NN_9_44, an_DT_8_41); prep(exhibition_NN_9_44, in_IN_10_55); pobj(in_IN_10_55, Tehran_NNP_11_58); pobj(by_IN_12_65, supporters_NNS_13_68); partmod(supporters_NNS_13_68, campaigning_VBG_14_79); xcomp(campaigning_VBG_14_79, release_VB_16_94); aux(release_VB_16_94, to_TO_15_91); dobj(release_VB_16_94, her_PRP_17_102)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.9304226589378597	1.0	6	1.0	(Terry L. Haines; was elected to; the new position of vice president)	false	false	Terry L. Haines , formerly general manager of Canadian operations , was elected to the new position of vice president , North American sales , of this plastics concern .	nn(Haines_NNP_2_9, Terry_NNP_0_0); nn(Haines_NNP_2_9, L._NNP_1_6); punct(Haines_NNP_2_9, ,_,_3_16); appos(Haines_NNP_2_9, manager_NN_6_35); punct(Haines_NNP_2_9, ,_,_10_66); advmod(manager_NN_6_35, formerly_RB_4_18); amod(manager_NN_6_35, general_JJ_5_27); prep(manager_NN_6_35, of_IN_7_43); pobj(of_IN_7_43, operations_NNS_9_55); amod(operations_NNS_9_55, Canadian_JJ_8_46); nsubjpass(elected_VBN_12_72, Haines_NNP_2_9); auxpass(elected_VBN_12_72, was_VBD_11_68); prep(elected_VBN_12_72, to_TO_13_80); punct(elected_VBN_12_72, ,_,_20_118); punct(elected_VBN_12_72, ._._29_168); pobj(to_TO_13_80, position_NN_16_91); det(position_NN_16_91, the_DT_14_83); amod(position_NN_16_91, new_JJ_15_87); prep(position_NN_16_91, of_IN_17_100); pobj(of_IN_17_100, president_NN_19_108); nn(president_NN_19_108, vice_NN_18_103); dobj(,_,_20_118, sales_NNS_23_135); nn(sales_NNS_23_135, North_NNP_21_120); nn(sales_NNS_23_135, American_NNP_22_126); punct(sales_NNS_23_135, ,_,_24_141); prep(sales_NNS_23_135, of_IN_25_143); pobj(of_IN_25_143, concern_NN_28_160); det(concern_NN_28_160, this_DT_26_146); nn(concern_NN_28_160, plastics_NNS_27_151)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.9258278797037348	1.0	7	1.0	(he; was involved in; the building of the 145 m long)	false	false	During his time as a student in Berlin , he was involved in the building of the 145 m long " Tunnel 57 " below the Berlin Wall , which was the escape route of 57 people from East Berlin to the West .	pobj(During_IN_0_0, time_NN_2_11); dep(During_IN_0_0, as_IN_3_16); poss(time_NN_2_11, his_PRP$_1_7); pobj(as_IN_3_16, student_NN_5_21); det(student_NN_5_21, a_DT_4_19); prep(student_NN_5_21, in_IN_6_29); pobj(in_IN_6_29, Berlin_NNP_7_32); prep(involved_VBN_11_48, During_IN_0_0); punct(involved_VBN_11_48, ,_,_8_39); nsubjpass(involved_VBN_11_48, he_PRP_9_41); auxpass(involved_VBN_11_48, was_VBD_10_44); prep(involved_VBN_11_48, in_IN_12_57); punct(involved_VBN_11_48, ._._43_198); pobj(in_IN_12_57, building_NN_14_64); det(building_NN_14_64, the_DT_13_60); prep(building_NN_14_64, of_IN_15_73); pobj(of_IN_15_73, m_NN_18_84); det(m_NN_18_84, the_DT_16_76); num(m_NN_18_84, 145_CD_17_80); amod(m_NN_18_84, long_JJ_19_86); dep(long_JJ_19_86, "_``_23_103); num(Tunnel_NNP_21_93, 57_CD_22_100); punct("_``_23_103, "_``_20_91); nsubj("_``_23_103, Tunnel_NNP_21_93); prep("_``_23_103, below_IN_24_105); pobj(below_IN_24_105, Wall_NNP_27_122); det(Wall_NNP_27_122, the_DT_25_111); nn(Wall_NNP_27_122, Berlin_NNP_26_115); punct(Wall_NNP_27_122, ,_,_28_127); rcmod(Wall_NNP_27_122, route_NN_33_150); nsubj(route_NN_33_150, which_WDT_29_129); cop(route_NN_33_150, was_VBD_30_135); det(route_NN_33_150, the_DT_31_139); nn(route_NN_33_150, escape_NN_32_143); prep(route_NN_33_150, of_IN_34_156); prep(route_NN_33_150, from_IN_37_169); prep(route_NN_33_150, to_TO_40_186); pobj(of_IN_34_156, people_NNS_36_162); num(people_NNS_36_162, 57_CD_35_159); pobj(from_IN_37_169, Berlin_NNP_39_179); nn(Berlin_NNP_39_179, East_NNP_38_174); pobj(to_TO_40_186, West_NNP_42_193); det(West_NNP_42_193, the_DT_41_189)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.92215545568493	1.0	8	1.0	(The Dynix corporation; was founded in; 1983)	false	false	The Dynix corporation was founded in 1983 , and SirsiDynix was formed by the merger of the Sirsi and Dynix corporations in June 2005 .	det(corporation_NN_2_10, The_DT_0_0); nn(corporation_NN_2_10, Dynix_NNP_1_4); nsubjpass(founded_VBN_4_26, corporation_NN_2_10); auxpass(founded_VBN_4_26, was_VBD_3_22); prep(founded_VBN_4_26, in_IN_5_34); punct(founded_VBN_4_26, ,_,_7_42); cc(founded_VBN_4_26, and_CC_8_44); conj(founded_VBN_4_26, formed_VBN_11_63); punct(founded_VBN_4_26, ._._24_133); pobj(in_IN_5_34, 1983_CD_6_37); nsubjpass(formed_VBN_11_63, SirsiDynix_NNP_9_48); auxpass(formed_VBN_11_63, was_VBD_10_59); prep(formed_VBN_11_63, by_IN_12_70); prep(formed_VBN_11_63, in_IN_21_120); pobj(by_IN_12_70, merger_NN_14_77); det(merger_NN_14_77, the_DT_13_73); prep(merger_NN_14_77, of_IN_15_84); pobj(of_IN_15_84, corporations_NNS_20_107); cc(Sirsi_NNP_17_91, and_CC_18_97); conj(Sirsi_NNP_17_91, Dynix_NNP_19_101); det(corporations_NNS_20_107, the_DT_16_87); nn(corporations_NNS_20_107, Sirsi_NNP_17_91); pobj(in_IN_21_120, June_NNP_22_123); num(June_NNP_22_123, 2005_CD_23_128)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.92215545568493	1.0	9	1.0	(The song; was recorded in; 2003)	false	false	The song was recorded in 2003 , and was supposed to be included on her third album " Still " , eventually released under the title " More " .	det(song_NN_1_4, The_DT_0_0); nsubjpass(recorded_VBN_3_13, song_NN_1_4); auxpass(recorded_VBN_3_13, was_VBD_2_9); prep(recorded_VBN_3_13, in_IN_4_22); punct(recorded_VBN_3_13, ,_,_6_30); cc(recorded_VBN_3_13, and_CC_7_32); conj(recorded_VBN_3_13, supposed_VBN_9_40); punct(recorded_VBN_3_13, ._._29_140); pobj(in_IN_4_22, 2003_CD_5_25); auxpass(supposed_VBN_9_40, was_VBD_8_36); xcomp(supposed_VBN_9_40, included_VBN_12_55); punct(supposed_VBN_9_40, ,_,_20_93); dep(supposed_VBN_9_40, released_VBN_22_106); aux(included_VBN_12_55, to_TO_10_49); auxpass(included_VBN_12_55, be_VB_11_52); prep(included_VBN_12_55, on_IN_13_64); pobj(on_IN_13_64, album_NN_16_77); poss(album_NN_16_77, her_PRP$_14_67); amod(album_NN_16_77, third_JJ_15_71); punct(album_NN_16_77, "_''_17_83); advmod(album_NN_16_77, Still_RB_18_85); punct(album_NN_16_77, "_''_19_91); advmod(released_VBN_22_106, eventually_RB_21_95); prep(released_VBN_22_106, under_IN_23_115); pobj(under_IN_23_115, title_NN_25_125); det(title_NN_25_125, the_DT_24_121); dep(title_NN_25_125, More_JJR_27_133); punct(More_JJR_27_133, "_``_26_131); punct(More_JJR_27_133, "_''_28_138)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.920853471440541	1.0	10	1.0	(Such fibers; are specialized in; ways that enable them to make use of a steady energy supply)	false	false	Such fibers are specialized in ways that enable them to make use of a steady energy supply : They have many mitochondria , a rich blood supply , and a large amount of an oxygen-storing protein called myoglobin .	amod(fibers_NNS_1_5, Such_JJ_0_0); nsubjpass(specialized_VBN_3_16, fibers_NNS_1_5); auxpass(specialized_VBN_3_16, are_VBP_2_12); prep(specialized_VBN_3_16, in_IN_4_28); punct(specialized_VBN_3_16, :_:_17_91); parataxis(specialized_VBN_3_16, have_VBP_19_98); punct(specialized_VBN_3_16, ._._38_210); pobj(in_IN_4_28, ways_NNS_5_31); rcmod(ways_NNS_5_31, enable_VBP_7_41); nsubj(enable_VBP_7_41, that_WDT_6_36); xcomp(enable_VBP_7_41, make_VB_10_56); nsubj(make_VB_10_56, them_PRP_8_48); aux(make_VB_10_56, to_TO_9_53); xcomp(make_VB_10_56, use_NN_11_61); prep(use_NN_11_61, of_IN_12_65); pobj(of_IN_12_65, supply_NN_16_84); det(supply_NN_16_84, a_DT_13_68); amod(supply_NN_16_84, steady_JJ_14_70); nn(supply_NN_16_84, energy_NN_15_77); nsubj(have_VBP_19_98, They_PRP_18_93); dobj(have_VBP_19_98, mitochondria_NNS_21_108); punct(have_VBP_19_98, ,_,_27_143); cc(have_VBP_19_98, and_CC_28_145); conj(have_VBP_19_98, called_VBD_36_193); amod(mitochondria_NNS_21_108, many_JJ_20_103); punct(mitochondria_NNS_21_108, ,_,_22_121); conj(mitochondria_NNS_21_108, supply_NN_26_136); det(supply_NN_26_136, a_DT_23_123); amod(supply_NN_26_136, rich_JJ_24_125); nn(supply_NN_26_136, blood_NN_25_130); det(amount_NN_31_157, a_DT_29_149); amod(amount_NN_31_157, large_JJ_30_151); prep(amount_NN_31_157, of_IN_32_164); pobj(of_IN_32_164, protein_NN_35_185); det(protein_NN_35_185, an_DT_33_167); amod(protein_NN_35_185, oxygen-storing_JJ_34_170); nsubj(called_VBD_36_193, amount_NN_31_157); dobj(called_VBD_36_193, myoglobin_NN_37_200)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
0	0.9175510420737124	0.3797	10	0.9090909090909091	(you; learned earlier stimulate; the release of saliva)[enabler=when food enters the oral cavity and orchestrate swallowing when a bolus of food reaches the pharynx]	true	false	For example , you learned earlier that nervous reflexes stimulate the release of saliva when food enters the oral cavity and orchestrate swallowing when a bolus of food reaches the pharynx .	pobj(For_IN_0_0, example_NN_1_4); prep(learned_VBD_4_18, For_IN_0_0); punct(learned_VBD_4_18, ,_,_2_12); nsubj(learned_VBD_4_18, you_PRP_3_14); xcomp(learned_VBD_4_18, stimulate_VB_9_56); punct(learned_VBD_4_18, ._._31_189); det(reflexes_NNS_8_47, that_DT_6_34); amod(reflexes_NNS_8_47, nervous_JJ_7_39); advmod(stimulate_VB_9_56, earlier_RB_5_26); nsubj(stimulate_VB_9_56, reflexes_NNS_8_47); dobj(stimulate_VB_9_56, release_NN_11_70); advcl(stimulate_VB_9_56, enters_VBZ_16_98); det(release_NN_11_70, the_DT_10_66); prep(release_NN_11_70, of_IN_12_78); pobj(of_IN_12_78, saliva_NN_13_81); advmod(enters_VBZ_16_98, when_WRB_14_88); nsubj(enters_VBZ_16_98, food_NN_15_93); dobj(enters_VBZ_16_98, cavity_NN_19_114); advcl(enters_VBZ_16_98, reaches_VBZ_28_169); det(cavity_NN_19_114, the_DT_17_105); amod(cavity_NN_19_114, oral_JJ_18_109); cc(cavity_NN_19_114, and_CC_20_121); conj(cavity_NN_19_114, swallowing_NN_22_137); nn(swallowing_NN_22_137, orchestrate_NN_21_125); det(bolus_NN_25_155, a_DT_24_153); prep(bolus_NN_25_155, of_IN_26_161); pobj(of_IN_26_161, food_NN_27_164); advmod(reaches_VBZ_28_169, when_WRB_23_148); nsubj(reaches_VBZ_28_169, bolus_NN_25_155); dobj(reaches_VBZ_28_169, pharynx_NN_30_181); det(pharynx_NN_30_181, the_DT_29_177)	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.3797	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.9168556659675215	0.9555	11	0.9166666666666666	(The failure in Oakland of the freeway segment; was the deadliest aspect of; the quake)[enabler=although officials were hopeful yesterday that the death toll there might be significantly lower than the 250 initially feared]	true	false	The failure in Oakland of the freeway segment known as the Cypress structure was the deadliest aspect of the quake , although officials were hopeful yesterday that the death toll there might be significantly lower than the 250 initially feared .	det(failure_NN_1_4, The_DT_0_0); prep(failure_NN_1_4, in_IN_2_12); prep(failure_NN_1_4, of_IN_4_23); pobj(in_IN_2_12, Oakland_NNP_3_15); pobj(of_IN_4_23, segment_NN_7_38); det(segment_NN_7_38, the_DT_5_26); nn(segment_NN_7_38, freeway_NN_6_30); partmod(segment_NN_7_38, known_VBN_8_46); prep(known_VBN_8_46, as_IN_9_52); pobj(as_IN_9_52, structure_NN_12_67); det(structure_NN_12_67, the_DT_10_55); nn(structure_NN_12_67, Cypress_NNP_11_59); nsubj(aspect_NN_16_95, failure_NN_1_4); cop(aspect_NN_16_95, was_VBD_13_77); det(aspect_NN_16_95, the_DT_14_81); amod(aspect_NN_16_95, deadliest_JJS_15_85); prep(aspect_NN_16_95, of_IN_17_102); punct(aspect_NN_16_95, ,_,_20_115); advcl(aspect_NN_16_95, hopeful_JJ_24_141); punct(aspect_NN_16_95, ._._40_244); pobj(of_IN_17_102, quake_NN_19_109); det(quake_NN_19_109, the_DT_18_105); mark(hopeful_JJ_24_141, although_IN_21_117); nsubj(hopeful_JJ_24_141, officials_NNS_22_126); cop(hopeful_JJ_24_141, were_VBD_23_136); tmod(hopeful_JJ_24_141, yesterday_NN_25_149); ccomp(hopeful_JJ_24_141, lower_JJR_34_208); det(toll_NN_29_174, the_DT_27_164); nn(toll_NN_29_174, death_NN_28_168); advmod(toll_NN_29_174, there_RB_30_179); complm(lower_JJR_34_208, that_IN_26_159); nsubj(lower_JJR_34_208, toll_NN_29_174); aux(lower_JJR_34_208, might_MD_31_185); cop(lower_JJR_34_208, be_VB_32_191); advmod(lower_JJR_34_208, significantly_RB_33_194); prep(lower_JJR_34_208, than_IN_35_214); pobj(than_IN_35_214, 250_CD_37_223); dep(250_CD_37_223, the_DT_36_219); partmod(250_CD_37_223, feared_VBN_39_237); advmod(feared_VBN_39_237, initially_RB_38_227)	0.0	0.0	0.0	1.0	0.0	1.0	1.0	0.0	0.0	0.9555	0.0	0.0	0.0	1.0	0.0	0.0	1.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9123282402462873	1.0	12	0.9230769230769231	(Capillaries in the brain , heart , kidneys , and liver; are usually filled to; capacity)	false	false	Capillaries in the brain , heart , kidneys , and liver are usually filled to capacity , but at many other sites the blood supply varies over time as blood is diverted from one destination to another .	prep(Capillaries_NNS_0_0, in_IN_1_12); punct(Capillaries_NNS_0_0, ,_,_8_43); cc(Capillaries_NNS_0_0, and_CC_9_45); conj(Capillaries_NNS_0_0, liver_NN_10_49); pobj(in_IN_1_12, brain_NN_3_19); det(brain_NN_3_19, the_DT_2_15); punct(brain_NN_3_19, ,_,_4_25); conj(brain_NN_3_19, heart_NN_5_27); punct(brain_NN_3_19, ,_,_6_33); conj(brain_NN_3_19, kidneys_NNS_7_35); nsubjpass(filled_VBN_13_67, Capillaries_NNS_0_0); auxpass(filled_VBN_13_67, are_VBP_11_55); advmod(filled_VBN_13_67, usually_RB_12_59); prep(filled_VBN_13_67, to_TO_14_74); punct(filled_VBN_13_67, ,_,_16_86); cc(filled_VBN_13_67, but_CC_17_88); conj(filled_VBN_13_67, diverted_VBN_31_158); punct(filled_VBN_13_67, ._._37_199); pobj(to_TO_14_74, capacity_NN_15_77); pobj(at_IN_18_92, sites_NNS_21_106); amod(sites_NNS_21_106, many_JJ_19_95); amod(sites_NNS_21_106, other_JJ_20_100); rcmod(sites_NNS_21_106, varies_VBZ_25_129); det(supply_NN_24_122, the_DT_22_112); nn(supply_NN_24_122, blood_NN_23_116); nsubj(varies_VBZ_25_129, supply_NN_24_122); prep(varies_VBZ_25_129, over_IN_26_136); prep(varies_VBZ_25_129, as_IN_28_146); pobj(over_IN_26_136, time_NN_27_141); pobj(as_IN_28_146, blood_NN_29_149); prep(diverted_VBN_31_158, at_IN_18_92); auxpass(diverted_VBN_31_158, is_VBZ_30_155); prep(diverted_VBN_31_158, from_IN_32_167); prep(diverted_VBN_31_158, to_TO_35_188); pobj(from_IN_32_167, destination_NN_34_176); num(destination_NN_34_176, one_CD_33_172); pobj(to_TO_35_188, another_DT_36_191)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9116540315027888	1.0	13	0.9285714285714286	(The incidence of malaria; was greatly diminished by; insecticides that reduced carrier populations of Anopheles mosquitoes and by drugs that killed Plasmodium in humans)	false	false	The incidence of malaria was greatly diminished in the 1960s by insecticides that reduced carrier populations of Anopheles mosquitoes and by drugs that killed Plasmodium in humans .	det(incidence_NN_1_4, The_DT_0_0); prep(incidence_NN_1_4, of_IN_2_14); pobj(of_IN_2_14, malaria_NN_3_17); nsubjpass(diminished_VBN_6_37, incidence_NN_1_4); auxpass(diminished_VBN_6_37, was_VBD_4_25); advmod(diminished_VBN_6_37, greatly_RB_5_29); prep(diminished_VBN_6_37, in_IN_7_48); prep(diminished_VBN_6_37, by_IN_10_61); punct(diminished_VBN_6_37, ._._27_180); pobj(in_IN_7_48, 1960s_NNS_9_55); det(1960s_NNS_9_55, the_DT_8_51); pobj(by_IN_10_61, insecticides_NNS_11_64); cc(by_IN_10_61, and_CC_19_134); conj(by_IN_10_61, by_IN_20_138); rcmod(insecticides_NNS_11_64, reduced_VBD_13_82); nsubj(reduced_VBD_13_82, that_WDT_12_77); dobj(reduced_VBD_13_82, populations_NNS_15_98); nn(populations_NNS_15_98, carrier_NN_14_90); prep(populations_NNS_15_98, of_IN_16_110); pobj(of_IN_16_110, mosquitoes_NNS_18_123); nn(mosquitoes_NNS_18_123, Anopheles_NNP_17_113); pobj(by_IN_20_138, drugs_NNS_21_141); rcmod(drugs_NNS_21_141, killed_VBD_23_152); nsubj(killed_VBD_23_152, that_WDT_22_147); dobj(killed_VBD_23_152, Plasmodium_NNP_24_159); prep(killed_VBD_23_152, in_IN_25_170); pobj(in_IN_25_170, humans_NNS_26_173)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.9066414837593882	1.0	14	0.9333333333333333	(Byrom; was born at; a major tourist attraction)	false	false	Byrom was born at what is now the Wellington Inn , Manchester , in 1692 , The Wellington Inn is now a major tourist attraction , and his birth is commemorated by a plaque in the bar area .	nsubjpass(born_VBN_2_10, Byrom_NNP_0_0); auxpass(born_VBN_2_10, was_VBD_1_6); prep(born_VBN_2_10, at_IN_3_15); punct(born_VBN_2_10, ,_,_25_127); cc(born_VBN_2_10, and_CC_26_129); conj(born_VBN_2_10, commemorated_VBN_30_146); punct(born_VBN_2_10, ._._38_187); pobj(at_IN_3_15, attraction_NN_24_116); dep(what_WP_4_18, is_VBZ_5_23); advmod(is_VBZ_5_23, now_RB_6_26); prep(is_VBZ_5_23, in_IN_13_64); dep(now_RB_6_26, Inn_NNP_9_45); det(Inn_NNP_9_45, the_DT_7_30); nn(Inn_NNP_9_45, Wellington_NNP_8_34); punct(Inn_NNP_9_45, ,_,_10_49); appos(Inn_NNP_9_45, Manchester_NNP_11_51); punct(Inn_NNP_9_45, ,_,_12_62); pobj(in_IN_13_64, 1692_CD_14_67); det(Inn_NNP_18_89, The_DT_16_74); nn(Inn_NNP_18_89, Wellington_NNP_17_78); dep(attraction_NN_24_116, what_WP_4_18); punct(attraction_NN_24_116, ,_,_15_72); nsubj(attraction_NN_24_116, Inn_NNP_18_89); cop(attraction_NN_24_116, is_VBZ_19_93); advmod(attraction_NN_24_116, now_RB_20_96); det(attraction_NN_24_116, a_DT_21_100); amod(attraction_NN_24_116, major_JJ_22_102); nn(attraction_NN_24_116, tourist_NN_23_108); poss(birth_NN_28_137, his_PRP$_27_133); nsubjpass(commemorated_VBN_30_146, birth_NN_28_137); auxpass(commemorated_VBN_30_146, is_VBZ_29_143); prep(commemorated_VBN_30_146, by_IN_31_159); pobj(by_IN_31_159, plaque_NN_33_164); det(plaque_NN_33_164, a_DT_32_162); prep(plaque_NN_33_164, in_IN_34_171); pobj(in_IN_34_171, area_NN_37_182); det(area_NN_37_182, the_DT_35_174); nn(area_NN_37_182, bar_NN_36_178)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9066414837593882	1.0	15	0.9375	(Guillermo Billinghurst; was overthrown on; February 4 , 1914)	false	false	Guillermo Billinghurst was overthrown on February 4 , 1914 , in a military coup headed by colonel Oscar R. Benavides , Javier and Manuel Prado , and conservatives members of the Civilista Party .	nn(Billinghurst_NNP_1_10, Guillermo_NNP_0_0); nsubjpass(overthrown_VBN_3_27, Billinghurst_NNP_1_10); auxpass(overthrown_VBN_3_27, was_VBD_2_23); prep(overthrown_VBN_3_27, on_IN_4_38); punct(overthrown_VBN_3_27, ,_,_9_59); prep(overthrown_VBN_3_27, in_IN_10_61); punct(overthrown_VBN_3_27, ,_,_25_143); cc(overthrown_VBN_3_27, and_CC_26_145); conj(overthrown_VBN_3_27, members_NNS_28_163); punct(overthrown_VBN_3_27, ._._33_194); pobj(on_IN_4_38, February_NNP_5_41); num(February_NNP_5_41, 4_CD_6_50); punct(February_NNP_5_41, ,_,_7_52); num(February_NNP_5_41, 1914_CD_8_54); pobj(in_IN_10_61, coup_NN_13_75); det(coup_NN_13_75, a_DT_11_64); amod(coup_NN_13_75, military_JJ_12_66); partmod(coup_NN_13_75, headed_VBN_14_80); prep(headed_VBN_14_80, by_IN_15_87); pobj(by_IN_15_87, Benavides_NNP_19_107); nn(Benavides_NNP_19_107, colonel_NN_16_90); nn(Benavides_NNP_19_107, Oscar_NNP_17_98); nn(Benavides_NNP_19_107, R._NNP_18_104); punct(Benavides_NNP_19_107, ,_,_20_117); conj(Benavides_NNP_19_107, Javier_NNP_21_119); cc(Benavides_NNP_19_107, and_CC_22_126); conj(Benavides_NNP_19_107, Prado_NNP_24_137); nn(Prado_NNP_24_137, Manuel_NNP_23_130); nn(members_NNS_28_163, conservatives_NNS_27_149); prep(members_NNS_28_163, of_IN_29_171); pobj(of_IN_29_171, Party_NNP_32_188); det(Party_NNP_32_188, the_DT_30_174); nn(Party_NNP_32_188, Civilista_NNP_31_178)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9066414837593882	1.0	16	0.9411764705882353	(Junge; was originally drafted in; the 1999 amateur draft)	false	false	Junge was originally drafted by the Los Angeles Dodgers in the 1999 amateur draft and was then traded to the Philadelphia Phillies in .	nsubjpass(drafted_VBN_3_21, Junge_NNP_0_0); auxpass(drafted_VBN_3_21, was_VBD_1_6); advmod(drafted_VBN_3_21, originally_RB_2_10); prep(drafted_VBN_3_21, by_IN_4_29); prep(drafted_VBN_3_21, in_IN_9_56); cc(drafted_VBN_3_21, and_CC_14_82); conj(drafted_VBN_3_21, traded_VBN_17_95); punct(drafted_VBN_3_21, ._._23_134); pobj(by_IN_4_29, Dodgers_NNP_8_48); det(Dodgers_NNP_8_48, the_DT_5_32); nn(Dodgers_NNP_8_48, Los_NNP_6_36); nn(Dodgers_NNP_8_48, Angeles_NNP_7_40); pobj(in_IN_9_56, draft_NN_13_76); det(draft_NN_13_76, the_DT_10_59); num(draft_NN_13_76, 1999_CD_11_63); amod(draft_NN_13_76, amateur_JJ_12_68); auxpass(traded_VBN_17_95, was_VBD_15_86); advmod(traded_VBN_17_95, then_RB_16_90); prep(traded_VBN_17_95, to_TO_18_102); prt(traded_VBN_17_95, in_IN_22_131); pobj(to_TO_18_102, Phillies_NNP_21_122); det(Phillies_NNP_21_122, the_DT_19_105); nn(Phillies_NNP_21_122, Philadelphia_NNP_20_109)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9066414837593882	1.0	17	0.9444444444444444	(The Breitling watchmaking company; was founded in; Saint-Imier)	false	false	The Breitling watchmaking company was founded in Saint-Imier , but moved to Grenchen , Canton of Solothurn .	det(company_NN_3_26, The_DT_0_0); nn(company_NN_3_26, Breitling_NNP_1_4); nn(company_NN_3_26, watchmaking_NN_2_14); nsubjpass(founded_VBN_5_38, company_NN_3_26); auxpass(founded_VBN_5_38, was_VBD_4_34); prep(founded_VBN_5_38, in_IN_6_46); punct(founded_VBN_5_38, ,_,_8_61); cc(founded_VBN_5_38, but_CC_9_63); conj(founded_VBN_5_38, moved_VBD_10_67); punct(founded_VBN_5_38, ._._17_107); pobj(in_IN_6_46, Saint-Imier_NNP_7_49); prep(moved_VBD_10_67, to_TO_11_73); pobj(to_TO_11_73, Grenchen_NNP_12_76); punct(Grenchen_NNP_12_76, ,_,_13_85); appos(Grenchen_NNP_12_76, Canton_NNP_14_87); prep(Canton_NNP_14_87, of_IN_15_94); pobj(of_IN_15_94, Solothurn_NNP_16_97)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9043904093256648	0.7345	18	0.9473684210526315	(Cordis; sold its pacemaker operations two years ago to; Telectronics Holding Ltd. of Australia)	false	false	Cordis sold its pacemaker operations two years ago to Telectronics Holding Ltd. of Australia .	nsubj(sold_VBD_1_7, Cordis_NNP_0_0); dobj(sold_VBD_1_7, operations_NNS_4_26); advmod(sold_VBD_1_7, ago_RB_7_47); prep(sold_VBD_1_7, to_TO_8_51); punct(sold_VBD_1_7, ._._14_93); poss(operations_NNS_4_26, its_PRP$_2_12); nn(operations_NNS_4_26, pacemaker_NN_3_16); num(years_NNS_6_41, two_CD_5_37); dep(ago_RB_7_47, years_NNS_6_41); pobj(to_TO_8_51, Ltd._NNP_11_75); nn(Ltd._NNP_11_75, Telectronics_NNP_9_54); nn(Ltd._NNP_11_75, Holding_NNP_10_67); prep(Ltd._NNP_11_75, of_IN_12_80); pobj(of_IN_12_80, Australia_NNP_13_83)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.9043904093256648	0.7345	19	0.95	(He; replaced Jonathan Groff in; the Broadway production of the musical Spring Awakening)	false	false	He replaced Jonathan Groff in the Broadway production of the musical Spring Awakening , in the lead role of Melchior Gabor , on May 23 2008 .	nsubj(replaced_VBD_1_3, He_PRP_0_0); dobj(replaced_VBD_1_3, Groff_NNP_3_21); prep(replaced_VBD_1_3, in_IN_4_27); punct(replaced_VBD_1_3, ,_,_13_86); prep(replaced_VBD_1_3, in_IN_14_88); punct(replaced_VBD_1_3, ._._26_140); nn(Groff_NNP_3_21, Jonathan_NNP_2_12); pobj(in_IN_4_27, production_NN_7_43); det(production_NN_7_43, the_DT_5_30); nn(production_NN_7_43, Broadway_NNP_6_34); prep(production_NN_7_43, of_IN_8_54); pobj(of_IN_8_54, Awakening_NN_12_76); det(Awakening_NN_12_76, the_DT_9_57); amod(Awakening_NN_12_76, musical_JJ_10_61); nn(Awakening_NN_12_76, Spring_NNP_11_69); pobj(in_IN_14_88, role_NN_17_100); det(role_NN_17_100, the_DT_15_91); amod(role_NN_17_100, lead_JJ_16_95); prep(role_NN_17_100, of_IN_18_105); punct(role_NN_17_100, ,_,_21_123); prep(role_NN_17_100, on_IN_22_125); pobj(of_IN_18_105, Gabor_NNP_20_117); nn(Gabor_NNP_20_117, Melchior_NNP_19_108); pobj(on_IN_22_125, May_NNP_23_128); num(May_NNP_23_128, 2008_CD_25_135); number(2008_CD_25_135, 23_CD_24_132)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.9043904093256648	0.7345	20	0.9523809523809523	(He; replaced Jonathan Groff in; the lead role of Melchior Gabor)	false	false	He replaced Jonathan Groff in the Broadway production of the musical Spring Awakening , in the lead role of Melchior Gabor , on May 23 2008 .	nsubj(replaced_VBD_1_3, He_PRP_0_0); dobj(replaced_VBD_1_3, Groff_NNP_3_21); prep(replaced_VBD_1_3, in_IN_4_27); punct(replaced_VBD_1_3, ,_,_13_86); prep(replaced_VBD_1_3, in_IN_14_88); punct(replaced_VBD_1_3, ._._26_140); nn(Groff_NNP_3_21, Jonathan_NNP_2_12); pobj(in_IN_4_27, production_NN_7_43); det(production_NN_7_43, the_DT_5_30); nn(production_NN_7_43, Broadway_NNP_6_34); prep(production_NN_7_43, of_IN_8_54); pobj(of_IN_8_54, Awakening_NN_12_76); det(Awakening_NN_12_76, the_DT_9_57); amod(Awakening_NN_12_76, musical_JJ_10_61); nn(Awakening_NN_12_76, Spring_NNP_11_69); pobj(in_IN_14_88, role_NN_17_100); det(role_NN_17_100, the_DT_15_91); amod(role_NN_17_100, lead_JJ_16_95); prep(role_NN_17_100, of_IN_18_105); punct(role_NN_17_100, ,_,_21_123); prep(role_NN_17_100, on_IN_22_125); pobj(of_IN_18_105, Gabor_NNP_20_117); nn(Gabor_NNP_20_117, Melchior_NNP_19_108); pobj(on_IN_22_125, May_NNP_23_128); num(May_NNP_23_128, 2008_CD_25_135); number(2008_CD_25_135, 23_CD_24_132)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.9034960676137963	0.7345	21	0.9545454545454546	(Sony Columbia Acquisition Corp.; formed for; the Columbia deal)[attrib=a spokesman said]	false	true	Sony Columbia Acquisition Corp. , formed for the Columbia deal , will formally take ownership of the movie studio later this month , a spokesman said .	nn(Corp._NNP_3_26, Sony_NNP_0_0); nn(Corp._NNP_3_26, Columbia_NNP_1_5); nn(Corp._NNP_3_26, Acquisition_NNP_2_14); punct(Corp._NNP_3_26, ,_,_4_32); nsubj(formed_VBD_5_34, Corp._NNP_3_26); prep(formed_VBD_5_34, for_IN_6_41); punct(formed_VBD_5_34, ,_,_10_63); conj(formed_VBD_5_34, take_VB_13_79); pobj(for_IN_6_41, deal_NN_9_58); det(deal_NN_9_58, the_DT_7_45); nn(deal_NN_9_58, Columbia_NNP_8_49); aux(take_VB_13_79, will_MD_11_65); advmod(take_VB_13_79, formally_RB_12_70); dobj(take_VB_13_79, ownership_NN_14_84); tmod(take_VB_13_79, month_NN_21_125); prep(ownership_NN_14_84, of_IN_15_94); pobj(of_IN_15_94, studio_NN_18_107); det(studio_NN_18_107, the_DT_16_97); nn(studio_NN_18_107, movie_NN_17_101); advmod(month_NN_21_125, later_RB_19_114); det(month_NN_21_125, this_DT_20_120); det(spokesman_NN_24_135, a_DT_23_133); ccomp(said_VBD_25_145, formed_VBD_5_34); punct(said_VBD_25_145, ,_,_22_131); nsubj(said_VBD_25_145, spokesman_NN_24_135); punct(said_VBD_25_145, ._._26_150)	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.9029376545659042	1.0	22	0.9565217391304348	(The Dynix corporation; was formed by; the merger of the Sirsi and Dynix corporations)	false	false	The Dynix corporation was founded in 1983 , and SirsiDynix was formed by the merger of the Sirsi and Dynix corporations in June 2005 .	det(corporation_NN_2_10, The_DT_0_0); nn(corporation_NN_2_10, Dynix_NNP_1_4); nsubjpass(founded_VBN_4_26, corporation_NN_2_10); auxpass(founded_VBN_4_26, was_VBD_3_22); prep(founded_VBN_4_26, in_IN_5_34); punct(founded_VBN_4_26, ,_,_7_42); cc(founded_VBN_4_26, and_CC_8_44); conj(founded_VBN_4_26, formed_VBN_11_63); punct(founded_VBN_4_26, ._._24_133); pobj(in_IN_5_34, 1983_CD_6_37); nsubjpass(formed_VBN_11_63, SirsiDynix_NNP_9_48); auxpass(formed_VBN_11_63, was_VBD_10_59); prep(formed_VBN_11_63, by_IN_12_70); prep(formed_VBN_11_63, in_IN_21_120); pobj(by_IN_12_70, merger_NN_14_77); det(merger_NN_14_77, the_DT_13_73); prep(merger_NN_14_77, of_IN_15_84); pobj(of_IN_15_84, corporations_NNS_20_107); cc(Sirsi_NNP_17_91, and_CC_18_97); conj(Sirsi_NNP_17_91, Dynix_NNP_19_101); det(corporations_NNS_20_107, the_DT_16_87); nn(corporations_NNS_20_107, Sirsi_NNP_17_91); pobj(in_IN_21_120, June_NNP_22_123); num(June_NNP_22_123, 2005_CD_23_128)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
0	0.8982644762089621	0.7345	22	0.9166666666666666	(hybrid sterility; pseudoobscura results from gene interactions among; at least four loci)	false	false	For example , hybrid sterility between two subspecies of the fruit fly Drosophila pseudoobscura results from gene interactions among at least four loci , and postzygotic isolation in the sunflower hybrid zone discussed earlier is influenced by at least 26 chromosome segments .	pobj(For_IN_0_0, example_NN_1_4); prep(sterility_NN_4_21, For_IN_0_0); punct(sterility_NN_4_21, ,_,_2_12); amod(sterility_NN_4_21, hybrid_JJ_3_14); prep(sterility_NN_4_21, between_IN_5_31); pobj(between_IN_5_31, subspecies_NNS_7_43); num(subspecies_NNS_7_43, two_CD_6_39); prep(subspecies_NNS_7_43, of_IN_8_54); pobj(of_IN_8_54, Drosophila_NNP_12_71); det(Drosophila_NNP_12_71, the_DT_9_57); nn(Drosophila_NNP_12_71, fruit_NN_10_61); nn(Drosophila_NNP_12_71, fly_NN_11_67); nsubj(pseudoobscura_VBD_13_82, sterility_NN_4_21); dobj(pseudoobscura_VBD_13_82, results_NNS_14_96); prep(pseudoobscura_VBD_13_82, among_IN_18_127); punct(pseudoobscura_VBD_13_82, ,_,_23_152); cc(pseudoobscura_VBD_13_82, and_CC_24_154); conj(pseudoobscura_VBD_13_82, isolation_NN_26_170); punct(pseudoobscura_VBD_13_82, ._._42_276); prep(results_NNS_14_96, from_IN_15_104); pobj(from_IN_15_104, interactions_NNS_17_114); nn(interactions_NNS_17_114, gene_NN_16_109); pobj(among_IN_18_127, loci_NNS_22_147); dep(at_IN_19_133, least_JJS_20_136); quantmod(four_CD_21_142, at_IN_19_133); num(loci_NNS_22_147, four_CD_21_142); amod(isolation_NN_26_170, postzygotic_JJ_25_158); dep(isolation_NN_26_170, influenced_VBN_35_230); det(zone_NN_31_204, the_DT_28_183); nn(zone_NN_31_204, sunflower_NN_29_187); nn(zone_NN_31_204, hybrid_NN_30_197); mark(influenced_VBN_35_230, in_IN_27_180); nsubjpass(influenced_VBN_35_230, zone_NN_31_204); auxpass(influenced_VBN_35_230, discussed_VBN_32_209); advmod(influenced_VBN_35_230, earlier_RB_33_219); auxpass(influenced_VBN_35_230, is_VBZ_34_227); prep(influenced_VBN_35_230, by_IN_36_241); pobj(by_IN_36_241, segments_NNS_41_267); dep(at_IN_37_244, least_JJS_38_247); quantmod(26_CD_39_253, at_IN_37_244); num(segments_NNS_41_267, 26_CD_39_253); nn(segments_NNS_41_267, chromosome_NN_40_256)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8982644762089621	0.7345	23	0.92	(shareholder Max Grill of New York; charged Imperial , its top executives and directors with; breach of fiduciary duty)	false	false	In a separate complaint also filed in federal court here , shareholder Max Grill of New York charged Imperial , its top executives and directors with breach of fiduciary duty and squandering the company 's assets .	pobj(In_IN_0_0, complaint_NN_3_14); det(complaint_NN_3_14, a_DT_1_3); amod(complaint_NN_3_14, separate_JJ_2_5); partmod(complaint_NN_3_14, filed_VBN_5_29); advmod(complaint_NN_3_14, here_RB_9_52); advmod(filed_VBN_5_29, also_RB_4_24); prep(filed_VBN_5_29, in_IN_6_35); pobj(in_IN_6_35, court_NN_8_46); amod(court_NN_8_46, federal_JJ_7_38); nn(Grill_NNP_13_75, shareholder_NN_11_59); nn(Grill_NNP_13_75, Max_NNP_12_71); prep(Grill_NNP_13_75, of_IN_14_81); pobj(of_IN_14_81, York_NNP_16_88); nn(York_NNP_16_88, New_NNP_15_84); prep(charged_VBD_17_93, In_IN_0_0); punct(charged_VBD_17_93, ,_,_10_57); nsubj(charged_VBD_17_93, Grill_NNP_13_75); dobj(charged_VBD_17_93, Imperial_NNP_18_101); prep(charged_VBD_17_93, with_IN_25_145); cc(charged_VBD_17_93, and_CC_30_175); conj(charged_VBD_17_93, squandering_VBG_31_179); punct(charged_VBD_17_93, ._._36_213); punct(Imperial_NNP_18_101, ,_,_19_110); appos(Imperial_NNP_18_101, executives_NNS_22_120); poss(executives_NNS_22_120, its_PRP$_20_112); amod(executives_NNS_22_120, top_JJ_21_116); cc(executives_NNS_22_120, and_CC_23_131); conj(executives_NNS_22_120, directors_NNS_24_135); pobj(with_IN_25_145, breach_NN_26_150); prep(breach_NN_26_150, of_IN_27_157); pobj(of_IN_27_157, duty_NN_29_170); amod(duty_NN_29_170, fiduciary_JJ_28_160); dobj(squandering_VBG_31_179, assets_NNS_35_206); det(company_NN_33_195, the_DT_32_191); possessive(company_NN_33_195, 's_POS_34_203); poss(assets_NNS_35_206, company_NN_33_195)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8970518314603465	0.7345	24	0.9230769230769231	(the band; struggled without; the help of a booking agent)	false	false	As the band struggled to find support slots on upcoming tours without the help of a booking agent , they played locally in Southern California throughout the winter of 2004 and the spring of 2005 .	det(band_NN_2_7, the_DT_1_3); mark(struggled_VBD_3_12, As_IN_0_0); nsubj(struggled_VBD_3_12, band_NN_2_7); xcomp(struggled_VBD_3_12, find_VB_5_25); prep(struggled_VBD_3_12, without_IN_11_62); aux(find_VB_5_25, to_TO_4_22); dobj(find_VB_5_25, slots_NNS_7_38); nn(slots_NNS_7_38, support_NN_6_30); prep(slots_NNS_7_38, on_IN_8_44); pobj(on_IN_8_44, tours_NNS_10_56); nn(tours_NNS_10_56, upcoming_NN_9_47); pobj(without_IN_11_62, help_NN_13_74); det(help_NN_13_74, the_DT_12_70); prep(help_NN_13_74, of_IN_14_79); pobj(of_IN_14_79, agent_NN_17_92); det(agent_NN_17_92, a_DT_15_82); nn(agent_NN_17_92, booking_NN_16_84); advcl(played_VBD_20_105, struggled_VBD_3_12); punct(played_VBD_20_105, ,_,_18_98); nsubj(played_VBD_20_105, they_PRP_19_100); advmod(played_VBD_20_105, locally_RB_21_112); prep(played_VBD_20_105, in_IN_22_120); prep(played_VBD_20_105, throughout_IN_25_143); punct(played_VBD_20_105, ._._35_196); pobj(in_IN_22_120, California_NNP_24_132); amod(California_NNP_24_132, Southern_JJ_23_123); pobj(throughout_IN_25_143, winter_NN_27_158); det(winter_NN_27_158, the_DT_26_154); prep(winter_NN_27_158, of_IN_28_165); cc(winter_NN_27_158, and_CC_30_173); conj(winter_NN_27_158, spring_NN_32_181); pobj(of_IN_28_165, 2004_CD_29_168); det(spring_NN_32_181, the_DT_31_177); prep(spring_NN_32_181, of_IN_33_188); pobj(of_IN_33_188, 2005_CD_34_191)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	1.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8953292670090802	0.9555	25	0.9259259259259259	(Cephalopods; are the only molluscs with; a closed circulatory system which the blood remains separate from fluid in the body cavity)	false	false	Cephalopods are the only molluscs with a closed circulatory system , in which the blood remains separate from fluid in the body cavity .	nsubj(molluscs_NNS_4_25, Cephalopods_NNS_0_0); cop(molluscs_NNS_4_25, are_VBP_1_12); det(molluscs_NNS_4_25, the_DT_2_16); amod(molluscs_NNS_4_25, only_JJ_3_20); prep(molluscs_NNS_4_25, with_IN_5_34); punct(molluscs_NNS_4_25, ._._23_135); pobj(with_IN_5_34, system_NN_9_60); det(system_NN_9_60, a_DT_6_39); amod(system_NN_9_60, closed_JJ_7_41); nn(system_NN_9_60, circulatory_NN_8_48); punct(system_NN_9_60, ,_,_10_67); rcmod(system_NN_9_60, separate_JJ_16_96); pobj(in_IN_11_69, which_WDT_12_72); det(blood_NN_14_82, the_DT_13_78); rel(separate_JJ_16_96, in_IN_11_69); nsubj(separate_JJ_16_96, blood_NN_14_82); cop(separate_JJ_16_96, remains_VBZ_15_88); prep(separate_JJ_16_96, from_IN_17_105); prep(separate_JJ_16_96, in_IN_19_116); pobj(from_IN_17_105, fluid_NN_18_110); pobj(in_IN_19_116, cavity_NN_22_128); det(cavity_NN_22_128, the_DT_20_119); nn(cavity_NN_22_128, body_NN_21_123)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	1.0	0.9555	1.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.894287106087327	1.0	26	0.9285714285714286	(Guillermo Billinghurst; was overthrown in; a military coup headed by colonel Oscar R. Benavides , Javier and Manuel Prado)	false	false	Guillermo Billinghurst was overthrown on February 4 , 1914 , in a military coup headed by colonel Oscar R. Benavides , Javier and Manuel Prado , and conservatives members of the Civilista Party .	nn(Billinghurst_NNP_1_10, Guillermo_NNP_0_0); nsubjpass(overthrown_VBN_3_27, Billinghurst_NNP_1_10); auxpass(overthrown_VBN_3_27, was_VBD_2_23); prep(overthrown_VBN_3_27, on_IN_4_38); punct(overthrown_VBN_3_27, ,_,_9_59); prep(overthrown_VBN_3_27, in_IN_10_61); punct(overthrown_VBN_3_27, ,_,_25_143); cc(overthrown_VBN_3_27, and_CC_26_145); conj(overthrown_VBN_3_27, members_NNS_28_163); punct(overthrown_VBN_3_27, ._._33_194); pobj(on_IN_4_38, February_NNP_5_41); num(February_NNP_5_41, 4_CD_6_50); punct(February_NNP_5_41, ,_,_7_52); num(February_NNP_5_41, 1914_CD_8_54); pobj(in_IN_10_61, coup_NN_13_75); det(coup_NN_13_75, a_DT_11_64); amod(coup_NN_13_75, military_JJ_12_66); partmod(coup_NN_13_75, headed_VBN_14_80); prep(headed_VBN_14_80, by_IN_15_87); pobj(by_IN_15_87, Benavides_NNP_19_107); nn(Benavides_NNP_19_107, colonel_NN_16_90); nn(Benavides_NNP_19_107, Oscar_NNP_17_98); nn(Benavides_NNP_19_107, R._NNP_18_104); punct(Benavides_NNP_19_107, ,_,_20_117); conj(Benavides_NNP_19_107, Javier_NNP_21_119); cc(Benavides_NNP_19_107, and_CC_22_126); conj(Benavides_NNP_19_107, Prado_NNP_24_137); nn(Prado_NNP_24_137, Manuel_NNP_23_130); nn(members_NNS_28_163, conservatives_NNS_27_149); prep(members_NNS_28_163, of_IN_29_171); pobj(of_IN_29_171, Party_NNP_32_188); det(Party_NNP_32_188, the_DT_30_174); nn(Party_NNP_32_188, Civilista_NNP_31_178)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.894287106087327	1.0	27	0.9310344827586207	(Lowery; was elected in; a special election to fill the unexpired term of James Eagan)	false	false	Lowery was elected Mayor on Feburay 6th 2001 in a special election to fill the unexpired term of James Eagan .	nsubjpass(elected_VBN_2_11, Lowery_NNP_0_0); auxpass(elected_VBN_2_11, was_VBD_1_7); dep(elected_VBN_2_11, 6th_JJ_6_36); prep(elected_VBN_2_11, in_IN_8_45); punct(elected_VBN_2_11, ._._20_109); prep(Mayor_NNP_3_19, on_IN_4_25); pobj(on_IN_4_25, Feburay_NNP_5_28); dep(6th_JJ_6_36, Mayor_NNP_3_19); tmod(6th_JJ_6_36, 2001_CD_7_40); pobj(in_IN_8_45, election_NN_11_58); det(election_NN_11_58, a_DT_9_48); amod(election_NN_11_58, special_JJ_10_50); infmod(election_NN_11_58, fill_VB_13_70); aux(fill_VB_13_70, to_TO_12_67); dobj(fill_VB_13_70, term_NN_16_89); det(term_NN_16_89, the_DT_14_75); amod(term_NN_16_89, unexpired_JJ_15_79); prep(term_NN_16_89, of_IN_17_94); pobj(of_IN_17_94, Eagan_NNP_19_103); nn(Eagan_NNP_19_103, James_NNP_18_97)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8840751567640979	1.0	28	0.9333333333333333	(Denis C. Smith; was named to; the new post of vice president of world-wide advanced materials operations)	false	false	Denis C. Smith was named to the new post of vice president of world-wide advanced materials operations for this chemicals concern .	nn(Smith_NNP_2_9, Denis_NNP_0_0); nn(Smith_NNP_2_9, C._NNP_1_6); nsubjpass(named_VBN_4_19, Smith_NNP_2_9); auxpass(named_VBN_4_19, was_VBD_3_15); prep(named_VBN_4_19, to_TO_5_25); prep(named_VBN_4_19, for_IN_17_103); punct(named_VBN_4_19, ._._21_130); pobj(to_TO_5_25, post_NN_8_36); det(post_NN_8_36, the_DT_6_28); amod(post_NN_8_36, new_JJ_7_32); prep(post_NN_8_36, of_IN_9_41); pobj(of_IN_9_41, president_NN_11_49); nn(president_NN_11_49, vice_NN_10_44); prep(president_NN_11_49, of_IN_12_59); pobj(of_IN_12_59, operations_NNS_16_92); amod(operations_NNS_16_92, world-wide_JJ_13_62); amod(operations_NNS_16_92, advanced_JJ_14_73); nn(operations_NNS_16_92, materials_NNS_15_82); pobj(for_IN_17_103, concern_NN_20_122); det(concern_NN_20_122, this_DT_18_107); nn(concern_NN_20_122, chemicals_NNS_19_112)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8833999973995464	0.3797	29	0.9354838709677419	(it; completed; the previously announced purchase of Imperial Cup Corp.)[attrib=Federal Paper Board Co. said]	false	true	Federal Paper Board Co. said it completed the previously announced purchase of Imperial Cup Corp. , a closely held maker of paper cups based in Kenton , Ohio .	nn(Co._NNP_3_20, Federal_NNP_0_0); nn(Co._NNP_3_20, Paper_NNP_1_8); nn(Co._NNP_3_20, Board_NNP_2_14); nsubj(said_VBD_4_24, Co._NNP_3_20); ccomp(said_VBD_4_24, completed_VBD_6_32); punct(said_VBD_4_24, ._._28_158); nsubj(completed_VBD_6_32, it_PRP_5_29); dobj(completed_VBD_6_32, purchase_NN_10_67); advmod(announced_VBN_9_57, previously_RB_8_46); det(purchase_NN_10_67, the_DT_7_42); amod(purchase_NN_10_67, announced_VBN_9_57); prep(purchase_NN_10_67, of_IN_11_76); pobj(of_IN_11_76, Corp._NNP_14_92); nn(Corp._NNP_14_92, Imperial_NNP_12_79); nn(Corp._NNP_14_92, Cup_NNP_13_88); punct(Corp._NNP_14_92, ,_,_15_98); appos(Corp._NNP_14_92, maker_NN_19_115); advmod(held_VBN_18_110, closely_RB_17_102); det(maker_NN_19_115, a_DT_16_100); amod(maker_NN_19_115, held_VBN_18_110); prep(maker_NN_19_115, of_IN_20_121); pobj(of_IN_20_121, cups_NNS_22_130); nn(cups_NNS_22_130, paper_NN_21_124); partmod(cups_NNS_22_130, based_VBN_23_135); prep(based_VBN_23_135, in_IN_24_141); pobj(in_IN_24_141, Kenton_NNP_25_144); punct(Kenton_NNP_25_144, ,_,_26_151); appos(Kenton_NNP_25_144, Ohio_NNP_27_153)	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.3797	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
0	0.8832630553504159	1.0	29	0.90625	(Denis C. Smith; was named for; this chemicals concern)	false	false	Denis C. Smith was named to the new post of vice president of world-wide advanced materials operations for this chemicals concern .	nn(Smith_NNP_2_9, Denis_NNP_0_0); nn(Smith_NNP_2_9, C._NNP_1_6); nsubjpass(named_VBN_4_19, Smith_NNP_2_9); auxpass(named_VBN_4_19, was_VBD_3_15); prep(named_VBN_4_19, to_TO_5_25); prep(named_VBN_4_19, for_IN_17_103); punct(named_VBN_4_19, ._._21_130); pobj(to_TO_5_25, post_NN_8_36); det(post_NN_8_36, the_DT_6_28); amod(post_NN_8_36, new_JJ_7_32); prep(post_NN_8_36, of_IN_9_41); pobj(of_IN_9_41, president_NN_11_49); nn(president_NN_11_49, vice_NN_10_44); prep(president_NN_11_49, of_IN_12_59); pobj(of_IN_12_59, operations_NNS_16_92); amod(operations_NNS_16_92, world-wide_JJ_13_62); amod(operations_NNS_16_92, advanced_JJ_14_73); nn(operations_NNS_16_92, materials_NNS_15_82); pobj(for_IN_17_103, concern_NN_20_122); det(concern_NN_20_122, this_DT_18_107); nn(concern_NN_20_122, chemicals_NNS_19_112)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
0	0.8832630553504159	1.0	29	0.8787878787878788	(He; was descended an old aristocratic family from Mecklenburg from; the B low family)	false	false	He was descended from the B low family , an old aristocratic family from Mecklenburg .	nsubjpass(descended_VBN_2_7, He_PRP_0_0); auxpass(descended_VBN_2_7, was_VBD_1_3); prep(descended_VBN_2_7, from_IN_3_17); punct(descended_VBN_2_7, ,_,_8_39); dobj(descended_VBN_2_7, family_NN_12_61); punct(descended_VBN_2_7, ._._15_85); pobj(from_IN_3_17, family_NN_7_32); det(family_NN_7_32, the_DT_4_22); nn(family_NN_7_32, B_NNP_5_26); amod(family_NN_7_32, low_JJ_6_28); det(family_NN_12_61, an_DT_9_41); amod(family_NN_12_61, old_JJ_10_44); amod(family_NN_12_61, aristocratic_JJ_11_48); prep(family_NN_12_61, from_IN_13_68); pobj(from_IN_13_68, Mecklenburg_NNP_14_73)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8832630553504159	1.0	30	0.8823529411764706	(She; was born in; Berkeley)	false	false	She was born April 3 , 1951 in Berkeley , California .	nsubjpass(born_VBN_2_8, She_PRP_0_0); auxpass(born_VBN_2_8, was_VBD_1_4); tmod(born_VBN_2_8, April_NNP_3_13); prep(born_VBN_2_8, in_IN_7_28); punct(born_VBN_2_8, ._._11_52); num(April_NNP_3_13, 3_CD_4_19); punct(April_NNP_3_13, ,_,_5_21); num(April_NNP_3_13, 1951_CD_6_23); pobj(in_IN_7_28, Berkeley_NNP_8_31); punct(Berkeley_NNP_8_31, ,_,_9_39); appos(Berkeley_NNP_8_31, California_NNP_10_41)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
0	0.8832630553504159	1.0	30	0.8571428571428571	(The Dynix corporation; was formed in; June 2005)	false	false	The Dynix corporation was founded in 1983 , and SirsiDynix was formed by the merger of the Sirsi and Dynix corporations in June 2005 .	det(corporation_NN_2_10, The_DT_0_0); nn(corporation_NN_2_10, Dynix_NNP_1_4); nsubjpass(founded_VBN_4_26, corporation_NN_2_10); auxpass(founded_VBN_4_26, was_VBD_3_22); prep(founded_VBN_4_26, in_IN_5_34); punct(founded_VBN_4_26, ,_,_7_42); cc(founded_VBN_4_26, and_CC_8_44); conj(founded_VBN_4_26, formed_VBN_11_63); punct(founded_VBN_4_26, ._._24_133); pobj(in_IN_5_34, 1983_CD_6_37); nsubjpass(formed_VBN_11_63, SirsiDynix_NNP_9_48); auxpass(formed_VBN_11_63, was_VBD_10_59); prep(formed_VBN_11_63, by_IN_12_70); prep(formed_VBN_11_63, in_IN_21_120); pobj(by_IN_12_70, merger_NN_14_77); det(merger_NN_14_77, the_DT_13_73); prep(merger_NN_14_77, of_IN_15_84); pobj(of_IN_15_84, corporations_NNS_20_107); cc(Sirsi_NNP_17_91, and_CC_18_97); conj(Sirsi_NNP_17_91, Dynix_NNP_19_101); det(corporations_NNS_20_107, the_DT_16_87); nn(corporations_NNS_20_107, Sirsi_NNP_17_91); pobj(in_IN_21_120, June_NNP_22_123); num(June_NNP_22_123, 2005_CD_23_128)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8790036637975921	0.3797	31	0.8611111111111112	(Researchers; placed; identical samples of organic material)	false	false	Researchers with the Canadian Forest Service placed identical samples of organic material -- litter -- on the ground in 21 sites across Canada .	prep(Researchers_NNS_0_0, with_IN_1_12); pobj(with_IN_1_12, Service_NNP_5_37); det(Service_NNP_5_37, the_DT_2_17); nn(Service_NNP_5_37, Canadian_NNP_3_21); nn(Service_NNP_5_37, Forest_NNP_4_30); nsubj(placed_VBD_6_45, Researchers_NNS_0_0); dobj(placed_VBD_6_45, samples_NNS_8_62); prep(placed_VBD_6_45, on_IN_15_103); punct(placed_VBD_6_45, ._._23_143); amod(samples_NNS_8_62, identical_JJ_7_52); prep(samples_NNS_8_62, of_IN_9_70); dep(samples_NNS_8_62, litter_JJ_13_93); pobj(of_IN_9_70, material_NN_11_81); amod(material_NN_11_81, organic_JJ_10_73); punct(litter_JJ_13_93, --_:_12_90); punct(litter_JJ_13_93, --_:_14_100); pobj(on_IN_15_103, ground_NN_17_110); det(ground_NN_17_110, the_DT_16_106); prep(ground_NN_17_110, in_IN_18_117); pobj(in_IN_18_117, sites_NNS_20_123); num(sites_NNS_20_123, 21_CD_19_120); prep(sites_NNS_20_123, across_IN_21_129); pobj(across_IN_21_129, Canada_NNP_22_136)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.3797	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.875969090413861	1.0	32	0.8648648648648649	(Drop Trio; was asked by; SugarHill Recording Studios)	false	false	Also , although unreleased as of 2009 , Drop Trio was asked by SugarHill Recording Studios , in 2003 , to record a song by Destiny 's Child for an upcoming compilation CD to be released by the studio .	prep(unreleased_JJ_3_16, as_IN_4_27); dep(as_IN_4_27, of_IN_5_30); pobj(of_IN_5_30, 2009_CD_6_33); nn(Trio_NNP_9_45, Drop_NNP_8_40); mark(asked_VBN_11_54, although_IN_2_7); nsubjpass(asked_VBN_11_54, unreleased_JJ_3_16); punct(asked_VBN_11_54, ,_,_7_38); nsubjpass(asked_VBN_11_54, Trio_NNP_9_45); auxpass(asked_VBN_11_54, was_VBD_10_50); prep(asked_VBN_11_54, by_IN_12_60); pobj(by_IN_12_60, Studios_NNP_15_83); nn(Studios_NNP_15_83, SugarHill_NNP_13_63); nn(Studios_NNP_15_83, Recording_NNP_14_73); pobj(in_IN_17_93, 2003_CD_18_96); advmod(record_VB_21_106, Also_RB_0_0); punct(record_VB_21_106, ,_,_1_5); dep(record_VB_21_106, asked_VBN_11_54); punct(record_VB_21_106, ,_,_16_91); prep(record_VB_21_106, in_IN_17_93); punct(record_VB_21_106, ,_,_19_101); aux(record_VB_21_106, to_TO_20_103); dobj(record_VB_21_106, song_NN_23_115); prep(record_VB_21_106, by_IN_24_120); prep(record_VB_21_106, for_IN_28_140); punct(record_VB_21_106, ._._39_200); det(song_NN_23_115, a_DT_22_113); pobj(by_IN_24_120, Child_NN_27_134); possessive(Destiny_NNP_25_123, 's_POS_26_131); poss(Child_NN_27_134, Destiny_NNP_25_123); pobj(for_IN_28_140, CD_NN_32_168); det(CD_NN_32_168, an_DT_29_144); amod(CD_NN_32_168, upcoming_JJ_30_147); nn(CD_NN_32_168, compilation_NN_31_156); infmod(CD_NN_32_168, released_VBN_35_177); aux(released_VBN_35_177, to_TO_33_171); auxpass(released_VBN_35_177, be_VB_34_174); prep(released_VBN_35_177, by_IN_36_186); pobj(by_IN_36_186, studio_NN_38_193); det(studio_NN_38_193, the_DT_37_189)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.875969090413861	1.0	33	0.868421052631579	(the Australian Black Swan; was introduced as; an ornamental waterfowl)	false	false	In 1864 , the Australian Black Swan was introduced to New Zealand as an ornamental waterfowl , and populations are now common on larger coastal or inland lakes , especially Rotorua Lakes , Lake Wairarapa and Lake Ellesmere , and the Chatham Islands .	pobj(In_IN_0_0, 1864_CD_1_3); det(Swan_NNP_6_31, the_DT_3_10); nn(Swan_NNP_6_31, Australian_NNP_4_14); nn(Swan_NNP_6_31, Black_NNP_5_25); prep(introduced_VBN_8_40, In_IN_0_0); punct(introduced_VBN_8_40, ,_,_2_8); nsubjpass(introduced_VBN_8_40, Swan_NNP_6_31); auxpass(introduced_VBN_8_40, was_VBD_7_36); prep(introduced_VBN_8_40, to_TO_9_51); prep(introduced_VBN_8_40, as_IN_12_66); punct(introduced_VBN_8_40, ,_,_16_93); cc(introduced_VBN_8_40, and_CC_17_95); conj(introduced_VBN_8_40, common_JJ_21_119); punct(introduced_VBN_8_40, ,_,_38_223); cc(introduced_VBN_8_40, and_CC_39_225); conj(introduced_VBN_8_40, Islands_NNP_42_241); punct(introduced_VBN_8_40, ._._43_249); pobj(to_TO_9_51, Zealand_NNP_11_58); nn(Zealand_NNP_11_58, New_NNP_10_54); pobj(as_IN_12_66, waterfowl_NN_15_83); det(waterfowl_NN_15_83, an_DT_13_69); amod(waterfowl_NN_15_83, ornamental_JJ_14_72); nsubj(common_JJ_21_119, populations_NNS_18_99); cop(common_JJ_21_119, are_VBP_19_111); advmod(common_JJ_21_119, now_RB_20_115); prep(common_JJ_21_119, on_IN_22_126); pobj(on_IN_22_126, coastal_NN_24_136); amod(coastal_NN_24_136, larger_JJR_23_129); cc(coastal_NN_24_136, or_CC_25_144); conj(coastal_NN_24_136, lakes_NNS_27_154); punct(coastal_NN_24_136, ,_,_28_160); appos(coastal_NN_24_136, Lakes_NNP_31_181); nn(lakes_NNS_27_154, inland_NN_26_147); advmod(Lakes_NNP_31_181, especially_RB_29_162); nn(Lakes_NNP_31_181, Rotorua_NNP_30_173); punct(Lakes_NNP_31_181, ,_,_32_187); conj(Lakes_NNP_31_181, Wairarapa_NNP_34_194); cc(Lakes_NNP_31_181, and_CC_35_204); conj(Lakes_NNP_31_181, Ellesmere_NNP_37_213); nn(Wairarapa_NNP_34_194, Lake_NNP_33_189); nn(Ellesmere_NNP_37_213, Lake_NNP_36_208); det(Islands_NNP_42_241, the_DT_40_229); nn(Islands_NNP_42_241, Chatham_NNP_41_233)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8738004889069181	0.7345	34	0.8717948717948718	(Italy 's unemployment rate; rose to; 12 % of the labor force)	false	false	Italy 's unemployment rate rose to 12 % of the labor force in July from 11.9 % in April , and was up from 11.7 % a year earlier , according to quarterly figures from the state statistical institute .	possessive(Italy_NNP_0_0, 's_POS_1_6); poss(rate_NN_3_22, Italy_NNP_0_0); nn(rate_NN_3_22, unemployment_NN_2_9); nsubj(rose_VBD_4_27, rate_NN_3_22); prep(rose_VBD_4_27, to_TO_5_32); prep(rose_VBD_4_27, in_IN_12_59); prep(rose_VBD_4_27, from_IN_14_67); prep(rose_VBD_4_27, in_IN_17_79); punct(rose_VBD_4_27, ,_,_19_88); cc(rose_VBD_4_27, and_CC_20_90); conj(rose_VBD_4_27, was_VBD_21_94); punct(rose_VBD_4_27, ,_,_29_128); prep(rose_VBD_4_27, according_VBG_30_130); punct(rose_VBD_4_27, ._._39_198); pobj(to_TO_5_32, %_NN_7_38); num(%_NN_7_38, 12_CD_6_35); prep(%_NN_7_38, of_IN_8_40); pobj(of_IN_8_40, force_NN_11_53); det(force_NN_11_53, the_DT_9_43); nn(force_NN_11_53, labor_NN_10_47); pobj(in_IN_12_59, July_NNP_13_62); pobj(from_IN_14_67, %_NN_16_77); num(%_NN_16_77, 11.9_CD_15_72); pobj(in_IN_17_79, April_NNP_18_82); advmod(was_VBD_21_94, up_RB_22_98); dep(up_RB_22_98, from_IN_23_101); pobj(from_IN_23_101, %_NN_25_111); dep(from_IN_23_101, earlier_RB_28_120); num(%_NN_25_111, 11.7_CD_24_106); det(year_NN_27_115, a_DT_26_113); dep(earlier_RB_28_120, year_NN_27_115); dep(according_VBG_30_130, to_TO_31_140); pobj(to_TO_31_140, figures_NNS_33_153); amod(figures_NNS_33_153, quarterly_JJ_32_143); prep(figures_NNS_33_153, from_IN_34_161); pobj(from_IN_34_161, institute_NN_38_188); det(institute_NN_38_188, the_DT_35_166); nn(institute_NN_38_188, state_NN_36_170); amod(institute_NN_38_188, statistical_JJ_37_176)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8730819698845458	0.7345	35	0.875	(Vader; got on; the ring apron to distract him)	false	false	As Sid was about to powerbomb Vader , Vader 's manager Jim Cornette got on the ring apron to distract him .	pobj(As_IN_0_0, Sid_NNP_1_3); prep(about_IN_3_11, As_IN_0_0); aux(about_IN_3_11, was_VBD_2_7); xcomp(about_IN_3_11, powerbomb_VB_5_20); punct(about_IN_3_11, ._._21_106); aux(powerbomb_VB_5_20, to_TO_4_17); ccomp(powerbomb_VB_5_20, got_VBD_13_68); punct(Vader_NNP_6_30, ,_,_7_36); conj(Vader_NNP_6_30, Cornette_NNP_12_59); possessive(Vader_NNP_8_38, 's_POS_9_44); poss(Cornette_NNP_12_59, Vader_NNP_8_38); nn(Cornette_NNP_12_59, manager_NN_10_47); nn(Cornette_NNP_12_59, Jim_NNP_11_55); nsubj(got_VBD_13_68, Vader_NNP_6_30); prep(got_VBD_13_68, on_IN_14_72); pobj(on_IN_14_72, apron_NN_17_84); det(apron_NN_17_84, the_DT_15_75); nn(apron_NN_17_84, ring_NN_16_79); infmod(apron_NN_17_84, distract_VB_19_93); aux(distract_VB_19_93, to_TO_18_90); dobj(distract_VB_19_93, him_PRP_20_102)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8730819698845458	0.7345	36	0.8780487804878049	(Lenin; dispatched Stalin to; the city of Tsaritsyn)	false	false	In May 1918 , Lenin dispatched Stalin to the city of Tsaritsyn .	pobj(In_IN_0_0, May_NNP_1_3); num(May_NNP_1_3, 1918_CD_2_7); prep(dispatched_VBD_5_20, In_IN_0_0); punct(dispatched_VBD_5_20, ,_,_3_12); nsubj(dispatched_VBD_5_20, Lenin_NNP_4_14); dobj(dispatched_VBD_5_20, Stalin_NNP_6_31); prep(dispatched_VBD_5_20, to_TO_7_38); punct(dispatched_VBD_5_20, ._._12_63); pobj(to_TO_7_38, city_NN_9_45); det(city_NN_9_45, the_DT_8_41); prep(city_NN_9_45, of_IN_10_50); pobj(of_IN_10_50, Tsaritsyn_NNP_11_53)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8730819698845458	0.7345	37	0.8809523809523809	(he; tapped Connor to serve in; the office of the Texas Secretary of State)	false	false	When Rick Perry became Governor of Texas in January 2001 , he tapped Connor to serve as the Deputy Secretary in the office of the Texas Secretary of State .	nn(Perry_NNP_2_10, Rick_NNP_1_5); advmod(Governor_NNP_4_23, When_WRB_0_0); nsubj(Governor_NNP_4_23, Perry_NNP_2_10); cop(Governor_NNP_4_23, became_VBD_3_16); prep(Governor_NNP_4_23, of_IN_5_32); prep(Governor_NNP_4_23, in_IN_7_41); pobj(of_IN_5_32, Texas_NNP_6_35); pobj(in_IN_7_41, January_NNP_8_44); num(January_NNP_8_44, 2001_CD_9_52); dep(tapped_VBD_12_62, Governor_NNP_4_23); punct(tapped_VBD_12_62, ,_,_10_57); nsubj(tapped_VBD_12_62, he_PRP_11_59); dobj(tapped_VBD_12_62, Connor_NNP_13_69); xcomp(tapped_VBD_12_62, serve_VB_15_79); punct(tapped_VBD_12_62, ._._29_155); aux(serve_VB_15_79, to_TO_14_76); prep(serve_VB_15_79, as_IN_16_85); prep(serve_VB_15_79, in_IN_20_109); pobj(as_IN_16_85, Secretary_NNP_19_99); det(Secretary_NNP_19_99, the_DT_17_88); nn(Secretary_NNP_19_99, Deputy_NNP_18_92); pobj(in_IN_20_109, office_NN_22_116); det(office_NN_22_116, the_DT_21_112); prep(office_NN_22_116, of_IN_23_123); pobj(of_IN_23_123, Texas_NNP_25_130); det(Texas_NNP_25_130, the_DT_24_126); dep(Texas_NNP_25_130, Secretary_NNP_26_136); prep(Texas_NNP_25_130, of_IN_27_146); pobj(of_IN_27_146, State_NNP_28_149)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8730819698845458	0.7345	38	0.8837209302325582	(he; received a Master of Arts from; Royal Military College of Canada)	false	false	While in the CF , he completed the year-long course at the Canadian Forces Command and Staff College and received a Master of Arts in war studies degree from Royal Military College of Canada , student # G0053 in 1980 .	dep(While_IN_0_0, in_IN_1_6); pobj(in_IN_1_6, CF_NNP_3_13); det(CF_NNP_3_13, the_DT_2_9); prep(completed_VBD_6_21, While_IN_0_0); punct(completed_VBD_6_21, ,_,_4_16); nsubj(completed_VBD_6_21, he_PRP_5_18); dobj(completed_VBD_6_21, course_NN_9_45); prep(completed_VBD_6_21, at_IN_10_52); cc(completed_VBD_6_21, and_CC_18_101); conj(completed_VBD_6_21, received_VBD_19_105); punct(completed_VBD_6_21, ._._40_217); det(course_NN_9_45, the_DT_7_31); amod(course_NN_9_45, year-long_JJ_8_35); pobj(at_IN_10_52, Command_NNP_14_75); det(Command_NNP_14_75, the_DT_11_55); nn(Command_NNP_14_75, Canadian_NNP_12_59); nn(Command_NNP_14_75, Forces_NNP_13_68); cc(Command_NNP_14_75, and_CC_15_83); conj(Command_NNP_14_75, College_NNP_17_93); nn(College_NNP_17_93, Staff_NNP_16_87); dobj(received_VBD_19_105, Master_NN_21_116); prep(received_VBD_19_105, in_IN_24_131); prep(received_VBD_19_105, from_IN_28_153); det(Master_NN_21_116, a_DT_20_114); prep(Master_NN_21_116, of_IN_22_123); pobj(of_IN_22_123, Arts_NNS_23_126); pobj(in_IN_24_131, degree_NN_27_146); nn(degree_NN_27_146, war_NN_25_134); nn(degree_NN_27_146, studies_NNS_26_138); pobj(from_IN_28_153, College_NNP_31_173); nn(College_NNP_31_173, Royal_NNP_29_158); nn(College_NNP_31_173, Military_NNP_30_164); prep(College_NNP_31_173, of_IN_32_181); punct(College_NNP_31_173, ,_,_34_191); appos(College_NNP_31_173, student_NN_35_193); pobj(of_IN_32_181, Canada_NNP_33_184); ccomp(student_NN_35_193, G0053_._37_203); dep(G0053_._37_203, #_#_36_201); prep(G0053_._37_203, in_IN_38_209); pobj(in_IN_38_209, 1980_CD_39_212)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8729267550576569	0.7345	39	0.8863636363636364	(He; came in; 1980)	false	false	He came to Tehran in 1980 and continued studying traditional arrangements under Mohammad Reza Lotfi and his brother Pashang .	nsubj(came_VBD_1_3, He_PRP_0_0); prep(came_VBD_1_3, to_TO_2_8); prep(came_VBD_1_3, in_IN_4_18); cc(came_VBD_1_3, and_CC_6_26); conj(came_VBD_1_3, studying_VBG_8_40); punct(came_VBD_1_3, ._._19_124); pobj(to_TO_2_8, Tehran_NNP_3_11); pobj(in_IN_4_18, 1980_CD_5_21); aux(studying_VBG_8_40, continued_VBD_7_30); dobj(studying_VBG_8_40, arrangements_NNS_10_61); prep(studying_VBG_8_40, under_IN_11_74); amod(arrangements_NNS_10_61, traditional_JJ_9_49); pobj(under_IN_11_74, Lotfi_NNP_14_94); nn(Lotfi_NNP_14_94, Mohammad_NNP_12_80); nn(Lotfi_NNP_14_94, Reza_NNP_13_89); cc(Lotfi_NNP_14_94, and_CC_15_100); conj(Lotfi_NNP_14_94, Pashang_NNP_18_116); poss(Pashang_NNP_18_116, his_PRP$_16_104); nn(Pashang_NNP_18_116, brother_NN_17_108)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8729267550576569	0.7345	40	0.8888888888888888	(He; died in; Washington)	false	false	He died in Washington , D.C. on April 10 , 1907 and was interred in Lakeside Cemetery in Bryant Pond , Maine .	nsubj(died_VBD_1_3, He_PRP_0_0); prep(died_VBD_1_3, in_IN_2_8); prep(died_VBD_1_3, on_IN_6_28); cc(died_VBD_1_3, and_CC_11_47); conj(died_VBD_1_3, interred_VBN_13_55); punct(died_VBD_1_3, ._._22_107); pobj(in_IN_2_8, Washington_NNP_3_11); punct(Washington_NNP_3_11, ,_,_4_21); dep(Washington_NNP_3_11, D.C._NNP_5_23); pobj(on_IN_6_28, April_NNP_7_31); num(April_NNP_7_31, 10_CD_8_37); punct(April_NNP_7_31, ,_,_9_40); num(April_NNP_7_31, 1907_CD_10_42); auxpass(interred_VBN_13_55, was_VBD_12_51); prep(interred_VBN_13_55, in_IN_14_64); pobj(in_IN_14_64, Cemetery_NNP_16_76); nn(Cemetery_NNP_16_76, Lakeside_NNP_15_67); prep(Cemetery_NNP_16_76, in_IN_17_85); pobj(in_IN_17_85, Pond_NNP_19_95); nn(Pond_NNP_19_95, Bryant_NNP_18_88); punct(Pond_NNP_19_95, ,_,_20_99); appos(Pond_NNP_19_95, Maine_NNP_21_101)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8729267550576569	0.7345	41	0.8913043478260869	(He; died on; April 10 , 1907)	false	false	He died in Washington , D.C. on April 10 , 1907 and was interred in Lakeside Cemetery in Bryant Pond , Maine .	nsubj(died_VBD_1_3, He_PRP_0_0); prep(died_VBD_1_3, in_IN_2_8); prep(died_VBD_1_3, on_IN_6_28); cc(died_VBD_1_3, and_CC_11_47); conj(died_VBD_1_3, interred_VBN_13_55); punct(died_VBD_1_3, ._._22_107); pobj(in_IN_2_8, Washington_NNP_3_11); punct(Washington_NNP_3_11, ,_,_4_21); dep(Washington_NNP_3_11, D.C._NNP_5_23); pobj(on_IN_6_28, April_NNP_7_31); num(April_NNP_7_31, 10_CD_8_37); punct(April_NNP_7_31, ,_,_9_40); num(April_NNP_7_31, 1907_CD_10_42); auxpass(interred_VBN_13_55, was_VBD_12_51); prep(interred_VBN_13_55, in_IN_14_64); pobj(in_IN_14_64, Cemetery_NNP_16_76); nn(Cemetery_NNP_16_76, Lakeside_NNP_15_67); prep(Cemetery_NNP_16_76, in_IN_17_85); pobj(in_IN_17_85, Pond_NNP_19_95); nn(Pond_NNP_19_95, Bryant_NNP_18_88); punct(Pond_NNP_19_95, ,_,_20_99); appos(Pond_NNP_19_95, Maine_NNP_21_101)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8729267550576569	0.7345	42	0.8936170212765957	(Italy 's unemployment rate; rose in; April)	false	false	Italy 's unemployment rate rose to 12 % of the labor force in July from 11.9 % in April , and was up from 11.7 % a year earlier , according to quarterly figures from the state statistical institute .	possessive(Italy_NNP_0_0, 's_POS_1_6); poss(rate_NN_3_22, Italy_NNP_0_0); nn(rate_NN_3_22, unemployment_NN_2_9); nsubj(rose_VBD_4_27, rate_NN_3_22); prep(rose_VBD_4_27, to_TO_5_32); prep(rose_VBD_4_27, in_IN_12_59); prep(rose_VBD_4_27, from_IN_14_67); prep(rose_VBD_4_27, in_IN_17_79); punct(rose_VBD_4_27, ,_,_19_88); cc(rose_VBD_4_27, and_CC_20_90); conj(rose_VBD_4_27, was_VBD_21_94); punct(rose_VBD_4_27, ,_,_29_128); prep(rose_VBD_4_27, according_VBG_30_130); punct(rose_VBD_4_27, ._._39_198); pobj(to_TO_5_32, %_NN_7_38); num(%_NN_7_38, 12_CD_6_35); prep(%_NN_7_38, of_IN_8_40); pobj(of_IN_8_40, force_NN_11_53); det(force_NN_11_53, the_DT_9_43); nn(force_NN_11_53, labor_NN_10_47); pobj(in_IN_12_59, July_NNP_13_62); pobj(from_IN_14_67, %_NN_16_77); num(%_NN_16_77, 11.9_CD_15_72); pobj(in_IN_17_79, April_NNP_18_82); advmod(was_VBD_21_94, up_RB_22_98); dep(up_RB_22_98, from_IN_23_101); pobj(from_IN_23_101, %_NN_25_111); dep(from_IN_23_101, earlier_RB_28_120); num(%_NN_25_111, 11.7_CD_24_106); det(year_NN_27_115, a_DT_26_113); dep(earlier_RB_28_120, year_NN_27_115); dep(according_VBG_30_130, to_TO_31_140); pobj(to_TO_31_140, figures_NNS_33_153); amod(figures_NNS_33_153, quarterly_JJ_32_143); prep(figures_NNS_33_153, from_IN_34_161); pobj(from_IN_34_161, institute_NN_38_188); det(institute_NN_38_188, the_DT_35_166); nn(institute_NN_38_188, state_NN_36_170); amod(institute_NN_38_188, statistical_JJ_37_176)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8729267550576569	0.7345	43	0.8958333333333334	(The Skeleton King; later merged with; the demon)	false	false	The Skeleton King later merged with the demon Dark One , only to have him decapitated by the Hyperforce .	det(King_NNP_2_13, The_DT_0_0); nn(King_NNP_2_13, Skeleton_NNP_1_4); nsubj(merged_VBD_4_24, King_NNP_2_13); advmod(merged_VBD_4_24, later_RB_3_18); prep(merged_VBD_4_24, with_IN_5_31); tmod(merged_VBD_4_24, Dark_NNP_8_46); punct(merged_VBD_4_24, ,_,_10_55); xcomp(merged_VBD_4_24, have_VB_13_65); punct(merged_VBD_4_24, ._._19_104); pobj(with_IN_5_31, demon_NN_7_40); det(demon_NN_7_40, the_DT_6_36); num(Dark_NNP_8_46, One_CD_9_51); advmod(have_VB_13_65, only_RB_11_57); aux(have_VB_13_65, to_TO_12_62); ccomp(have_VB_13_65, decapitated_VBN_15_74); nsubjpass(decapitated_VBN_15_74, him_PRP_14_70); prep(decapitated_VBN_15_74, by_IN_16_86); pobj(by_IN_16_86, Hyperforce_NNP_18_93); det(Hyperforce_NNP_18_93, the_DT_17_89)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8729267550576569	0.7345	44	0.8979591836734694	(Turner; also starred in; the film)	false	false	Turner also starred in the film , portraying a young woman whose friends help her find a new girlfriend , Ely , portayed by VS Brodie .	nsubj(starred_VBD_2_12, Turner_NNP_0_0); advmod(starred_VBD_2_12, also_RB_1_7); prep(starred_VBD_2_12, in_IN_3_20); punct(starred_VBD_2_12, ,_,_6_32); xcomp(starred_VBD_2_12, portraying_VBG_7_34); punct(starred_VBD_2_12, ._._26_134); pobj(in_IN_3_20, film_NN_5_27); det(film_NN_5_27, the_DT_4_23); dobj(portraying_VBG_7_34, woman_NN_10_53); det(woman_NN_10_53, a_DT_8_45); amod(woman_NN_10_53, young_JJ_9_47); rcmod(woman_NN_10_53, help_VBP_13_73); poss(friends_NNS_12_65, whose_WP$_11_59); nsubj(help_VBP_13_73, friends_NNS_12_65); ccomp(help_VBP_13_73, find_VB_15_82); nsubj(find_VB_15_82, her_PRP_14_78); dobj(find_VB_15_82, girlfriend_NN_18_93); det(girlfriend_NN_18_93, a_DT_16_87); amod(girlfriend_NN_18_93, new_JJ_17_89); punct(girlfriend_NN_18_93, ,_,_19_104); appos(girlfriend_NN_18_93, Ely_NNP_20_106); punct(girlfriend_NN_18_93, ,_,_21_110); partmod(girlfriend_NN_18_93, portayed_VBN_22_112); prep(portayed_VBN_22_112, by_IN_23_121); pobj(by_IN_23_121, Brodie_NNP_25_127); nn(Brodie_NNP_25_127, VS_NNP_24_124)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8714822869067644	0.3797	45	0.9	(researchers; had to carry out; several rounds of DNA cutting)	false	false	With such a large genome , researchers had to carry out several rounds of DNA cutting , cloning , and physical mapping .	pobj(With_IN_0_0, genome_NN_4_18); predet(genome_NN_4_18, such_PDT_1_5); det(genome_NN_4_18, a_DT_2_10); amod(genome_NN_4_18, large_JJ_3_12); prep(had_VBD_7_39, With_IN_0_0); punct(had_VBD_7_39, ,_,_5_25); nsubj(had_VBD_7_39, researchers_NNS_6_27); xcomp(had_VBD_7_39, carry_VB_9_46); punct(had_VBD_7_39, ,_,_16_86); xcomp(had_VBD_7_39, cloning_VBG_17_88); punct(had_VBD_7_39, ._._22_119); aux(carry_VB_9_46, to_TO_8_43); prt(carry_VB_9_46, out_RP_10_52); dobj(carry_VB_9_46, rounds_NNS_12_64); amod(rounds_NNS_12_64, several_JJ_11_56); prep(rounds_NNS_12_64, of_IN_13_71); pobj(of_IN_13_71, cutting_NN_15_78); nn(cutting_NN_15_78, DNA_NNP_14_74); punct(cloning_VBG_17_88, ,_,_18_96); cc(cloning_VBG_17_88, and_CC_19_98); conj(cloning_VBG_17_88, mapping_NN_21_111); amod(mapping_NN_21_111, physical_JJ_20_102)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.3797	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8710640791017942	1.0	46	0.9019607843137255	(A collection of her art; was displayed at; an exhibition)	false	false	A collection of her art was displayed at an exhibition in Tehran by supporters campaigning to release her .	det(collection_NN_1_2, A_DT_0_0); prep(collection_NN_1_2, of_IN_2_13); pobj(of_IN_2_13, art_NN_4_20); poss(art_NN_4_20, her_PRP$_3_16); nsubjpass(displayed_VBN_6_28, collection_NN_1_2); auxpass(displayed_VBN_6_28, was_VBD_5_24); prep(displayed_VBN_6_28, at_IN_7_38); prep(displayed_VBN_6_28, by_IN_12_65); punct(displayed_VBN_6_28, ._._18_106); pobj(at_IN_7_38, exhibition_NN_9_44); det(exhibition_NN_9_44, an_DT_8_41); prep(exhibition_NN_9_44, in_IN_10_55); pobj(in_IN_10_55, Tehran_NNP_11_58); pobj(by_IN_12_65, supporters_NNS_13_68); partmod(supporters_NNS_13_68, campaigning_VBG_14_79); xcomp(campaigning_VBG_14_79, release_VB_16_94); aux(release_VB_16_94, to_TO_15_91); dobj(release_VB_16_94, her_PRP_17_102)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8710640791017942	1.0	47	0.9038461538461539	(The incidence of malaria; was greatly diminished in; the 1960s)	false	false	The incidence of malaria was greatly diminished in the 1960s by insecticides that reduced carrier populations of Anopheles mosquitoes and by drugs that killed Plasmodium in humans .	det(incidence_NN_1_4, The_DT_0_0); prep(incidence_NN_1_4, of_IN_2_14); pobj(of_IN_2_14, malaria_NN_3_17); nsubjpass(diminished_VBN_6_37, incidence_NN_1_4); auxpass(diminished_VBN_6_37, was_VBD_4_25); advmod(diminished_VBN_6_37, greatly_RB_5_29); prep(diminished_VBN_6_37, in_IN_7_48); prep(diminished_VBN_6_37, by_IN_10_61); punct(diminished_VBN_6_37, ._._27_180); pobj(in_IN_7_48, 1960s_NNS_9_55); det(1960s_NNS_9_55, the_DT_8_51); pobj(by_IN_10_61, insecticides_NNS_11_64); cc(by_IN_10_61, and_CC_19_134); conj(by_IN_10_61, by_IN_20_138); rcmod(insecticides_NNS_11_64, reduced_VBD_13_82); nsubj(reduced_VBD_13_82, that_WDT_12_77); dobj(reduced_VBD_13_82, populations_NNS_15_98); nn(populations_NNS_15_98, carrier_NN_14_90); prep(populations_NNS_15_98, of_IN_16_110); pobj(of_IN_16_110, mosquitoes_NNS_18_123); nn(mosquitoes_NNS_18_123, Anopheles_NNP_17_113); pobj(by_IN_20_138, drugs_NNS_21_141); rcmod(drugs_NNS_21_141, killed_VBD_23_152); nsubj(killed_VBD_23_152, that_WDT_22_147); dobj(killed_VBD_23_152, Plasmodium_NNP_24_159); prep(killed_VBD_23_152, in_IN_25_170); pobj(in_IN_25_170, humans_NNS_26_173)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8671726583772422	0.7345	48	0.9056603773584906	(The board; expanded to; 17 seats)	false	false	The board expanded to 17 seats .	det(board_NN_1_4, The_DT_0_0); nsubj(expanded_VBD_2_10, board_NN_1_4); prep(expanded_VBD_2_10, to_TO_3_19); punct(expanded_VBD_2_10, ._._6_31); pobj(to_TO_3_19, seats_NNS_5_25); num(seats_NNS_5_25, 17_CD_4_22)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8642529189447961	0.9555	49	0.9074074074074074	(Lakitelek; is a large village in; the Southern Great Plain region of southern Hungary)	false	false	Lakitelek is a large village in Bics-Kiskun county , in the Southern Great Plain region of southern Hungary .	nsubj(village_NN_4_21, Lakitelek_NNP_0_0); cop(village_NN_4_21, is_VBZ_1_10); det(village_NN_4_21, a_DT_2_13); amod(village_NN_4_21, large_JJ_3_15); prep(village_NN_4_21, in_IN_5_29); punct(village_NN_4_21, ,_,_8_51); prep(village_NN_4_21, in_IN_9_53); punct(village_NN_4_21, ._._18_108); pobj(in_IN_5_29, county_NN_7_44); nn(county_NN_7_44, Bics-Kiskun_NNP_6_32); pobj(in_IN_9_53, region_NN_14_81); det(region_NN_14_81, the_DT_10_56); nn(region_NN_14_81, Southern_NNP_11_60); nn(region_NN_14_81, Great_NNP_12_69); nn(region_NN_14_81, Plain_NNP_13_75); prep(region_NN_14_81, of_IN_15_88); pobj(of_IN_15_88, Hungary_NNP_17_100); amod(Hungary_NNP_17_100, southern_JJ_16_91)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.9555	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8642529189447961	0.9555	50	0.9090909090909091	(North Luffenham; is a village in; the East Midlands of England)	false	false	North Luffenham is a village in Rutland , in the East Midlands of England .	nn(Luffenham_NNP_1_6, North_NNP_0_0); nsubj(village_NN_4_21, Luffenham_NNP_1_6); cop(village_NN_4_21, is_VBZ_2_16); det(village_NN_4_21, a_DT_3_19); prep(village_NN_4_21, in_IN_5_29); punct(village_NN_4_21, ,_,_7_40); prep(village_NN_4_21, in_IN_8_42); punct(village_NN_4_21, ._._14_74); pobj(in_IN_5_29, Rutland_NNP_6_32); pobj(in_IN_8_42, Midlands_NNP_11_54); det(Midlands_NNP_11_54, the_DT_9_45); nn(Midlands_NNP_11_54, East_NNP_10_49); prep(Midlands_NNP_11_54, of_IN_12_63); pobj(of_IN_12_63, England_NNP_13_66)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.9555	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8606381067049523	1.0	51	0.9107142857142857	(his birth; was born at; a major tourist attraction)	false	false	Byrom was born at what is now the Wellington Inn , Manchester , in 1692 , The Wellington Inn is now a major tourist attraction , and his birth is commemorated by a plaque in the bar area .	nsubjpass(born_VBN_2_10, Byrom_NNP_0_0); auxpass(born_VBN_2_10, was_VBD_1_6); prep(born_VBN_2_10, at_IN_3_15); punct(born_VBN_2_10, ,_,_25_127); cc(born_VBN_2_10, and_CC_26_129); conj(born_VBN_2_10, commemorated_VBN_30_146); punct(born_VBN_2_10, ._._38_187); pobj(at_IN_3_15, attraction_NN_24_116); dep(what_WP_4_18, is_VBZ_5_23); advmod(is_VBZ_5_23, now_RB_6_26); prep(is_VBZ_5_23, in_IN_13_64); dep(now_RB_6_26, Inn_NNP_9_45); det(Inn_NNP_9_45, the_DT_7_30); nn(Inn_NNP_9_45, Wellington_NNP_8_34); punct(Inn_NNP_9_45, ,_,_10_49); appos(Inn_NNP_9_45, Manchester_NNP_11_51); punct(Inn_NNP_9_45, ,_,_12_62); pobj(in_IN_13_64, 1692_CD_14_67); det(Inn_NNP_18_89, The_DT_16_74); nn(Inn_NNP_18_89, Wellington_NNP_17_78); dep(attraction_NN_24_116, what_WP_4_18); punct(attraction_NN_24_116, ,_,_15_72); nsubj(attraction_NN_24_116, Inn_NNP_18_89); cop(attraction_NN_24_116, is_VBZ_19_93); advmod(attraction_NN_24_116, now_RB_20_96); det(attraction_NN_24_116, a_DT_21_100); amod(attraction_NN_24_116, major_JJ_22_102); nn(attraction_NN_24_116, tourist_NN_23_108); poss(birth_NN_28_137, his_PRP$_27_133); nsubjpass(commemorated_VBN_30_146, birth_NN_28_137); auxpass(commemorated_VBN_30_146, is_VBZ_29_143); prep(commemorated_VBN_30_146, by_IN_31_159); pobj(by_IN_31_159, plaque_NN_33_164); det(plaque_NN_33_164, a_DT_32_162); prep(plaque_NN_33_164, in_IN_34_171); pobj(in_IN_34_171, area_NN_37_182); det(area_NN_37_182, the_DT_35_174); nn(area_NN_37_182, bar_NN_36_178)	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
0	0.8606381067049523	1.0	51	0.8947368421052632	(SirsiDynix; was founded in; 1983)	false	false	The Dynix corporation was founded in 1983 , and SirsiDynix was formed by the merger of the Sirsi and Dynix corporations in June 2005 .	det(corporation_NN_2_10, The_DT_0_0); nn(corporation_NN_2_10, Dynix_NNP_1_4); nsubjpass(founded_VBN_4_26, corporation_NN_2_10); auxpass(founded_VBN_4_26, was_VBD_3_22); prep(founded_VBN_4_26, in_IN_5_34); punct(founded_VBN_4_26, ,_,_7_42); cc(founded_VBN_4_26, and_CC_8_44); conj(founded_VBN_4_26, formed_VBN_11_63); punct(founded_VBN_4_26, ._._24_133); pobj(in_IN_5_34, 1983_CD_6_37); nsubjpass(formed_VBN_11_63, SirsiDynix_NNP_9_48); auxpass(formed_VBN_11_63, was_VBD_10_59); prep(formed_VBN_11_63, by_IN_12_70); prep(formed_VBN_11_63, in_IN_21_120); pobj(by_IN_12_70, merger_NN_14_77); det(merger_NN_14_77, the_DT_13_73); prep(merger_NN_14_77, of_IN_15_84); pobj(of_IN_15_84, corporations_NNS_20_107); cc(Sirsi_NNP_17_91, and_CC_18_97); conj(Sirsi_NNP_17_91, Dynix_NNP_19_101); det(corporations_NNS_20_107, the_DT_16_87); nn(corporations_NNS_20_107, Sirsi_NNP_17_91); pobj(in_IN_21_120, June_NNP_22_123); num(June_NNP_22_123, 2005_CD_23_128)	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.860181709202922	1.0	52	0.896551724137931	(he; was hosted by; an anti-Nazi Protestant family whose children had been required to join the Hitler Youth)	false	false	Visiting Germany in 1937 , he was hosted by an anti-Nazi Protestant family whose children had been required to join the Hitler Youth .	dobj(Visiting_VBG_0_0, Germany_NNP_1_9); prep(Visiting_VBG_0_0, in_IN_2_17); pobj(in_IN_2_17, 1937_CD_3_20); dep(hosted_VBN_7_34, Visiting_VBG_0_0); punct(hosted_VBN_7_34, ,_,_4_25); nsubjpass(hosted_VBN_7_34, he_PRP_5_27); auxpass(hosted_VBN_7_34, was_VBD_6_30); prep(hosted_VBN_7_34, by_IN_8_41); punct(hosted_VBN_7_34, ._._23_133); pobj(by_IN_8_41, family_NN_12_68); det(family_NN_12_68, an_DT_9_44); amod(family_NN_12_68, anti-Nazi_JJ_10_47); amod(family_NN_12_68, Protestant_JJ_11_57); rcmod(family_NN_12_68, required_VBN_17_99); poss(children_NNS_14_81, whose_WP$_13_75); nsubjpass(required_VBN_17_99, children_NNS_14_81); aux(required_VBN_17_99, had_VBD_15_90); auxpass(required_VBN_17_99, been_VBN_16_94); xcomp(required_VBN_17_99, join_VB_19_111); aux(join_VB_19_111, to_TO_18_108); dobj(join_VB_19_111, Youth_NNP_22_127); det(Youth_NNP_22_127, the_DT_20_116); nn(Youth_NNP_22_127, Hitler_NNP_21_120)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8600422350020404	0.0577	53	0.8983050847457628	(paleontologists; Furthermore have found; fossils of dinosaurs)[enabler=although the climate in these areas was milder when dinosaurs existed than it is today , it was cool enough that small dinosaurs may have had difficulty maintaining a high body temperature through ectothermy]	true	false	Furthermore , paleontologists have found fossils of dinosaurs in both Antarctica and the Arctic : although the climate in these areas was milder when dinosaurs existed than it is today , it was cool enough that small dinosaurs may have had difficulty maintaining a high body temperature through ectothermy .	advmod(found_VBN_4_35, Furthermore_RB_0_0); punct(found_VBN_4_35, ,_,_1_12); nsubj(found_VBN_4_35, paleontologists_NNS_2_14); aux(found_VBN_4_35, have_VBP_3_30); dobj(found_VBN_4_35, fossils_NNS_5_41); punct(found_VBN_4_35, :_:_14_96); advcl(found_VBN_4_35, milder_NN_22_138); punct(found_VBN_4_35, ._._49_306); prep(fossils_NNS_5_41, of_IN_6_49); pobj(of_IN_6_49, dinosaurs_NNS_7_52); prep(dinosaurs_NNS_7_52, in_IN_8_62); pobj(in_IN_8_62, Antarctica_NNP_10_70); preconj(Antarctica_NNP_10_70, both_DT_9_65); cc(Antarctica_NNP_10_70, and_CC_11_81); conj(Antarctica_NNP_10_70, Arctic_NNP_13_89); det(Arctic_NNP_13_89, the_DT_12_85); det(climate_NN_17_111, the_DT_16_107); prep(climate_NN_17_111, in_IN_18_119); pobj(in_IN_18_119, areas_NNS_20_128); det(areas_NNS_20_128, these_DT_19_122); mark(milder_NN_22_138, although_IN_15_98); nsubj(milder_NN_22_138, climate_NN_17_111); cop(milder_NN_22_138, was_VBD_21_134); amod(milder_NN_22_138, cool_JJ_33_194); advmod(existed_VBD_25_160, when_WRB_23_145); nsubj(existed_VBD_25_160, dinosaurs_NNS_24_150); dep(existed_VBD_25_160, today_NN_29_179); mark(today_NN_29_179, than_IN_26_168); nsubj(today_NN_29_179, it_PRP_27_173); cop(today_NN_29_179, is_VBZ_28_176); dep(cool_JJ_33_194, existed_VBD_25_160); punct(cool_JJ_33_194, ,_,_30_185); nsubj(cool_JJ_33_194, it_PRP_31_187); cop(cool_JJ_33_194, was_VBD_32_190); advmod(cool_JJ_33_194, enough_RB_34_199); ccomp(cool_JJ_33_194, had_VBD_40_236); amod(dinosaurs_NNS_37_217, small_JJ_36_211); complm(had_VBD_40_236, that_IN_35_206); nsubj(had_VBD_40_236, dinosaurs_NNS_37_217); aux(had_VBD_40_236, may_MD_38_227); aux(had_VBD_40_236, have_VB_39_231); dobj(had_VBD_40_236, difficulty_NN_41_240); dep(difficulty_NN_41_240, maintaining_VBG_42_251); dobj(maintaining_VBG_42_251, temperature_NN_46_275); prep(maintaining_VBG_42_251, through_IN_47_287); det(temperature_NN_46_275, a_DT_43_263); amod(temperature_NN_46_275, high_JJ_44_265); nn(temperature_NN_46_275, body_NN_45_270); pobj(through_IN_47_287, ectothermy_NN_48_295)	0.0	0.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0577	1.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.856815426256054	0.7345	54	0.9	(Coca-Cola Enterprises; blamed the lower volume on; its soft-drink prices which were about 3 % higher in the third quarter)	false	false	Coca-Cola Enterprises blamed the lower volume on its soft-drink prices , which were about 3 % higher in the third quarter .	nn(Enterprises_NNPS_1_10, Coca-Cola_NNP_0_0); nsubj(blamed_VBD_2_22, Enterprises_NNPS_1_10); dobj(blamed_VBD_2_22, volume_NN_5_39); prep(blamed_VBD_2_22, on_IN_6_46); punct(blamed_VBD_2_22, ._._21_122); det(volume_NN_5_39, the_DT_3_29); amod(volume_NN_5_39, lower_JJR_4_33); pobj(on_IN_6_46, prices_NNS_9_64); poss(prices_NNS_9_64, its_PRP$_7_49); nn(prices_NNS_9_64, soft-drink_NN_8_53); punct(prices_NNS_9_64, ,_,_10_71); rcmod(prices_NNS_9_64, higher_JJR_16_94); quantmod(3_CD_14_90, about_IN_13_84); num(%_NN_15_92, 3_CD_14_90); nsubj(higher_JJR_16_94, which_WDT_11_73); cop(higher_JJR_16_94, were_VBD_12_79); measure(higher_JJR_16_94, %_NN_15_92); prep(higher_JJR_16_94, in_IN_17_101); pobj(in_IN_17_101, quarter_NN_20_114); det(quarter_NN_20_114, the_DT_18_104); amod(quarter_NN_20_114, third_JJ_19_108)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.7345	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
0	0.8566696173564037	1.0	54	0.8852459016393442	(The body of an arthropod; is completely covered an exoskeleton constructed from layers of protein by; the cuticle)	false	false	The body of an arthropod is completely covered by the cuticle , an exoskeleton constructed from layers of protein and the polysaccharide chitin .	det(body_NN_1_4, The_DT_0_0); prep(body_NN_1_4, of_IN_2_9); pobj(of_IN_2_9, arthropod_NN_4_15); det(arthropod_NN_4_15, an_DT_3_12); nsubjpass(covered_VBN_7_39, body_NN_1_4); auxpass(covered_VBN_7_39, is_VBZ_5_25); advmod(covered_VBN_7_39, completely_RB_6_28); prep(covered_VBN_7_39, by_IN_8_47); punct(covered_VBN_7_39, ,_,_11_62); dobj(covered_VBN_7_39, exoskeleton_NN_13_67); punct(covered_VBN_7_39, ._._23_144); pobj(by_IN_8_47, cuticle_NN_10_54); det(cuticle_NN_10_54, the_DT_9_50); det(exoskeleton_NN_13_67, an_DT_12_64); partmod(exoskeleton_NN_13_67, constructed_VBN_14_79); cc(exoskeleton_NN_13_67, and_CC_19_114); conj(exoskeleton_NN_13_67, chitin_NN_22_137); prep(constructed_VBN_14_79, from_IN_15_91); pobj(from_IN_15_91, layers_NNS_16_96); prep(layers_NNS_16_96, of_IN_17_103); pobj(of_IN_17_103, protein_NN_18_106); det(chitin_NN_22_137, the_DT_20_118); nn(chitin_NN_22_137, polysaccharide_NN_21_122)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
0	0.8566696173564037	1.0	54	0.8709677419354839	(The body of an arthropod; is completely covered the polysaccharide chitin by; the cuticle)	false	false	The body of an arthropod is completely covered by the cuticle , an exoskeleton constructed from layers of protein and the polysaccharide chitin .	det(body_NN_1_4, The_DT_0_0); prep(body_NN_1_4, of_IN_2_9); pobj(of_IN_2_9, arthropod_NN_4_15); det(arthropod_NN_4_15, an_DT_3_12); nsubjpass(covered_VBN_7_39, body_NN_1_4); auxpass(covered_VBN_7_39, is_VBZ_5_25); advmod(covered_VBN_7_39, completely_RB_6_28); prep(covered_VBN_7_39, by_IN_8_47); punct(covered_VBN_7_39, ,_,_11_62); dobj(covered_VBN_7_39, exoskeleton_NN_13_67); punct(covered_VBN_7_39, ._._23_144); pobj(by_IN_8_47, cuticle_NN_10_54); det(cuticle_NN_10_54, the_DT_9_50); det(exoskeleton_NN_13_67, an_DT_12_64); partmod(exoskeleton_NN_13_67, constructed_VBN_14_79); cc(exoskeleton_NN_13_67, and_CC_19_114); conj(exoskeleton_NN_13_67, chitin_NN_22_137); prep(constructed_VBN_14_79, from_IN_15_91); pobj(from_IN_15_91, layers_NNS_16_96); prep(layers_NNS_16_96, of_IN_17_103); pobj(of_IN_17_103, protein_NN_18_106); det(chitin_NN_22_137, the_DT_20_118); nn(chitin_NN_22_137, polysaccharide_NN_21_122)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
0	0.8566696173564037	1.0	54	0.8571428571428571	(The coldest temperature; be ever recorded in; the city)	false	false	The coldest temperature ever recorded in the city was - 40F , on January 17 , 1982 , also known as Cold Sunday .	det(temperature_NN_2_12, The_DT_0_0); amod(temperature_NN_2_12, coldest_JJS_1_4); nsubjpass(recorded_VBN_4_29, temperature_NN_2_12); advmod(recorded_VBN_4_29, ever_RB_3_24); prep(recorded_VBN_4_29, in_IN_5_38); dep(recorded_VBN_4_29, was_VBD_8_50); punct(recorded_VBN_4_29, ._._23_111); pobj(in_IN_5_38, city_NN_7_45); det(city_NN_7_45, the_DT_6_41); punct(was_VBD_8_50, -_:_9_54); dep(was_VBD_8_50, known_VBN_19_90); punct(40F_CD_10_56, ,_,_11_60); prep(40F_CD_10_56, on_IN_12_62); punct(40F_CD_10_56, ,_,_17_83); pobj(on_IN_12_62, January_NNP_13_65); num(January_NNP_13_65, 17_CD_14_73); punct(January_NNP_13_65, ,_,_15_76); appos(January_NNP_13_65, 1982_CD_16_78); nsubjpass(known_VBN_19_90, 40F_CD_10_56); advmod(known_VBN_19_90, also_RB_18_85); prep(known_VBN_19_90, as_IN_20_96); pobj(as_IN_20_96, Sunday_NNP_22_104); amod(Sunday_NNP_22_104, Cold_JJ_21_99)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8550447583474959	0.3797	55	0.859375	(A temperate phage; called; lambda written with the Greek letter)	false	false	A temperate phage called lambda , written with the Greek letter , is widely used in biological research .	det(phage_NN_2_12, A_DT_0_0); amod(phage_NN_2_12, temperate_JJ_1_2); nsubj(called_VBD_3_18, phage_NN_2_12); dobj(called_VBD_3_18, lambda_NN_4_25); parataxis(called_VBD_3_18, used_VBN_14_77); punct(called_VBD_3_18, ._._18_105); punct(lambda_NN_4_25, ,_,_5_32); partmod(lambda_NN_4_25, written_VBN_6_34); prep(written_VBN_6_34, with_IN_7_42); pobj(with_IN_7_42, letter_NN_10_57); det(letter_NN_10_57, the_DT_8_47); nn(letter_NN_10_57, Greek_NNP_9_51); punct(used_VBN_14_77, ,_,_11_65); auxpass(used_VBN_14_77, is_VBZ_12_67); advmod(used_VBN_14_77, widely_RB_13_70); prep(used_VBN_14_77, in_IN_15_82); pobj(in_IN_15_82, research_NN_17_96); amod(research_NN_17_96, biological_JJ_16_85)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	1.0	0.3797	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
0	0.8510550448671066	1.0	55	0.8461538461538461	(unreleased; was asked by; SugarHill Recording Studios)	false	false	Also , although unreleased as of 2009 , Drop Trio was asked by SugarHill Recording Studios , in 2003 , to record a song by Destiny 's Child for an upcoming compilation CD to be released by the studio .	prep(unreleased_JJ_3_16, as_IN_4_27); dep(as_IN_4_27, of_IN_5_30); pobj(of_IN_5_30, 2009_CD_6_33); nn(Trio_NNP_9_45, Drop_NNP_8_40); mark(asked_VBN_11_54, although_IN_2_7); nsubjpass(asked_VBN_11_54, unreleased_JJ_3_16); punct(asked_VBN_11_54, ,_,_7_38); nsubjpass(asked_VBN_11_54, Trio_NNP_9_45); auxpass(asked_VBN_11_54, was_VBD_10_50); prep(asked_VBN_11_54, by_IN_12_60); pobj(by_IN_12_60, Studios_NNP_15_83); nn(Studios_NNP_15_83, SugarHill_NNP_13_63); nn(Studios_NNP_15_83, Recording_NNP_14_73); pobj(in_IN_17_93, 2003_CD_18_96); advmod(record_VB_21_106, Also_RB_0_0); punct(record_VB_21_106, ,_,_1_5); dep(record_VB_21_106, asked_VBN_11_54); punct(record_VB_21_106, ,_,_16_91); prep(record_VB_21_106, in_IN_17_93); punct(record_VB_21_106, ,_,_19_101); aux(record_VB_21_106, to_TO_20_103); dobj(record_VB_21_106, song_NN_23_115); prep(record_VB_21_106, by_IN_24_120); prep(record_VB_21_106, for_IN_28_140); punct(record_VB_21_106, ._._39_200); det(song_NN_23_115, a_DT_22_113); pobj(by_IN_24_120, Child_NN_27_134); possessive(Destiny_NNP_25_123, 's_POS_26_131); poss(Child_NN_27_134, Destiny_NNP_25_123); pobj(for_IN_28_140, CD_NN_32_168); det(CD_NN_32_168, an_DT_29_144); amod(CD_NN_32_168, upcoming_JJ_30_147); nn(CD_NN_32_168, compilation_NN_31_156); infmod(CD_NN_32_168, released_VBN_35_177); aux(released_VBN_35_177, to_TO_33_171); auxpass(released_VBN_35_177, be_VB_34_174); prep(released_VBN_35_177, by_IN_36_186); pobj(by_IN_36_186, studio_NN_38_193); det(studio_NN_38_193, the_DT_37_189)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8475390994633406	0.3797	56	0.8484848484848485	(he; led; the invasion of the Philippines)	false	false	As Commanding General of the newly formed Eighth Army , he led the invasion of the Philippines clearing the islands of Mindoro , Marinduque , Panay , Negros , Cebu and Bohol .	pobj(As_IN_0_0, General_NNP_2_14); nn(General_NNP_2_14, Commanding_NNP_1_3); prep(General_NNP_2_14, of_IN_3_22); pobj(of_IN_3_22, Army_NNP_8_49); advmod(formed_VBN_6_35, newly_RB_5_29); det(Army_NNP_8_49, the_DT_4_25); amod(Army_NNP_8_49, formed_VBN_6_35); nn(Army_NNP_8_49, Eighth_NNP_7_42); prep(led_VBD_11_59, As_IN_0_0); punct(led_VBD_11_59, ,_,_9_54); nsubj(led_VBD_11_59, he_PRP_10_56); dobj(led_VBD_11_59, invasion_NN_13_67); punct(led_VBD_11_59, ._._32_174); det(invasion_NN_13_67, the_DT_12_63); prep(invasion_NN_13_67, of_IN_14_76); pobj(of_IN_14_76, Philippines_NNPS_16_83); det(Philippines_NNPS_16_83, the_DT_15_79); partmod(Philippines_NNPS_16_83, clearing_VBG_17_95); dobj(clearing_VBG_17_95, islands_NNS_19_108); det(islands_NNS_19_108, the_DT_18_104); prep(islands_NNS_19_108, of_IN_20_116); pobj(of_IN_20_116, Mindoro_NNP_21_119); punct(Mindoro_NNP_21_119, ,_,_22_127); conj(Mindoro_NNP_21_119, Marinduque_NNP_23_129); punct(Mindoro_NNP_21_119, ,_,_24_140); conj(Mindoro_NNP_21_119, Panay_NNP_25_142); punct(Mindoro_NNP_21_119, ,_,_26_148); conj(Mindoro_NNP_21_119, Negros_NNP_27_150); punct(Mindoro_NNP_21_119, ,_,_28_157); conj(Mindoro_NNP_21_119, Cebu_NNP_29_159); cc(Mindoro_NNP_21_119, and_CC_30_164); conj(Mindoro_NNP_21_119, Bohol_NNP_31_168)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.3797	1.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8472379362949907	1.0	57	0.8507462686567164	(SirsiDynix; was formed by; the merger of the Sirsi and Dynix corporations)	false	false	The Dynix corporation was founded in 1983 , and SirsiDynix was formed by the merger of the Sirsi and Dynix corporations in June 2005 .	det(corporation_NN_2_10, The_DT_0_0); nn(corporation_NN_2_10, Dynix_NNP_1_4); nsubjpass(founded_VBN_4_26, corporation_NN_2_10); auxpass(founded_VBN_4_26, was_VBD_3_22); prep(founded_VBN_4_26, in_IN_5_34); punct(founded_VBN_4_26, ,_,_7_42); cc(founded_VBN_4_26, and_CC_8_44); conj(founded_VBN_4_26, formed_VBN_11_63); punct(founded_VBN_4_26, ._._24_133); pobj(in_IN_5_34, 1983_CD_6_37); nsubjpass(formed_VBN_11_63, SirsiDynix_NNP_9_48); auxpass(formed_VBN_11_63, was_VBD_10_59); prep(formed_VBN_11_63, by_IN_12_70); prep(formed_VBN_11_63, in_IN_21_120); pobj(by_IN_12_70, merger_NN_14_77); det(merger_NN_14_77, the_DT_13_73); prep(merger_NN_14_77, of_IN_15_84); pobj(of_IN_15_84, corporations_NNS_20_107); cc(Sirsi_NNP_17_91, and_CC_18_97); conj(Sirsi_NNP_17_91, Dynix_NNP_19_101); det(corporations_NNS_20_107, the_DT_16_87); nn(corporations_NNS_20_107, Sirsi_NNP_17_91); pobj(in_IN_21_120, June_NNP_22_123); num(June_NNP_22_123, 2005_CD_23_128)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	1.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.847056652054492	1.0	58	0.8529411764705882	(Junge; was originally drafted by; the Los Angeles Dodgers)	false	false	Junge was originally drafted by the Los Angeles Dodgers in the 1999 amateur draft and was then traded to the Philadelphia Phillies in .	nsubjpass(drafted_VBN_3_21, Junge_NNP_0_0); auxpass(drafted_VBN_3_21, was_VBD_1_6); advmod(drafted_VBN_3_21, originally_RB_2_10); prep(drafted_VBN_3_21, by_IN_4_29); prep(drafted_VBN_3_21, in_IN_9_56); cc(drafted_VBN_3_21, and_CC_14_82); conj(drafted_VBN_3_21, traded_VBN_17_95); punct(drafted_VBN_3_21, ._._23_134); pobj(by_IN_4_29, Dodgers_NNP_8_48); det(Dodgers_NNP_8_48, the_DT_5_32); nn(Dodgers_NNP_8_48, Los_NNP_6_36); nn(Dodgers_NNP_8_48, Angeles_NNP_7_40); pobj(in_IN_9_56, draft_NN_13_76); det(draft_NN_13_76, the_DT_10_59); num(draft_NN_13_76, 1999_CD_11_63); amod(draft_NN_13_76, amateur_JJ_12_68); auxpass(traded_VBN_17_95, was_VBD_15_86); advmod(traded_VBN_17_95, then_RB_16_90); prep(traded_VBN_17_95, to_TO_18_102); prt(traded_VBN_17_95, in_IN_22_131); pobj(to_TO_18_102, Phillies_NNP_21_122); det(Phillies_NNP_21_122, the_DT_19_105); nn(Phillies_NNP_21_122, Philadelphia_NNP_20_109)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8462126651811251	1.0	59	0.855072463768116	(he; was registered as; a CSKA player)	false	false	After CSKA qualified for the round of 16 of the UEFA Cup 2008 , he was called back from the loan and on 12 March 2009 was registered as a CSKA player .	pobj(After_IN_0_0, CSKA_NNP_1_6); prep(qualified_VBD_2_11, After_IN_0_0); prep(qualified_VBD_2_11, for_IN_3_21); pobj(for_IN_3_21, round_NN_5_29); det(round_NN_5_29, the_DT_4_25); prep(round_NN_5_29, of_IN_6_35); pobj(of_IN_6_35, 16_CD_7_38); prep(16_CD_7_38, of_IN_8_41); pobj(of_IN_8_41, Cup_NNP_11_53); det(Cup_NNP_11_53, the_DT_9_44); nn(Cup_NNP_11_53, UEFA_NNP_10_48); num(Cup_NNP_11_53, 2008_CD_12_57); advcl(called_VBN_16_71, qualified_VBD_2_11); punct(called_VBN_16_71, ,_,_13_62); nsubjpass(called_VBN_16_71, he_PRP_14_64); auxpass(called_VBN_16_71, was_VBD_15_67); advmod(called_VBN_16_71, back_RB_17_78); prep(called_VBN_16_71, from_IN_18_83); cc(called_VBN_16_71, and_CC_21_97); conj(called_VBN_16_71, registered_VBN_27_122); punct(called_VBN_16_71, ._._32_150); pobj(from_IN_18_83, loan_NN_20_92); det(loan_NN_20_92, the_DT_19_88); pobj(on_IN_22_101, March_NNP_24_107); num(March_NNP_24_107, 12_CD_23_104); num(March_NNP_24_107, 2009_CD_25_113); prep(registered_VBN_27_122, on_IN_22_101); auxpass(registered_VBN_27_122, was_VBD_26_118); prep(registered_VBN_27_122, as_IN_28_133); pobj(as_IN_28_133, player_NN_31_143); det(player_NN_31_143, a_DT_29_136); nn(player_NN_31_143, CSKA_NNP_30_138)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8462126651811251	1.0	60	0.8571428571428571	(she; was kidnapped on; January 7 , 2006)	false	false	Carroll became an international cause clbre when she was kidnapped in Baghdad on January 7 , 2006 .	nsubj(clbre_NN_5_38, Carroll_NNP_0_0); cop(clbre_NN_5_38, became_VBD_1_8); det(clbre_NN_5_38, an_DT_2_15); amod(clbre_NN_5_38, international_JJ_3_18); nn(clbre_NN_5_38, cause_NN_4_32); advcl(clbre_NN_5_38, kidnapped_VBN_9_57); punct(clbre_NN_5_38, ._._17_98); advmod(kidnapped_VBN_9_57, when_WRB_6_44); nsubjpass(kidnapped_VBN_9_57, she_PRP_7_49); auxpass(kidnapped_VBN_9_57, was_VBD_8_53); prep(kidnapped_VBN_9_57, in_IN_10_67); prep(kidnapped_VBN_9_57, on_IN_12_78); pobj(in_IN_10_67, Baghdad_NNP_11_70); pobj(on_IN_12_78, January_NNP_13_81); num(January_NNP_13_81, 7_CD_14_89); punct(January_NNP_13_81, ,_,_15_91); num(January_NNP_13_81, 2006_CD_16_93)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8462126651811251	1.0	61	0.8591549295774648	(he; was hit by; Texas Rangers pitcher C.J. Wilson)	false	false	His season was cut short when on September 1 , he was hit on the hand by Texas Rangers pitcher C.J. Wilson .	poss(season_NN_1_4, His_PRP$_0_0); nsubjpass(cut_VBN_3_15, season_NN_1_4); auxpass(cut_VBN_3_15, was_VBD_2_11); dep(cut_VBN_3_15, short_JJ_4_19); punct(cut_VBN_3_15, ._._22_107); advcl(short_JJ_4_19, hit_VBN_12_54); pobj(on_IN_6_30, September_NNP_7_33); num(September_NNP_7_33, 1_CD_8_43); advmod(hit_VBN_12_54, when_WRB_5_25); prep(hit_VBN_12_54, on_IN_6_30); punct(hit_VBN_12_54, ,_,_9_45); nsubjpass(hit_VBN_12_54, he_PRP_10_47); auxpass(hit_VBN_12_54, was_VBD_11_50); prep(hit_VBN_12_54, on_IN_13_58); prep(hit_VBN_12_54, by_IN_16_70); pobj(on_IN_13_58, hand_NN_15_65); det(hand_NN_15_65, the_DT_14_61); pobj(by_IN_16_70, Wilson_NNP_21_100); nn(Wilson_NNP_21_100, Texas_NNP_17_73); nn(Wilson_NNP_21_100, Rangers_NNPS_18_79); nn(Wilson_NNP_21_100, pitcher_NN_19_87); nn(Wilson_NNP_21_100, C.J._NNP_20_95)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8462126651811251	1.0	62	0.8611111111111112	(he; was traded for; Rickey Henderson , Bert Bradley , and cash)	false	false	On December 5 , 1984 , as a minor-leaguer , he was traded by the New York Yankees with Tim Birtsas , Jay Howell , Stan Javier , and Jose Rijo to the Oakland Athletics for Rickey Henderson , Bert Bradley , and cash .	pobj(On_IN_0_0, December_NNP_1_3); num(December_NNP_1_3, 5_CD_2_12); punct(December_NNP_1_3, ,_,_3_14); num(December_NNP_1_3, 1984_CD_4_16); pobj(as_IN_6_23, minor-leaguer_NN_8_28); det(minor-leaguer_NN_8_28, a_DT_7_26); prep(traded_VBN_12_51, On_IN_0_0); punct(traded_VBN_12_51, ,_,_5_21); prep(traded_VBN_12_51, as_IN_6_23); punct(traded_VBN_12_51, ,_,_9_42); nsubjpass(traded_VBN_12_51, he_PRP_10_44); auxpass(traded_VBN_12_51, was_VBD_11_47); prep(traded_VBN_12_51, by_IN_13_58); prep(traded_VBN_12_51, to_TO_31_142); prep(traded_VBN_12_51, for_IN_35_167); punct(traded_VBN_12_51, ._._44_214); pobj(by_IN_13_58, Yankees_NNS_17_74); det(Yankees_NNS_17_74, the_DT_14_61); nn(Yankees_NNS_17_74, New_NNP_15_65); nn(Yankees_NNS_17_74, York_NNP_16_69); prep(Yankees_NNS_17_74, with_IN_18_82); pobj(with_IN_18_82, Birtsas_NNP_20_91); nn(Birtsas_NNP_20_91, Tim_NNP_19_87); punct(Birtsas_NNP_20_91, ,_,_21_99); conj(Birtsas_NNP_20_91, Howell_NNP_23_105); punct(Birtsas_NNP_20_91, ,_,_24_112); conj(Birtsas_NNP_20_91, Javier_NNP_26_119); punct(Birtsas_NNP_20_91, ,_,_27_126); cc(Birtsas_NNP_20_91, and_CC_28_128); conj(Birtsas_NNP_20_91, Rijo_NNP_30_137); nn(Howell_NNP_23_105, Jay_NNP_22_101); nn(Javier_NNP_26_119, Stan_NNP_25_114); nn(Rijo_NNP_30_137, Jose_NNP_29_132); pobj(to_TO_31_142, Athletics_NNP_34_157); det(Athletics_NNP_34_157, the_DT_32_145); nn(Athletics_NNP_34_157, Oakland_NNP_33_149); pobj(for_IN_35_167, Henderson_NNP_37_178); nn(Henderson_NNP_37_178, Rickey_NNP_36_171); punct(Henderson_NNP_37_178, ,_,_38_188); appos(Henderson_NNP_37_178, Bradley_NNP_40_195); punct(Henderson_NNP_37_178, ,_,_41_203); cc(Henderson_NNP_37_178, and_CC_42_205); conj(Henderson_NNP_37_178, cash_NN_43_209); nn(Bradley_NNP_40_195, Bert_NNP_39_190)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8462126651811251	1.0	63	0.863013698630137	(SirsiDynix; was formed in; June 2005)	false	false	The Dynix corporation was founded in 1983 , and SirsiDynix was formed by the merger of the Sirsi and Dynix corporations in June 2005 .	det(corporation_NN_2_10, The_DT_0_0); nn(corporation_NN_2_10, Dynix_NNP_1_4); nsubjpass(founded_VBN_4_26, corporation_NN_2_10); auxpass(founded_VBN_4_26, was_VBD_3_22); prep(founded_VBN_4_26, in_IN_5_34); punct(founded_VBN_4_26, ,_,_7_42); cc(founded_VBN_4_26, and_CC_8_44); conj(founded_VBN_4_26, formed_VBN_11_63); punct(founded_VBN_4_26, ._._24_133); pobj(in_IN_5_34, 1983_CD_6_37); nsubjpass(formed_VBN_11_63, SirsiDynix_NNP_9_48); auxpass(formed_VBN_11_63, was_VBD_10_59); prep(formed_VBN_11_63, by_IN_12_70); prep(formed_VBN_11_63, in_IN_21_120); pobj(by_IN_12_70, merger_NN_14_77); det(merger_NN_14_77, the_DT_13_73); prep(merger_NN_14_77, of_IN_15_84); pobj(of_IN_15_84, corporations_NNS_20_107); cc(Sirsi_NNP_17_91, and_CC_18_97); conj(Sirsi_NNP_17_91, Dynix_NNP_19_101); det(corporations_NNS_20_107, the_DT_16_87); nn(corporations_NNS_20_107, Sirsi_NNP_17_91); pobj(in_IN_21_120, June_NNP_22_123); num(June_NNP_22_123, 2005_CD_23_128)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8425716143188683	0.7345	64	0.8648648648648649	(Dominion Textile Inc. holders; adopted a shareholder-rights plan at; the annual meeting)	false	false	Dominion Textile Inc. holders adopted a shareholder-rights plan at the annual meeting .	nn(holders_NNS_3_22, Dominion_NNP_0_0); nn(holders_NNS_3_22, Textile_NNP_1_9); nn(holders_NNS_3_22, Inc._NNP_2_17); nsubj(adopted_VBD_4_30, holders_NNS_3_22); dobj(adopted_VBD_4_30, plan_NN_7_59); prep(adopted_VBD_4_30, at_IN_8_64); punct(adopted_VBD_4_30, ._._12_86); det(plan_NN_7_59, a_DT_5_38); nn(plan_NN_7_59, shareholder-rights_NNS_6_40); pobj(at_IN_8_64, meeting_NN_11_78); det(meeting_NN_11_78, the_DT_9_67); amod(meeting_NN_11_78, annual_JJ_10_71)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8405259213434341	0.0416	65	0.8666666666666667	(The certificates; have; an estimated average life of 1.8 years)	false	false	The certificates have an estimated average life of 1.8 years , assuming monthly prepayments at 1.3 % of the original balance .	det(certificates_NNS_1_4, The_DT_0_0); nsubj(have_VBP_2_17, certificates_NNS_1_4); dobj(have_VBP_2_17, life_NN_6_43); punct(have_VBP_2_17, ,_,_10_61); xcomp(have_VBP_2_17, assuming_VBG_11_63); punct(have_VBP_2_17, ._._21_125); det(life_NN_6_43, an_DT_3_22); amod(life_NN_6_43, estimated_VBN_4_25); amod(life_NN_6_43, average_JJ_5_35); prep(life_NN_6_43, of_IN_7_48); pobj(of_IN_7_48, years_NNS_9_55); num(years_NNS_9_55, 1.8_CD_8_51); dobj(assuming_VBG_11_63, prepayments_NNS_13_80); amod(prepayments_NNS_13_80, monthly_JJ_12_72); prep(prepayments_NNS_13_80, at_IN_14_92); pobj(at_IN_14_92, %_NN_16_99); num(%_NN_16_99, 1.3_CD_15_95); prep(%_NN_16_99, of_IN_17_101); pobj(of_IN_17_101, balance_NN_20_117); det(balance_NN_20_117, the_DT_18_104); amod(balance_NN_20_117, original_JJ_19_108)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0416	1.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8403453643089236	1.0	66	0.868421052631579	(The index which uses a base of 1981 as 100; was calculated at; 140.91 points)	false	false	The index , which uses a base of 1981 as 100 , was calculated at 140.91 points in October , from 140.74 in September .	det(index_NN_1_4, The_DT_0_0); punct(index_NN_1_4, ,_,_2_10); rcmod(index_NN_1_4, uses_VBZ_4_18); punct(index_NN_1_4, ,_,_11_45); nsubj(uses_VBZ_4_18, which_WDT_3_12); dobj(uses_VBZ_4_18, base_NN_6_25); prep(uses_VBZ_4_18, as_IN_9_38); det(base_NN_6_25, a_DT_5_23); prep(base_NN_6_25, of_IN_7_30); pobj(of_IN_7_30, 1981_CD_8_33); pobj(as_IN_9_38, 100_CD_10_41); nsubjpass(calculated_VBN_13_51, index_NN_1_4); auxpass(calculated_VBN_13_51, was_VBD_12_47); prep(calculated_VBN_13_51, at_IN_14_62); punct(calculated_VBN_13_51, ,_,_19_90); prep(calculated_VBN_13_51, from_IN_20_92); punct(calculated_VBN_13_51, ._._24_117); pobj(at_IN_14_62, points_NNS_16_72); num(points_NNS_16_72, 140.91_CD_15_65); prep(points_NNS_16_72, in_IN_17_79); pobj(in_IN_17_79, October_NNP_18_82); pobj(from_IN_20_92, 140.74_CD_21_97); dep(from_IN_20_92, in_IN_22_104); pobj(in_IN_22_104, September_NNP_23_107)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8403453643089236	1.0	67	0.8701298701298701	(The index which uses a base of 1981 as 100; was calculated from; 140.74)	false	false	The index , which uses a base of 1981 as 100 , was calculated at 140.91 points in October , from 140.74 in September .	det(index_NN_1_4, The_DT_0_0); punct(index_NN_1_4, ,_,_2_10); rcmod(index_NN_1_4, uses_VBZ_4_18); punct(index_NN_1_4, ,_,_11_45); nsubj(uses_VBZ_4_18, which_WDT_3_12); dobj(uses_VBZ_4_18, base_NN_6_25); prep(uses_VBZ_4_18, as_IN_9_38); det(base_NN_6_25, a_DT_5_23); prep(base_NN_6_25, of_IN_7_30); pobj(of_IN_7_30, 1981_CD_8_33); pobj(as_IN_9_38, 100_CD_10_41); nsubjpass(calculated_VBN_13_51, index_NN_1_4); auxpass(calculated_VBN_13_51, was_VBD_12_47); prep(calculated_VBN_13_51, at_IN_14_62); punct(calculated_VBN_13_51, ,_,_19_90); prep(calculated_VBN_13_51, from_IN_20_92); punct(calculated_VBN_13_51, ._._24_117); pobj(at_IN_14_62, points_NNS_16_72); num(points_NNS_16_72, 140.91_CD_15_65); prep(points_NNS_16_72, in_IN_17_79); pobj(in_IN_17_79, October_NNP_18_82); pobj(from_IN_20_92, 140.74_CD_21_97); dep(from_IN_20_92, in_IN_22_104); pobj(in_IN_22_104, September_NNP_23_107)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0
1	0.8393867143453748	0.9555	68	0.8717948717948718	(He; was a producer on; several Australian television series)	false	false	He was a producer on several Australian television series for Crawford Productions including soap opera The Box in 1976-77 , and police procedural drama series Bluey and Homicide .	nsubj(producer_NN_3_9, He_PRP_0_0); cop(producer_NN_3_9, was_VBD_1_3); det(producer_NN_3_9, a_DT_2_7); prep(producer_NN_3_9, on_IN_4_18); punct(producer_NN_3_9, ._._28_179); pobj(on_IN_4_18, series_NN_8_51); amod(series_NN_8_51, several_JJ_5_21); amod(series_NN_8_51, Australian_JJ_6_29); nn(series_NN_8_51, television_NN_7_40); prep(series_NN_8_51, for_IN_9_58); pobj(for_IN_9_58, Productions_NNPS_11_71); nn(Productions_NNPS_11_71, Crawford_NNP_10_62); prep(Productions_NNPS_11_71, including_VBG_12_83); punct(Productions_NNPS_11_71, ,_,_19_123); cc(Productions_NNPS_11_71, and_CC_20_125); conj(Productions_NNPS_11_71, Bluey_NNP_25_160); cc(Productions_NNPS_11_71, and_CC_26_166); conj(Productions_NNPS_11_71, Homicide_NNP_27_170); pobj(including_VBG_12_83, opera_NN_14_98); nn(opera_NN_14_98, soap_NN_13_93); dep(opera_NN_14_98, Box_NNP_16_108); prep(opera_NN_14_98, in_IN_17_112); det(Box_NNP_16_108, The_DT_15_104); pobj(in_IN_17_112, 1976-77_CD_18_115); nn(Bluey_NNP_25_160, police_NN_21_129); amod(Bluey_NNP_25_160, procedural_JJ_22_136); nn(Bluey_NNP_25_160, drama_NN_23_147); nn(Bluey_NNP_25_160, series_NN_24_153)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.9555	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8349439109076757	0.1473	69	0.8734177215189873	(that nervous reflexes; earlier stimulate; the release of saliva)[enabler=when food enters the oral cavity and orchestrate swallowing when a bolus of food reaches the pharynx]	true	false	For example , you learned earlier that nervous reflexes stimulate the release of saliva when food enters the oral cavity and orchestrate swallowing when a bolus of food reaches the pharynx .	pobj(For_IN_0_0, example_NN_1_4); prep(learned_VBD_4_18, For_IN_0_0); punct(learned_VBD_4_18, ,_,_2_12); nsubj(learned_VBD_4_18, you_PRP_3_14); xcomp(learned_VBD_4_18, stimulate_VB_9_56); punct(learned_VBD_4_18, ._._31_189); det(reflexes_NNS_8_47, that_DT_6_34); amod(reflexes_NNS_8_47, nervous_JJ_7_39); advmod(stimulate_VB_9_56, earlier_RB_5_26); nsubj(stimulate_VB_9_56, reflexes_NNS_8_47); dobj(stimulate_VB_9_56, release_NN_11_70); advcl(stimulate_VB_9_56, enters_VBZ_16_98); det(release_NN_11_70, the_DT_10_66); prep(release_NN_11_70, of_IN_12_78); pobj(of_IN_12_78, saliva_NN_13_81); advmod(enters_VBZ_16_98, when_WRB_14_88); nsubj(enters_VBZ_16_98, food_NN_15_93); dobj(enters_VBZ_16_98, cavity_NN_19_114); advcl(enters_VBZ_16_98, reaches_VBZ_28_169); det(cavity_NN_19_114, the_DT_17_105); amod(cavity_NN_19_114, oral_JJ_18_109); cc(cavity_NN_19_114, and_CC_20_121); conj(cavity_NN_19_114, swallowing_NN_22_137); nn(swallowing_NN_22_137, orchestrate_NN_21_125); det(bolus_NN_25_155, a_DT_24_153); prep(bolus_NN_25_155, of_IN_26_161); pobj(of_IN_26_161, food_NN_27_164); advmod(reaches_VBZ_28_169, when_WRB_23_148); nsubj(reaches_VBZ_28_169, bolus_NN_25_155); dobj(reaches_VBZ_28_169, pharynx_NN_30_181); det(pharynx_NN_30_181, the_DT_29_177)	0.0	0.0	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.1473	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
0	0.8343102124213516	0.7345	69	0.8625	(he; was during; his innings of 23)	false	false	Dhoni , when he was on 4 during his innings of 23 against Sri Lanka at R.Premadasa Stadium , Colombo on Saturday , completed his 4,000 runs in ODIs .	punct(Dhoni_NNS_0_0, ,_,_1_6); advmod(was_VBD_4_16, when_WRB_2_8); nsubj(was_VBD_4_16, he_PRP_3_13); prep(was_VBD_4_16, on_IN_5_20); prep(was_VBD_4_16, during_IN_7_25); prep(was_VBD_4_16, at_IN_15_68); pobj(on_IN_5_20, 4_CD_6_23); pobj(during_IN_7_25, innings_NN_9_36); poss(innings_NN_9_36, his_PRP$_8_32); prep(innings_NN_9_36, of_IN_10_44); prep(innings_NN_9_36, against_IN_12_50); pobj(of_IN_10_44, 23_CD_11_47); pobj(against_IN_12_50, Lanka_NNP_14_62); nn(Lanka_NNP_14_62, Sri_NNP_13_58); pobj(at_IN_15_68, Stadium_NNP_17_83); nn(Stadium_NNP_17_83, R.Premadasa_NNP_16_71); punct(Stadium_NNP_17_83, ,_,_18_91); appos(Stadium_NNP_17_83, Colombo_NNP_19_93); prep(Colombo_NNP_19_93, on_IN_20_101); pobj(on_IN_20_101, Saturday_NNP_21_104); nsubj(completed_VBD_23_115, Dhoni_NNS_0_0); dep(completed_VBD_23_115, was_VBD_4_16); punct(completed_VBD_23_115, ,_,_22_113); dobj(completed_VBD_23_115, runs_NNS_26_135); punct(completed_VBD_23_115, ._._29_148); poss(runs_NNS_26_135, his_PRP$_24_125); num(runs_NNS_26_135, 4,000_CD_25_129); prep(runs_NNS_26_135, in_IN_27_140); pobj(in_IN_27_140, ODIs_NNP_28_143)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	1.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8332152564951584	0.7345	70	0.8641975308641975	(his family; moved to; northwestern Pennsylvania)	false	false	Beecher began collecting fossils from local sandstones and shales when his family moved to northwestern Pennsylvania , resulting in a collection of fossil phyllocarids and freshwater unionids prior to his studying for an undergraduate degree from University of Michigan .	nsubj(began_VBD_1_8, Beecher_NNP_0_0); xcomp(began_VBD_1_8, collecting_VBG_2_14); punct(began_VBD_1_8, ._._39_270); dobj(collecting_VBG_2_14, fossils_NNS_3_25); prep(collecting_VBG_2_14, from_IN_4_33); advcl(collecting_VBG_2_14, moved_VBD_12_82); punct(collecting_VBG_2_14, ,_,_16_117); xcomp(collecting_VBG_2_14, resulting_VBG_17_119); pobj(from_IN_4_33, sandstones_NNS_6_44); amod(sandstones_NNS_6_44, local_JJ_5_38); cc(sandstones_NNS_6_44, and_CC_7_55); conj(sandstones_NNS_6_44, shales_NNS_8_59); poss(family_NN_11_75, his_PRP$_10_71); advmod(moved_VBD_12_82, when_WRB_9_66); nsubj(moved_VBD_12_82, family_NN_11_75); prep(moved_VBD_12_82, to_TO_13_88); pobj(to_TO_13_88, Pennsylvania_NNP_15_104); amod(Pennsylvania_NNP_15_104, northwestern_JJ_14_91); prep(resulting_VBG_17_119, in_IN_18_129); advmod(resulting_VBG_17_119, prior_RB_27_192); pobj(in_IN_18_129, collection_NN_20_134); det(collection_NN_20_134, a_DT_19_132); prep(collection_NN_20_134, of_IN_21_145); pobj(of_IN_21_145, phyllocarids_NNS_23_155); amod(phyllocarids_NNS_23_155, fossil_JJ_22_148); cc(phyllocarids_NNS_23_155, and_CC_24_168); conj(phyllocarids_NNS_23_155, unionids_NNS_26_183); nn(unionids_NNS_26_183, freshwater_NN_25_172); dep(prior_RB_27_192, to_TO_28_198); pcomp(to_TO_28_198, studying_VBG_30_205); poss(studying_VBG_30_205, his_PRP$_29_201); prep(studying_VBG_30_205, for_IN_31_214); pobj(for_IN_31_214, degree_NN_34_235); det(degree_NN_34_235, an_DT_32_218); amod(degree_NN_34_235, undergraduate_JJ_33_221); prep(degree_NN_34_235, from_IN_35_242); pobj(from_IN_35_242, University_NNP_36_247); prep(University_NNP_36_247, of_IN_37_258); pobj(of_IN_37_258, Michigan_NNP_38_261)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8332152564951584	0.7345	71	0.8658536585365854	(he; was at; R.Premadasa Stadium)	false	false	Dhoni , when he was on 4 during his innings of 23 against Sri Lanka at R.Premadasa Stadium , Colombo on Saturday , completed his 4,000 runs in ODIs .	punct(Dhoni_NNS_0_0, ,_,_1_6); advmod(was_VBD_4_16, when_WRB_2_8); nsubj(was_VBD_4_16, he_PRP_3_13); prep(was_VBD_4_16, on_IN_5_20); prep(was_VBD_4_16, during_IN_7_25); prep(was_VBD_4_16, at_IN_15_68); pobj(on_IN_5_20, 4_CD_6_23); pobj(during_IN_7_25, innings_NN_9_36); poss(innings_NN_9_36, his_PRP$_8_32); prep(innings_NN_9_36, of_IN_10_44); prep(innings_NN_9_36, against_IN_12_50); pobj(of_IN_10_44, 23_CD_11_47); pobj(against_IN_12_50, Lanka_NNP_14_62); nn(Lanka_NNP_14_62, Sri_NNP_13_58); pobj(at_IN_15_68, Stadium_NNP_17_83); nn(Stadium_NNP_17_83, R.Premadasa_NNP_16_71); punct(Stadium_NNP_17_83, ,_,_18_91); appos(Stadium_NNP_17_83, Colombo_NNP_19_93); prep(Colombo_NNP_19_93, on_IN_20_101); pobj(on_IN_20_101, Saturday_NNP_21_104); nsubj(completed_VBD_23_115, Dhoni_NNS_0_0); dep(completed_VBD_23_115, was_VBD_4_16); punct(completed_VBD_23_115, ,_,_22_113); dobj(completed_VBD_23_115, runs_NNS_26_135); punct(completed_VBD_23_115, ._._29_148); poss(runs_NNS_26_135, his_PRP$_24_125); num(runs_NNS_26_135, 4,000_CD_25_129); prep(runs_NNS_26_135, in_IN_27_140); pobj(in_IN_27_140, ODIs_NNP_28_143)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
0	0.8332152564951584	0.7345	71	0.8554216867469879	(prices; closed in; Zurich , Stockholm and Amsterdam)	false	false	Elsewhere , prices surged for a second day in Frankfurt , closed higher in Zurich , Stockholm and Amsterdam and were broadly lower in Milan , Paris and Brussels .	advmod(surged_VBD_3_19, Elsewhere_RB_0_0); punct(surged_VBD_3_19, ,_,_1_10); nsubj(surged_VBD_3_19, prices_NNS_2_12); prep(surged_VBD_3_19, for_IN_4_26); punct(surged_VBD_3_19, ,_,_10_56); conj(surged_VBD_3_19, closed_VBD_11_58); cc(surged_VBD_3_19, and_CC_19_108); conj(surged_VBD_3_19, lower_JJR_22_125); punct(surged_VBD_3_19, ._._29_161); pobj(for_IN_4_26, day_NN_7_39); det(day_NN_7_39, a_DT_5_30); amod(day_NN_7_39, second_JJ_6_32); prep(day_NN_7_39, in_IN_8_43); pobj(in_IN_8_43, Frankfurt_NNP_9_46); dep(closed_VBD_11_58, higher_JJR_12_65); prep(closed_VBD_11_58, in_IN_13_72); pobj(in_IN_13_72, Zurich_NNP_14_75); punct(Zurich_NNP_14_75, ,_,_15_82); conj(Zurich_NNP_14_75, Stockholm_NNP_16_84); cc(Zurich_NNP_14_75, and_CC_17_94); conj(Zurich_NNP_14_75, Amsterdam_NNP_18_98); cop(lower_JJR_22_125, were_VBD_20_112); advmod(lower_JJR_22_125, broadly_RB_21_117); prep(lower_JJR_22_125, in_IN_23_131); pobj(in_IN_23_131, Milan_NNP_24_134); punct(Milan_NNP_24_134, ,_,_25_140); conj(Milan_NNP_24_134, Paris_NNP_26_142); cc(Milan_NNP_24_134, and_CC_27_148); conj(Milan_NNP_24_134, Brussels_NNP_28_152)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8332152564951584	0.7345	72	0.8571428571428571	(government; operated Hutt Park Railway in; Petone)	false	false	Hutt Park railway station was on the privately owned but government operated Hutt Park Railway in Petone , a suburb of the city of Lower Hutt in the Wellington region of New Zealand s North Island .	nn(station_NN_3_18, Hutt_NNP_0_0); nn(station_NN_3_18, Park_NNP_1_5); nn(station_NN_3_18, railway_NN_2_10); nsubj(was_VBD_4_26, station_NN_3_18); prep(was_VBD_4_26, on_IN_5_30); punct(was_VBD_4_26, ._._36_197); pobj(on_IN_5_30, owned_VBN_8_47); dep(owned_VBN_8_47, the_DT_6_33); advmod(owned_VBN_8_47, privately_RB_7_37); cc(owned_VBN_8_47, but_CC_9_53); conj(owned_VBN_8_47, operated_VBD_11_68); nsubj(operated_VBD_11_68, government_NN_10_57); dobj(operated_VBD_11_68, Railway_NNP_14_87); prep(operated_VBD_11_68, in_IN_15_95); dep(operated_VBD_11_68, s_VBZ_33_182); nn(Railway_NNP_14_87, Hutt_NNP_12_77); nn(Railway_NNP_14_87, Park_NNP_13_82); pobj(in_IN_15_95, Petone_NNP_16_98); punct(Petone_NNP_16_98, ,_,_17_105); appos(Petone_NNP_16_98, suburb_NN_19_109); det(suburb_NN_19_109, a_DT_18_107); prep(suburb_NN_19_109, of_IN_20_116); prep(suburb_NN_19_109, in_IN_26_142); pobj(of_IN_20_116, city_NN_22_123); det(city_NN_22_123, the_DT_21_119); prep(city_NN_22_123, of_IN_23_128); pobj(of_IN_23_128, Hutt_NNP_25_137); nn(Hutt_NNP_25_137, Lower_NNP_24_131); pobj(in_IN_26_142, region_NN_29_160); det(region_NN_29_160, the_DT_27_145); nn(region_NN_29_160, Wellington_NNP_28_149); prep(region_NN_29_160, of_IN_30_167); pobj(of_IN_30_167, Zealand_NNP_32_174); nn(Zealand_NNP_32_174, New_NNP_31_170); dobj(s_VBZ_33_182, Island_NNP_35_190); nn(Island_NNP_35_190, North_NNP_34_184)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8332152564951584	0.7345	73	0.8588235294117647	(he; completed the year-long course at; the Canadian Forces Command and Staff College)	false	false	While in the CF , he completed the year-long course at the Canadian Forces Command and Staff College and received a Master of Arts in war studies degree from Royal Military College of Canada , student # G0053 in 1980 .	dep(While_IN_0_0, in_IN_1_6); pobj(in_IN_1_6, CF_NNP_3_13); det(CF_NNP_3_13, the_DT_2_9); prep(completed_VBD_6_21, While_IN_0_0); punct(completed_VBD_6_21, ,_,_4_16); nsubj(completed_VBD_6_21, he_PRP_5_18); dobj(completed_VBD_6_21, course_NN_9_45); prep(completed_VBD_6_21, at_IN_10_52); cc(completed_VBD_6_21, and_CC_18_101); conj(completed_VBD_6_21, received_VBD_19_105); punct(completed_VBD_6_21, ._._40_217); det(course_NN_9_45, the_DT_7_31); amod(course_NN_9_45, year-long_JJ_8_35); pobj(at_IN_10_52, Command_NNP_14_75); det(Command_NNP_14_75, the_DT_11_55); nn(Command_NNP_14_75, Canadian_NNP_12_59); nn(Command_NNP_14_75, Forces_NNP_13_68); cc(Command_NNP_14_75, and_CC_15_83); conj(Command_NNP_14_75, College_NNP_17_93); nn(College_NNP_17_93, Staff_NNP_16_87); dobj(received_VBD_19_105, Master_NN_21_116); prep(received_VBD_19_105, in_IN_24_131); prep(received_VBD_19_105, from_IN_28_153); det(Master_NN_21_116, a_DT_20_114); prep(Master_NN_21_116, of_IN_22_123); pobj(of_IN_22_123, Arts_NNS_23_126); pobj(in_IN_24_131, degree_NN_27_146); nn(degree_NN_27_146, war_NN_25_134); nn(degree_NN_27_146, studies_NNS_26_138); pobj(from_IN_28_153, College_NNP_31_173); nn(College_NNP_31_173, Royal_NNP_29_158); nn(College_NNP_31_173, Military_NNP_30_164); prep(College_NNP_31_173, of_IN_32_181); punct(College_NNP_31_173, ,_,_34_191); appos(College_NNP_31_173, student_NN_35_193); pobj(of_IN_32_181, Canada_NNP_33_184); ccomp(student_NN_35_193, G0053_._37_203); dep(G0053_._37_203, #_#_36_201); prep(G0053_._37_203, in_IN_38_209); pobj(in_IN_38_209, 1980_CD_39_212)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0
1	0.8305035189003607	1.0	74	0.8604651162790697	(Five million shares; will be offered in; the U.S.)	false	false	Five million shares will be offered in the U.S. , and 3.4 million additional shares will be offered in concurrent international offerings outside the U.S. .	number(million_CD_1_5, Five_CD_0_0); num(shares_NNS_2_13, million_CD_1_5); nsubjpass(offered_VBN_5_28, shares_NNS_2_13); aux(offered_VBN_5_28, will_MD_3_20); auxpass(offered_VBN_5_28, be_VB_4_25); prep(offered_VBN_5_28, in_IN_6_36); punct(offered_VBN_5_28, ,_,_9_48); cc(offered_VBN_5_28, and_CC_10_50); conj(offered_VBN_5_28, offered_VBN_17_92); punct(offered_VBN_5_28, ._._25_155); pobj(in_IN_6_36, U.S._NNP_8_43); det(U.S._NNP_8_43, the_DT_7_39); number(million_CD_12_58, 3.4_CD_11_54); num(shares_NNS_14_77, million_CD_12_58); amod(shares_NNS_14_77, additional_JJ_13_66); nsubjpass(offered_VBN_17_92, shares_NNS_14_77); aux(offered_VBN_17_92, will_MD_15_84); auxpass(offered_VBN_17_92, be_VB_16_89); prep(offered_VBN_17_92, in_IN_18_100); pobj(in_IN_18_100, offerings_NNS_21_128); amod(offerings_NNS_21_128, concurrent_JJ_19_103); amod(offerings_NNS_21_128, international_JJ_20_114); prep(offerings_NNS_21_128, outside_IN_22_138); pobj(outside_IN_22_138, U.S._NNP_24_150); det(U.S._NNP_24_150, the_DT_23_146)	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8303410676804649	0.0416	75	0.8620689655172413	(Root apical meristems; also produce; auxin)[enabler=although the root depends on the shoot for much of its auxin]	true	false	Root apical meristems also produce auxin , although the root depends on the shoot for much of its auxin .	nn(meristems_NNS_2_12, Root_NNP_0_0); amod(meristems_NNS_2_12, apical_JJ_1_5); nsubj(produce_VBP_4_27, meristems_NNS_2_12); advmod(produce_VBP_4_27, also_RB_3_22); dobj(produce_VBP_4_27, auxin_NN_5_35); punct(produce_VBP_4_27, ,_,_6_41); advcl(produce_VBP_4_27, depends_VBZ_10_61); punct(produce_VBP_4_27, ._._19_104); det(root_NN_9_56, the_DT_8_52); mark(depends_VBZ_10_61, although_IN_7_43); nsubj(depends_VBZ_10_61, root_NN_9_56); prep(depends_VBZ_10_61, on_IN_11_69); pobj(on_IN_11_69, shoot_NN_13_76); det(shoot_NN_13_76, the_DT_12_72); prep(shoot_NN_13_76, for_IN_14_82); pobj(for_IN_14_82, much_JJ_15_86); prep(much_JJ_15_86, of_IN_16_91); pobj(of_IN_16_91, auxin_NN_18_98); poss(auxin_NN_18_98, its_PRP$_17_94)	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0416	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.827468041502386	0.7345	76	0.8636363636363636	(Beecher; began collecting fossils from; local sandstones and shales)[enabler=when his family moved to northwestern Pennsylvania]	true	false	Beecher began collecting fossils from local sandstones and shales when his family moved to northwestern Pennsylvania , resulting in a collection of fossil phyllocarids and freshwater unionids prior to his studying for an undergraduate degree from University of Michigan .	nsubj(began_VBD_1_8, Beecher_NNP_0_0); xcomp(began_VBD_1_8, collecting_VBG_2_14); punct(began_VBD_1_8, ._._39_270); dobj(collecting_VBG_2_14, fossils_NNS_3_25); prep(collecting_VBG_2_14, from_IN_4_33); advcl(collecting_VBG_2_14, moved_VBD_12_82); punct(collecting_VBG_2_14, ,_,_16_117); xcomp(collecting_VBG_2_14, resulting_VBG_17_119); pobj(from_IN_4_33, sandstones_NNS_6_44); amod(sandstones_NNS_6_44, local_JJ_5_38); cc(sandstones_NNS_6_44, and_CC_7_55); conj(sandstones_NNS_6_44, shales_NNS_8_59); poss(family_NN_11_75, his_PRP$_10_71); advmod(moved_VBD_12_82, when_WRB_9_66); nsubj(moved_VBD_12_82, family_NN_11_75); prep(moved_VBD_12_82, to_TO_13_88); pobj(to_TO_13_88, Pennsylvania_NNP_15_104); amod(Pennsylvania_NNP_15_104, northwestern_JJ_14_91); prep(resulting_VBG_17_119, in_IN_18_129); advmod(resulting_VBG_17_119, prior_RB_27_192); pobj(in_IN_18_129, collection_NN_20_134); det(collection_NN_20_134, a_DT_19_132); prep(collection_NN_20_134, of_IN_21_145); pobj(of_IN_21_145, phyllocarids_NNS_23_155); amod(phyllocarids_NNS_23_155, fossil_JJ_22_148); cc(phyllocarids_NNS_23_155, and_CC_24_168); conj(phyllocarids_NNS_23_155, unionids_NNS_26_183); nn(unionids_NNS_26_183, freshwater_NN_25_172); dep(prior_RB_27_192, to_TO_28_198); pcomp(to_TO_28_198, studying_VBG_30_205); poss(studying_VBG_30_205, his_PRP$_29_201); prep(studying_VBG_30_205, for_IN_31_214); pobj(for_IN_31_214, degree_NN_34_235); det(degree_NN_34_235, an_DT_32_218); amod(degree_NN_34_235, undergraduate_JJ_33_221); prep(degree_NN_34_235, from_IN_35_242); pobj(from_IN_35_242, University_NNP_36_247); prep(University_NNP_36_247, of_IN_37_258); pobj(of_IN_37_258, Michigan_NNP_38_261)	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	1.0	0.0	0.0	0.0	1.0	1.0	0.0	0.0	1.0
1	0.8269534825979009	0.7345	77	0.8651685393258427	(prices; Elsewhere surged for; a second day)	false	false	Elsewhere , prices surged for a second day in Frankfurt , closed higher in Zurich , Stockholm and Amsterdam and were broadly lower in Milan , Paris and Brussels .	advmod(surged_VBD_3_19, Elsewhere_RB_0_0); punct(surged_VBD_3_19, ,_,_1_10); nsubj(surged_VBD_3_19, prices_NNS_2_12); prep(surged_VBD_3_19, for_IN_4_26); punct(surged_VBD_3_19, ,_,_10_56); conj(surged_VBD_3_19, closed_VBD_11_58); cc(surged_VBD_3_19, and_CC_19_108); conj(surged_VBD_3_19, lower_JJR_22_125); punct(surged_VBD_3_19, ._._29_161); pobj(for_IN_4_26, day_NN_7_39); det(day_NN_7_39, a_DT_5_30); amod(day_NN_7_39, second_JJ_6_32); prep(day_NN_7_39, in_IN_8_43); pobj(in_IN_8_43, Frankfurt_NNP_9_46); dep(closed_VBD_11_58, higher_JJR_12_65); prep(closed_VBD_11_58, in_IN_13_72); pobj(in_IN_13_72, Zurich_NNP_14_75); punct(Zurich_NNP_14_75, ,_,_15_82); conj(Zurich_NNP_14_75, Stockholm_NNP_16_84); cc(Zurich_NNP_14_75, and_CC_17_94); conj(Zurich_NNP_14_75, Amsterdam_NNP_18_98); cop(lower_JJR_22_125, were_VBD_20_112); advmod(lower_JJR_22_125, broadly_RB_21_117); prep(lower_JJR_22_125, in_IN_23_131); pobj(in_IN_23_131, Milan_NNP_24_134); punct(Milan_NNP_24_134, ,_,_25_140); conj(Milan_NNP_24_134, Paris_NNP_26_142); cc(Milan_NNP_24_134, and_CC_27_148); conj(Milan_NNP_24_134, Brussels_NNP_28_152)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	1.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	1.0	0.0	0.0	1.0
1	0.8260213456731965	0.7345	78	0.8666666666666667	(the number of jobless; rose 0.1 % on; a seasonally adjusted basis)	false	false	In September , the number of jobless rose 0.1 % from the previous month to 2.5 million on a seasonally adjusted basis .	pobj(In_IN_0_0, September_NNP_1_3); det(number_NN_4_19, the_DT_3_15); prep(number_NN_4_19, of_IN_5_26); pobj(of_IN_5_26, jobless_JJ_6_29); prep(rose_VBD_7_37, In_IN_0_0); punct(rose_VBD_7_37, ,_,_2_13); nsubj(rose_VBD_7_37, number_NN_4_19); dobj(rose_VBD_7_37, %_NN_9_46); prep(rose_VBD_7_37, from_IN_10_48); prep(rose_VBD_7_37, to_TO_14_72); prep(rose_VBD_7_37, on_IN_17_87); punct(rose_VBD_7_37, ._._22_118); num(%_NN_9_46, 0.1_CD_8_42); pobj(from_IN_10_48, month_NN_13_66); det(month_NN_13_66, the_DT_11_53); amod(month_NN_13_66, previous_JJ_12_57); pobj(to_TO_14_72, million_CD_16_79); number(million_CD_16_79, 2.5_CD_15_75); pobj(on_IN_17_87, basis_NN_21_112); advmod(adjusted_JJ_20_103, seasonally_RB_19_92); det(basis_NN_21_112, a_DT_18_90); amod(basis_NN_21_112, adjusted_JJ_20_103)	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.7345	0.0	0.0	0.0	1.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0
1	0.8249346444705182	0.0087	79	0.8681318681318682	(Bruno DeGol; was named; a director of this bank-holding company)	false	false	Bruno DeGol , chairman of DeGol Brothers Lumber , Gallitzin , Pa . , was named a director o
Download .txt
gitextract_28sxprec/

├── .dockerignore
├── .gitignore
├── .travis.yml
├── Dockerfile
├── LICENSE
├── README.md
├── app/
│   ├── pom.xml
│   └── src/
│       ├── main/
│       │   ├── resources/
│       │   │   └── logback.xml
│       │   └── scala/
│       │       └── edu/
│       │           └── knowitall/
│       │               ├── ollie/
│       │               │   ├── OllieCli.scala
│       │               │   └── SentenceIterator.scala
│       │               └── openparse/
│       │                   ├── OpenParseCli.scala
│       │                   ├── OpenParseGui.scala
│       │                   └── gui/
│       │                       ├── Dot.scala
│       │                       ├── ExtractionEntry.scala
│       │                       ├── Parser.scala
│       │                       └── Sentence.scala
│       └── test/
│           └── resources/
│               └── logback-test.xml
├── core/
│   ├── build.sbt
│   ├── here.txt
│   ├── pom.xml
│   ├── project/
│   │   └── plugins.sbt
│   ├── scripts/
│   │   ├── applypatterns.sh
│   │   ├── build_templates.sh
│   │   ├── create_patterns.sh
│   │   ├── create_test_train.sh
│   │   ├── extractor.sh
│   │   └── keep_common_patterns.sh
│   └── src/
│       ├── main/
│       │   ├── resources/
│       │   │   └── edu/
│       │   │       └── knowitall/
│       │   │           ├── ollie/
│       │   │           │   ├── cognitiveWords.txt
│       │   │           │   ├── communicationWords.txt
│       │   │           │   ├── confidence/
│       │   │           │   │   └── default-classifier.txt
│       │   │           │   └── prefixWords.txt
│       │   │           └── openparse/
│       │   │               ├── categories/
│       │   │               │   ├── location.txt
│       │   │               │   └── person.txt
│       │   │               └── openparse.model
│       │   └── scala/
│       │       └── edu/
│       │           └── knowitall/
│       │               ├── common/
│       │               │   └── enrich/
│       │               │       └── Traversable.scala
│       │               ├── ollie/
│       │               │   ├── DependencyGraphExtras.scala
│       │               │   ├── NaryExtraction.scala
│       │               │   ├── Ollie.scala
│       │               │   ├── OllieExtraction.scala
│       │               │   ├── OllieExtractionInstance.scala
│       │               │   ├── ScoredOllieExtractionInstance.scala
│       │               │   ├── confidence/
│       │               │   │   ├── OllieConfidenceFunction.scala
│       │               │   │   ├── OllieFeatureEvaluation.scala
│       │               │   │   ├── OllieFeatureSet.scala
│       │               │   │   └── train/
│       │               │   │       ├── CrossValidateConfidence.scala
│       │               │   │       └── TrainOllieConfidence.scala
│       │               │   └── output/
│       │               │       └── BratOutput.scala
│       │               └── openparse/
│       │                   ├── AnalyzePatterns.scala
│       │                   ├── BuildPatterns.scala
│       │                   ├── ExtractorPattern.scala
│       │                   ├── GraphExpansions.scala
│       │                   ├── OpenParse.scala
│       │                   ├── bootstrap/
│       │                   │   ├── FilterTargetExtractions.scala
│       │                   │   ├── FindCommon.scala
│       │                   │   ├── FindTargetArguments.scala
│       │                   │   └── FindTargetExtractions.scala
│       │                   ├── eval/
│       │                   │   ├── GroupScoredBy.scala
│       │                   │   ├── PrecisionYield.scala
│       │                   │   ├── RankPatterns.scala
│       │                   │   ├── Score.scala
│       │                   │   └── StatisticalSignificance.scala
│       │                   ├── extract/
│       │                   │   ├── Extraction.scala
│       │                   │   ├── GeneralExtractor.scala
│       │                   │   ├── PatternExtractor.scala
│       │                   │   ├── SpecificExtractor.scala
│       │                   │   └── TemplateExtractor.scala
│       │                   └── template/
│       │                       ├── BuildTemplates.scala
│       │                       ├── CountsToConfidence.scala
│       │                       ├── GeneralizeTemplate.scala
│       │                       └── PassiveReflections.scala
│       └── test/
│           ├── resources/
│           │   └── logback-test.xml
│           └── scala/
│               └── edu/
│                   └── knowitall/
│                       ├── common/
│                       │   └── enrich/
│                       │       └── TraversableSpecTest.scala
│                       ├── ollie/
│                       │   ├── DependencyGraphExtrasSpec.scala
│                       │   └── confidence/
│                       │       └── OllieFeatureSetSpec.scala
│                       └── openparse/
│                           ├── BuildPatternsSpec.scala
│                           ├── ExtractorPatternSpec.scala
│                           ├── OllieSpec.scala
│                           ├── OpenParseSpec.scala
│                           └── PatternExtractorSpec.scala
├── data/
│   └── training.tsv
├── example/
│   ├── pom.xml
│   └── src/
│       └── main/
│           ├── java/
│           │   └── example/
│           │       └── JavaOllieWrapper.java
│           ├── resouces/
│           │   └── logback.xml
│           └── scala/
│               └── ollie/
│                   └── Example.scala
└── pom.xml
Download .txt
SYMBOL INDEX (4 symbols across 1 files)

FILE: example/src/main/java/example/JavaOllieWrapper.java
  class JavaOllieWrapper (line 13) | public class JavaOllieWrapper {
    method JavaOllieWrapper (line 23) | public JavaOllieWrapper() throws MalformedURLException {
    method extract (line 37) | public Iterable<OllieExtractionInstance> extract(String sentence) {
    method main (line 46) | public static void main(String args[]) throws MalformedURLException {
Condensed preview — 85 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (6,467K chars).
[
  {
    "path": ".dockerignore",
    "chars": 41,
    "preview": "Dockerfile\n.dockerignore\n.gitignore\n.git\n"
  },
  {
    "path": ".gitignore",
    "chars": 63,
    "preview": "target\n.cache\n.classpath\n.project\n.settings\nengmalt.linear.mco\n"
  },
  {
    "path": ".travis.yml",
    "chars": 68,
    "preview": "language: scala\nscala:\n  - \"2.9.2\"\njdk:\n  - oraclejdk7\n  - openjdk7\n"
  },
  {
    "path": "Dockerfile",
    "chars": 253,
    "preview": "FROM maven:3.5.2-jdk-7\n\nWORKDIR /stage\n\nCOPY ./ /stage/\nRUN curl http://www.maltparser.org/mco/english_parser/engmalt.li"
  },
  {
    "path": "LICENSE",
    "chars": 4429,
    "preview": "Ollie Software License Agreement\n \nOllie Software\n(C) 2011-2012, University of Washington.  All rights reserved.\nUS pate"
  },
  {
    "path": "README.md",
    "chars": 9960,
    "preview": "# Ollie\n\nOllie is a program that automatically identifies and extracts binary\nrelationships from English sentences.  Oll"
  },
  {
    "path": "app/pom.xml",
    "chars": 3853,
    "preview": "<?xml version=\"1.0\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-ins"
  },
  {
    "path": "app/src/main/resources/logback.xml",
    "chars": 432,
    "preview": "<?xml version=\"1.0\"?>\n<configuration>\n  <appender name=\"STDOUT\" class=\"ch.qos.logback.core.ConsoleAppender\">\n    <!-- en"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/ollie/OllieCli.scala",
    "chars": 13201,
    "preview": "package edu.knowitall.ollie;\n\nimport java.io.File\nimport java.io.PrintWriter\nimport java.io.OutputStreamWriter\nimport ja"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/ollie/SentenceIterator.scala",
    "chars": 850,
    "preview": "package edu.knowitall.ollie\n\nimport edu.knowitall.tool.segment.Segmenter\n\nclass SentenceIterator(sentencer: Segmenter, p"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/openparse/OpenParseCli.scala",
    "chars": 3304,
    "preview": "package edu.knowitall.openparse\n\nimport java.io.{PrintWriter, File}\nimport java.net.URL\n\nimport scala.collection.Set\nimp"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/openparse/OpenParseGui.scala",
    "chars": 20217,
    "preview": "package edu.knowitall.openparse\n\nimport java.awt.Cursor\nimport java.awt.Dimension\nimport java.io.File\nimport java.net.UR"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/openparse/gui/Dot.scala",
    "chars": 5104,
    "preview": "package edu.knowitall.openparse.gui\n\nimport edu.knowitall.openparse.extract.TemplateExtractor\nimport edu.knowitall.commo"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/openparse/gui/ExtractionEntry.scala",
    "chars": 1388,
    "preview": "package edu.knowitall.openparse.gui\n\nimport edu.knowitall.collection.immutable.graph.pattern.Match\nimport edu.knowitall."
  },
  {
    "path": "app/src/main/scala/edu/knowitall/openparse/gui/Parser.scala",
    "chars": 1115,
    "preview": "package edu.knowitall.openparse.gui\n\nimport edu.knowitall.tool.parse.DependencyParser\nimport edu.knowitall.tool.parse.Ma"
  },
  {
    "path": "app/src/main/scala/edu/knowitall/openparse/gui/Sentence.scala",
    "chars": 826,
    "preview": "package edu.knowitall.openparse.gui\n\nimport scala.util.control.Exception.catching\n\nimport edu.knowitall.tool.parse.graph"
  },
  {
    "path": "app/src/test/resources/logback-test.xml",
    "chars": 432,
    "preview": "<?xml version=\"1.0\"?>\n<configuration>\n  <appender name=\"STDOUT\" class=\"ch.qos.logback.core.ConsoleAppender\">\n    <!-- en"
  },
  {
    "path": "core/build.sbt",
    "chars": 1902,
    "preview": "organization := \"edu.washington.cs.knowitall.ollie\"\n\nname := \"ollie-core\"\n\ndescription := \"Wrapper and implementation fo"
  },
  {
    "path": "core/here.txt",
    "chars": 1472272,
    "preview": "score\tconf\top-conf\tyield\tprecision\textr\tenabler\tattrib\tsentence\tdependencies\tArg1 Cleanup feature\tArg1 comes after arg2\t"
  },
  {
    "path": "core/pom.xml",
    "chars": 4095,
    "preview": "<?xml version=\"1.0\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-ins"
  },
  {
    "path": "core/project/plugins.sbt",
    "chars": 214,
    "preview": "resolvers += Resolver.url(\"sbt-plugin-releases\", new URL(\"http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-rele"
  },
  {
    "path": "core/scripts/applypatterns.sh",
    "chars": 188,
    "preview": "# 1 -- patterns\n# 2 -- sentences\nmvn -q -e -f ../pom.xml compile exec:java -Dexec.mainClass=edu.washington.cs.knowitall."
  },
  {
    "path": "core/scripts/build_templates.sh",
    "chars": 238,
    "preview": "mkdir \"$1/templates/\"\nmvn exec:java -Dexec.mainClass=edu.washington.cs.knowitall.pattern.BuildTemplates -Dexec.args=\"$1/"
  },
  {
    "path": "core/scripts/create_patterns.sh",
    "chars": 190,
    "preview": "mvn -q -e exec:java -Dexec.mainClass=edu.washington.cs.knowitall.pattern.BuildTreePatterns -Dexec.args=\"$1/raw/parsed.tx"
  },
  {
    "path": "core/scripts/create_test_train.sh",
    "chars": 222,
    "preview": "# 1 -- lda directory\nROWS=\"$1/raw/patterned.txt\"\nTEST=\"$1/raw/test.txt\"\nTRAIN=\"$1/raw/train.txt\"\nmvn -q -e exec:java -De"
  },
  {
    "path": "core/scripts/extractor.sh",
    "chars": 110,
    "preview": "echo \"$*\"\nmvn -q -e exec:java -Dexec.mainClass=edu.washington.cs.knowitall.pattern.OpenParse -Dexec.args=\"$*\"\n"
  },
  {
    "path": "core/scripts/keep_common_patterns.sh",
    "chars": 267,
    "preview": "# 1 -- lda directory\ncut -f5 \"$1/raw/patterned-all.txt\" | sort | uniq -c | sort -nr > \"$1/raw/patterns.txt\"\nmvn -q -e ex"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/ollie/cognitiveWords.txt",
    "chars": 675,
    "preview": "accept\r\nadmit\r\naffirm\r\naim\r\nallow\r\napprehend\r\nassert\r\nattest\r\naver\r\navouch\r\navow\r\nbelieve\r\nclaim\r\ncomprehend\r\nconfirm\r\nc"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/ollie/communicationWords.txt",
    "chars": 818,
    "preview": "acknowledge\r\nacquaint\r\nadd\r\nadvise\r\naffirm\r\nallege\r\nannounce\r\napprise\r\narticulate\r\nbelieve\r\nblab\r\nblurt\r\nclaim\r\ncomment\r"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/ollie/confidence/default-classifier.txt",
    "chars": 1523,
    "preview": "args start and end with noun\t0.030924657084179144\nrel ends with of\t0.1013506657501542\narg1 contains pronoun\t0.1963080134"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/ollie/prefixWords.txt",
    "chars": 116,
    "preview": "after\r\nalthough\r\nbecause\r\nbefore\r\nbut\r\nhowever\r\nif\r\nonce\r\nthat\r\nthough\r\nwhen\r\nwhenever\r\nwhether\r\nwhere\r\nwhile\r\nwould"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/openparse/categories/location.txt",
    "chars": 7877,
    "preview": "abbacy\nabode\nabutment\nabysm\nabyss\nacme\naddition\naddress\naerie\naerospace\naery\naim\nair\nairhead\nairspace\nairway\nambiance\nam"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/openparse/categories/person.txt",
    "chars": 56994,
    "preview": "abator\nabbe\nabbess\nabbot\nabbreviator\nabdicator\nabductor\nabecedarian\naberrant\nabetter\nabettor\nabhorrer\nabiogenist\nabjurer"
  },
  {
    "path": "core/src/main/resources/edu/knowitall/openparse/openparse.model",
    "chars": 2197361,
    "preview": "template\nbe {rel} {prep}\t{arg1} <nsubjpass< {rel:postag=VBN} >{prep:regex=prep_(.*)}> {arg2}\t1.0000\nbe {rel} {prep}\t{arg"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/common/enrich/Traversable.scala",
    "chars": 2303,
    "preview": "package edu.knowitall\npackage common\npackage enrich\n\nimport edu.knowitall.collection.immutable.Bag\n\nimport scalaz._\nimpo"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/DependencyGraphExtras.scala",
    "chars": 6716,
    "preview": "package edu.knowitall.ollie\n\nimport edu.knowitall.tool.parse.graph.DependencyGraph\nimport edu.knowitall.tool.parse.graph"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/NaryExtraction.scala",
    "chars": 5186,
    "preview": "package edu.knowitall.ollie\n\nimport scala.Option.option2Iterable\nimport scala.collection.SortedSet\nimport scala.collecti"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/Ollie.scala",
    "chars": 3574,
    "preview": "package edu.knowitall.ollie\n\nimport scala.io.Source\nimport edu.knowitall.collection.immutable.Interval\nimport edu.knowit"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/OllieExtraction.scala",
    "chars": 7010,
    "preview": "package edu.knowitall.ollie\n\nimport scala.Option.option2Iterable\nimport scala.collection.breakOut\n\nimport edu.knowitall."
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/OllieExtractionInstance.scala",
    "chars": 2764,
    "preview": "package edu.knowitall.ollie\n\nimport edu.knowitall.common.HashCodeHelper\nimport edu.knowitall.openparse.extract.PatternEx"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/ScoredOllieExtractionInstance.scala",
    "chars": 1270,
    "preview": "package edu.knowitall.ollie\n\nimport edu.knowitall.tool.conf.Labelled\n\n/** OllieExtractionInstance represents a boolean s"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/confidence/OllieConfidenceFunction.scala",
    "chars": 1141,
    "preview": "package edu.knowitall.ollie.confidence\n\nimport java.io.InputStream\nimport java.net.URL\nimport java.util.Scanner\n\nimport "
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/confidence/OllieFeatureEvaluation.scala",
    "chars": 3381,
    "preview": "package edu.knowitall.ollie.confidence\n\nimport java.io.File\nimport java.io.PrintWriter\nimport java.net.URL\n\nimport scala"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/confidence/OllieFeatureSet.scala",
    "chars": 15228,
    "preview": "package edu.knowitall.ollie.confidence\n\nimport java.util.regex.Pattern\n\nimport scala.Array.canBuildFrom\nimport scala.ann"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/confidence/train/CrossValidateConfidence.scala",
    "chars": 2360,
    "preview": "package edu.knowitall.ollie.confidence.train\n\nimport java.io.File\n\nimport scala.io.Source\n\nimport edu.knowitall.common.A"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/confidence/train/TrainOllieConfidence.scala",
    "chars": 1408,
    "preview": "\npackage edu.knowitall.ollie.confidence.train\n\nimport java.io.File\n\nimport scala.io.Source\n\nimport edu.knowitall.common."
  },
  {
    "path": "core/src/main/scala/edu/knowitall/ollie/output/BratOutput.scala",
    "chars": 2362,
    "preview": "package edu.knowitall.ollie.output\n\nimport edu.knowitall.ollie.OllieExtractionInstance\nimport edu.knowitall.openparse.ex"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/AnalyzePatterns.scala",
    "chars": 4871,
    "preview": "package edu.knowitall.openparse\n\nimport java.io.{PrintWriter, File}\n\nimport scala.Option.option2Iterable\nimport scala.co"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/BuildPatterns.scala",
    "chars": 14703,
    "preview": "package edu.knowitall.openparse\n\nimport java.io.{PrintWriter, File}\n\nimport scala.collection.immutable\nimport scala.io.S"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/ExtractorPattern.scala",
    "chars": 8285,
    "preview": "package edu.knowitall.openparse\n\nimport scala.io.Source\n\nimport org.slf4j.LoggerFactory\n\nimport edu.knowitall.collection"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/GraphExpansions.scala",
    "chars": 5297,
    "preview": "package edu.knowitall.openparse\n\nimport scala.collection.Set\nimport scala.collection.SortedSet\n\nimport edu.knowitall.col"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/OpenParse.scala",
    "chars": 14050,
    "preview": "package edu.knowitall.openparse\n\nimport java.io.{PrintWriter, File}\nimport java.net.URL\nimport scala.collection.Set\nimpo"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/bootstrap/FilterTargetExtractions.scala",
    "chars": 1888,
    "preview": "package edu.knowitall.openparse.bootstrap\n\nimport scala.io.Source\n\nimport org.slf4j.LoggerFactory\n\n/** Filter the target"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/bootstrap/FindCommon.scala",
    "chars": 1404,
    "preview": "package edu.knowitall.openparse.bootstrap\n\nimport scala.util.matching.Regex\n\n/** Common functionality for bootstrap code"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/bootstrap/FindTargetArguments.scala",
    "chars": 2190,
    "preview": "package edu.knowitall.openparse.bootstrap\n\nimport scala.Array.canBuildFrom\nimport scala.collection.mutable\nimport scala."
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/bootstrap/FindTargetExtractions.scala",
    "chars": 6129,
    "preview": "package edu.knowitall.openparse.bootstrap\n\nimport scala.Array.canBuildFrom\nimport scala.Option.option2Iterable\nimport sc"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/eval/GroupScoredBy.scala",
    "chars": 1353,
    "preview": "package edu.knowitall.openparse.eval\n\nimport java.io.File\n\nimport edu.knowitall.common.Analysis\n\nimport scopt.OptionPars"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/eval/PrecisionYield.scala",
    "chars": 2986,
    "preview": "package edu.knowitall.openparse.eval\n\nimport java.io.{PrintWriter, File}\n\nimport edu.knowitall.common.Resource.using\nimp"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/eval/RankPatterns.scala",
    "chars": 1655,
    "preview": "package edu.knowitall.openparse.eval\n\nimport java.io.{PrintWriter, File}\n\nimport edu.knowitall.common.Resource.using\n\nim"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/eval/Score.scala",
    "chars": 6116,
    "preview": "package edu.knowitall.openparse.eval\n\nimport java.io.{PrintWriter, File}\n\nimport scala.io.Source\n\nimport edu.knowitall.c"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/eval/StatisticalSignificance.scala",
    "chars": 4522,
    "preview": "package edu.knowitall.openparse.eval\n\nimport java.io.File\n\nimport edu.knowitall.common.{Random, Analysis}\n\nimport scopt."
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/extract/Extraction.scala",
    "chars": 13156,
    "preview": "package edu.knowitall.openparse.extract\n\nimport scala.collection.{SortedSet, Set}\nimport edu.knowitall.collection.immuta"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/extract/GeneralExtractor.scala",
    "chars": 3206,
    "preview": "package edu.knowitall.openparse.extract\n\nimport org.slf4j.LoggerFactory\nimport edu.knowitall.collection.immutable.graph."
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/extract/PatternExtractor.scala",
    "chars": 2205,
    "preview": "package edu.knowitall.openparse.extract\n\nimport java.io.File\nimport scala.io.Source\nimport edu.knowitall.collection.immu"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/extract/SpecificExtractor.scala",
    "chars": 1728,
    "preview": "package edu.knowitall.openparse.extract\n\nimport scala.Array.canBuildFrom\nimport edu.knowitall.collection.immutable.graph"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/extract/TemplateExtractor.scala",
    "chars": 6062,
    "preview": "package edu.knowitall.openparse.extract\n\nimport scala.util.matching.Regex\nimport org.slf4j.LoggerFactory\nimport edu.know"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/template/BuildTemplates.scala",
    "chars": 18094,
    "preview": "package edu.knowitall.openparse.template\n\nimport java.io.{PrintWriter, File}\n\nimport scala.Option.option2Iterable\nimport"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/template/CountsToConfidence.scala",
    "chars": 1593,
    "preview": "package edu.knowitall.openparse.template\n\nimport scopt.mutable.OptionParser\nimport java.io.File\nimport edu.knowitall.com"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/template/GeneralizeTemplate.scala",
    "chars": 4705,
    "preview": "package edu.knowitall.openparse.template\n\nimport java.io.{PrintWriter, File}\n\nimport scala.collection.immutable\nimport s"
  },
  {
    "path": "core/src/main/scala/edu/knowitall/openparse/template/PassiveReflections.scala",
    "chars": 3739,
    "preview": "package edu.knowitall.openparse.template\n\nimport java.io.{PrintWriter, File}\nimport scala.Option.option2Iterable\nimport "
  },
  {
    "path": "core/src/test/resources/logback-test.xml",
    "chars": 432,
    "preview": "<?xml version=\"1.0\"?>\n<configuration>\n  <appender name=\"STDOUT\" class=\"ch.qos.logback.core.ConsoleAppender\">\n    <!-- en"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/common/enrich/TraversableSpecTest.scala",
    "chars": 2050,
    "preview": "package edu.knowitall.common.enrich\n\nimport edu.knowitall.collection.immutable.Bag\n\nimport org.junit.runner.RunWith\nimpo"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/ollie/DependencyGraphExtrasSpec.scala",
    "chars": 1441,
    "preview": "package edu.knowitall.ollie\n\nimport org.junit.runner.RunWith\nimport org.specs2.mutable.Specification\nimport org.specs2.r"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/ollie/confidence/OllieFeatureSetSpec.scala",
    "chars": 1925,
    "preview": "package edu.knowitall.ollie.confidence\n\nimport org.junit._\nimport org.junit.Assert._\nimport org.specs2.mutable.Specifica"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/openparse/BuildPatternsSpec.scala",
    "chars": 7622,
    "preview": "package edu.knowitall.openparse\n\nimport org.junit._\nimport org.junit.Assert._\nimport org.specs2.mutable.Specification\nim"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/openparse/ExtractorPatternSpec.scala",
    "chars": 909,
    "preview": "package edu.knowitall.openparse\n\nimport org.junit._\nimport org.junit.Assert._\nimport org.specs2.mutable.Specification\nim"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/openparse/OllieSpec.scala",
    "chars": 1592,
    "preview": "package edu.knowitall.openparse\n\nimport org.junit._\nimport org.junit.Assert._\nimport org.specs2.mutable.Specification\nim"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/openparse/OpenParseSpec.scala",
    "chars": 839,
    "preview": "package edu.knowitall.openparse\n\nimport org.junit._\nimport org.junit.Assert._\nimport org.specs2.mutable.Specification\nim"
  },
  {
    "path": "core/src/test/scala/edu/knowitall/openparse/PatternExtractorSpec.scala",
    "chars": 15810,
    "preview": "package edu.knowitall.openparse\n\nimport org.junit._\nimport org.junit.Assert._\nimport org.specs2.mutable.Specification\nim"
  },
  {
    "path": "data/training.tsv",
    "chars": 2359408,
    "preview": "0\t\tnsubj(know_VB_4_11, I_PRP_1_2); aux(know_VB_4_11, do_VBP_2_4); neg(know_VB_4_11, n't_RB_3_7); ccomp(know_VB_4_11, mea"
  },
  {
    "path": "example/pom.xml",
    "chars": 2265,
    "preview": "<?xml version=\"1.0\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-ins"
  },
  {
    "path": "example/src/main/java/example/JavaOllieWrapper.java",
    "chars": 2458,
    "preview": "package example;\n\nimport java.io.File;\nimport java.net.MalformedURLException;\n\nimport edu.knowitall.ollie.Ollie;\nimport "
  },
  {
    "path": "example/src/main/resouces/logback.xml",
    "chars": 316,
    "preview": "<?xml version=\"1.0\"?>\n<configuration>\n  <appender name=\"STDOUT\" class=\"ch.qos.logback.core.ConsoleAppender\">\n    <encode"
  },
  {
    "path": "example/src/main/scala/ollie/Example.scala",
    "chars": 1289,
    "preview": "package ollie\n\nimport edu.knowitall.ollie.Ollie\nimport edu.knowitall.tool.parse.MaltParser\nimport scala.io.Source\nimport"
  },
  {
    "path": "pom.xml",
    "chars": 627,
    "preview": "<?xml version=\"1.0\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-ins"
  }
]

About this extraction

This page contains the full source code of the knowitall/ollie GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 85 files (6.1 MB), approximately 1.6M tokens, and a symbol index with 4 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!