#!/usr/local/bin/dot
#
# Class diagram 
# Generated by UMLGraph version 5.3 (http://www.umlgraph.org/)
#

digraph G {
	edge [fontname="arial",fontsize=10,labelfontname="arial",labelfontsize=10];
	node [fontname="arial",fontsize=10,shape=plaintext];
	nodesep=0.25;
	ranksep=0.5;
	// com.hammurapi.extract.True<T, C>
	c968 [label=<<table title="com.hammurapi.extract.True" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./True.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> True&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.TimeIntervalPredicate<T, C>
	c969 [label=<<table title="com.hammurapi.extract.TimeIntervalPredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./TimeIntervalPredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> TimeIntervalPredicate&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Subtract<T, C>
	c970 [label=<<table title="com.hammurapi.extract.Subtract" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Subtract.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Subtract&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Predicate<T, C>
	c971 [label=<<table title="com.hammurapi.extract.Predicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Predicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> Predicate&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Or<T, C>
	c972 [label=<<table title="com.hammurapi.extract.Or" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Or.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Or&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.NotEqual<T, V, C>
	c973 [label=<<table title="com.hammurapi.extract.NotEqual" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./NotEqual.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> NotEqual&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Not<T, C>
	c974 [label=<<table title="com.hammurapi.extract.Not" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Not.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Not&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Multiply<T, C>
	c975 [label=<<table title="com.hammurapi.extract.Multiply" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Multiply.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Multiply&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.MethodExtractor<T, V, C>
	c976 [label=<<table title="com.hammurapi.extract.MethodExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./MethodExtractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> MethodExtractor&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.MappedPredicate<T, C>
	c977 [label=<<table title="com.hammurapi.extract.MappedPredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./MappedPredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> MappedPredicate&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.MappedExtractor<T, V, C>
	c978 [label=<<table title="com.hammurapi.extract.MappedExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./MappedExtractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> MappedExtractor&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Mappable<T, V, C>
	c979 [label=<<table title="com.hammurapi.extract.Mappable" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Mappable.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> Mappable&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.LessThan<T, V extends java.lang.Comparable<V>, C>
	c980 [label=<<table title="com.hammurapi.extract.LessThan" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./LessThan.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> LessThan&lt;T, V extends Comparable&lt;V&gt;, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.LessEqual<T, V extends java.lang.Comparable<V>, C>
	c981 [label=<<table title="com.hammurapi.extract.LessEqual" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./LessEqual.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> LessEqual&lt;T, V extends Comparable&lt;V&gt;, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.InstanceOfPredicate<T, C>
	c982 [label=<<table title="com.hammurapi.extract.InstanceOfPredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./InstanceOfPredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> InstanceOfPredicate&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.IndexedExtractor<T, C>
	c983 [label=<<table title="com.hammurapi.extract.IndexedExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./IndexedExtractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> IndexedExtractor&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.GreaterThan<T, V extends java.lang.Comparable<V>, C>
	c984 [label=<<table title="com.hammurapi.extract.GreaterThan" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./GreaterThan.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> GreaterThan&lt;T, V extends Comparable&lt;V&gt;, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.GreaterEqual<T, V extends java.lang.Comparable<V>, C>
	c985 [label=<<table title="com.hammurapi.extract.GreaterEqual" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./GreaterEqual.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> GreaterEqual&lt;T, V extends Comparable&lt;V&gt;, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.False<T, C>
	c986 [label=<<table title="com.hammurapi.extract.False" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./False.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> False&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.FacadeExtractor<T, V, C>
	c987 [label=<<table title="com.hammurapi.extract.FacadeExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./FacadeExtractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> FacadeExtractor&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ExtractorUtil
	c988 [label=<<table title="com.hammurapi.extract.ExtractorUtil" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ExtractorUtil.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> ExtractorUtil </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ExtractorFactory
	c989 [label=<<table title="com.hammurapi.extract.ExtractorFactory" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ExtractorFactory.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> ExtractorFactory </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ExtractorException
	c990 [label=<<table title="com.hammurapi.extract.ExtractorException" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ExtractorException.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> ExtractorException </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ExtractorComparator<T, V extends java.lang.Comparable<V>, C>
	c991 [label=<<table title="com.hammurapi.extract.ExtractorComparator" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ExtractorComparator.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> ExtractorComparator&lt;T, V extends Comparable&lt;V&gt;, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ExtractorBase<T, V, C>
	c992 [label=<<table title="com.hammurapi.extract.ExtractorBase" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ExtractorBase.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> ExtractorBase&lt;T, V, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Extractor<T, V, C>
	c993 [label=<<table title="com.hammurapi.extract.Extractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Extractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> Extractor&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Equal<T, V, C>
	c994 [label=<<table title="com.hammurapi.extract.Equal" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Equal.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Equal&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Divide<T, C>
	c995 [label=<<table title="com.hammurapi.extract.Divide" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Divide.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Divide&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Constant<T, V, C>
	c996 [label=<<table title="com.hammurapi.extract.Constant" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Constant.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Constant&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>>
	c997 [label=<<table title="com.hammurapi.extract.CompositePredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./CompositePredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> CompositePredicate&lt;T, PC extends Collection&lt;Predicate&lt;T, C&gt;&gt;, C, S extends CompositePredicate&lt;T, PC, C, S&gt;&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.CompositeExtractorBase<T, V, C>
	c998 [label=<<table title="com.hammurapi.extract.CompositeExtractorBase" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./CompositeExtractorBase.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> CompositeExtractorBase&lt;T, V, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.CompiledExtractorBase<T, V, C>
	c999 [label=<<table title="com.hammurapi.extract.CompiledExtractorBase" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./CompiledExtractorBase.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> CompiledExtractorBase&lt;T, V, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ComparisonResult
	c1000 [label=<<table title="com.hammurapi.extract.ComparisonResult" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ComparisonResult.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> ComparisonResult </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ComparisonResult.Type
	c1001 [label=<<table title="com.hammurapi.extract.ComparisonResult.Type" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ComparisonResult.Type.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;enumeration&#187; </td></tr>
<tr><td align="center" balign="center"> Type </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002 [label=<<table title="com.hammurapi.extract.ComparisonPredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ComparisonPredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> ComparisonPredicate&lt;T, V, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.ComparisonPredicate.PromotionLevel
	c1003 [label=<<table title="com.hammurapi.extract.ComparisonPredicate.PromotionLevel" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./ComparisonPredicate.PromotionLevel.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;enumeration&#187; </td></tr>
<tr><td align="center" balign="center"> PromotionLevel </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.CommutativeOr<T, C>
	c1004 [label=<<table title="com.hammurapi.extract.CommutativeOr" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./CommutativeOr.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> CommutativeOr&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.CommutativeCompositePredicate<T, C, S extends com.hammurapi.extract.CommutativeCompositePredicate<T, C, S>>
	c1005 [label=<<table title="com.hammurapi.extract.CommutativeCompositePredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./CommutativeCompositePredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> CommutativeCompositePredicate&lt;T, C, S extends CommutativeCompositePredicate&lt;T, C, S&gt;&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.CommutativeAnd<T, C>
	c1006 [label=<<table title="com.hammurapi.extract.CommutativeAnd" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./CommutativeAnd.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> CommutativeAnd&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.BinaryExtractor<T, V, C>
	c1007 [label=<<table title="com.hammurapi.extract.BinaryExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./BinaryExtractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> &#171;interface&#187; </td></tr>
<tr><td align="center" balign="center"> BinaryExtractor&lt;T, V, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.And<T, C>
	c1008 [label=<<table title="com.hammurapi.extract.And" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./And.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> And&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.Add<T, C>
	c1009 [label=<<table title="com.hammurapi.extract.Add" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./Add.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"> Add&lt;T, C&gt; </td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.AbstractPredicate<T, C>
	c1010 [label=<<table title="com.hammurapi.extract.AbstractPredicate" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./AbstractPredicate.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> AbstractPredicate&lt;T, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	// com.hammurapi.extract.AbstractExtractor<T, V, C>
	c1011 [label=<<table title="com.hammurapi.extract.AbstractExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p" href="./AbstractExtractor.html">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> AbstractExtractor&lt;T, V, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
	//com.hammurapi.extract.True<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c968:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.TimeIntervalPredicate<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c969:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.Subtract<T, C> extends com.hammurapi.extract.ArithmeticExtractor<T, java.lang.Number, C>
	c1050:p -> c970:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.Predicate<T, C> implements com.hammurapi.extract.Extractor<T, V, C>
	c993:p -> c971:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.Or<T, C> extends com.hammurapi.extract.ExtractorBase<T, java.lang.Boolean, C>
	c992:p -> c972:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.Or<T, C> implements com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>>
	c997:p -> c972:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.NotEqual<T, V, C> extends com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002:p -> c973:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.Not<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c974:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.Not<T, C> implements com.hammurapi.extract.FacadeExtractor<T, V, C>
	c987:p -> c974:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.Multiply<T, C> extends com.hammurapi.extract.ArithmeticExtractor<T, java.lang.Number, C>
	c1050:p -> c975:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.MethodExtractor<T, V, C> extends com.hammurapi.extract.ExtractorBase<T, V, C>
	c992:p -> c976:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.MethodExtractor<T, V, C> implements com.hammurapi.extract.Extractor<T, V, C>
	c993:p -> c976:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.MappedPredicate<T, C> extends com.hammurapi.extract.MappedExtractor<T, java.lang.Boolean, C>
	c978:p -> c977:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.MappedPredicate<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c977:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.MappedExtractor<T, V, C> implements com.hammurapi.extract.FacadeExtractor<T, V, C>
	c987:p -> c978:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.MappedExtractor<T, V, C> implements com.hammurapi.extract.Mappable<T, V, C>
	c979:p -> c978:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.LessThan<T, V extends java.lang.Comparable<V>, C> extends com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002:p -> c980:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.LessEqual<T, V extends java.lang.Comparable<V>, C> extends com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002:p -> c981:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.InstanceOfPredicate<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c982:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.InstanceOfPredicate<T, C> implements com.hammurapi.extract.Mappable<T, V, C>
	c979:p -> c982:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.IndexedExtractor<T, C> implements com.hammurapi.extract.Extractor<T, V, C>
	c993:p -> c983:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.IndexedExtractor<T, C> implements com.hammurapi.extract.Mappable<T, V, C>
	c979:p -> c983:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.GreaterThan<T, V extends java.lang.Comparable<V>, C> extends com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002:p -> c984:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.GreaterEqual<T, V extends java.lang.Comparable<V>, C> extends com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002:p -> c985:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.False<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c986:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.FacadeExtractor<T, V, C> implements com.hammurapi.extract.Extractor<T, V, C>
	c993:p -> c987:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.ExtractorBase<T, V, C> implements com.hammurapi.extract.Extractor<T, V, C>
	c993:p -> c992:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.Equal<T, V, C> extends com.hammurapi.extract.ComparisonPredicate<T, V, C>
	c1002:p -> c994:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.Divide<T, C> extends com.hammurapi.extract.ArithmeticExtractor<T, java.lang.Number, C>
	c1050:p -> c995:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.Constant<T, V, C> extends com.hammurapi.extract.ExtractorBase<T, V, C>
	c992:p -> c996:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c997:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>> implements com.hammurapi.extract.FacadeExtractor<T, V, C>
	c987:p -> c997:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>> implements com.hammurapi.extract.Mappable<T, V, C>
	c979:p -> c997:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.CompositeExtractorBase<T, V, C> extends com.hammurapi.extract.ExtractorBase<T, V, C>
	c992:p -> c998:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.CompiledExtractorBase<T, V, C> extends com.hammurapi.extract.AbstractExtractor<T, V, C>
	c1011:p -> c999:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.CompiledExtractorBase<T, V, C> implements com.hammurapi.extract.Mappable<T, V, C>
	c979:p -> c999:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.ComparisonPredicate<T, V, C> extends com.hammurapi.extract.ExtractorBase<T, java.lang.Boolean, C>
	c992:p -> c1002:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.ComparisonPredicate<T, V, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c1002:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.ComparisonPredicate<T, V, C> implements com.hammurapi.extract.Mappable<T, V, C>
	c979:p -> c1002:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.ComparisonPredicate<T, V, C> implements com.hammurapi.extract.BinaryExtractor<T, V, C>
	c1007:p -> c1002:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.CommutativeOr<T, C> extends com.hammurapi.extract.ExtractorBase<T, java.lang.Boolean, C>
	c992:p -> c1004:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.CommutativeOr<T, C> implements com.hammurapi.extract.CommutativeCompositePredicate<T, C, S extends com.hammurapi.extract.CommutativeCompositePredicate<T, C, S>>
	c1005:p -> c1004:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.CommutativeCompositePredicate<T, C, S extends com.hammurapi.extract.CommutativeCompositePredicate<T, C, S>> implements com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>>
	c997:p -> c1005:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.CommutativeAnd<T, C> extends com.hammurapi.extract.ExtractorBase<T, java.lang.Boolean, C>
	c992:p -> c1006:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.CommutativeAnd<T, C> implements com.hammurapi.extract.CommutativeCompositePredicate<T, C, S extends com.hammurapi.extract.CommutativeCompositePredicate<T, C, S>>
	c1005:p -> c1006:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.And<T, C> extends com.hammurapi.extract.ExtractorBase<T, java.lang.Boolean, C>
	c992:p -> c1008:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.And<T, C> implements com.hammurapi.extract.CompositePredicate<T, PC extends java.util.Collection<com.hammurapi.extract.Predicate<T, C>>, C, S extends com.hammurapi.extract.CompositePredicate<T, PC, C, S>>
	c997:p -> c1008:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.Add<T, C> extends com.hammurapi.extract.ArithmeticExtractor<T, java.lang.Object, C>
	c1050:p -> c1009:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.AbstractPredicate<T, C> extends com.hammurapi.extract.AbstractExtractor<T, java.lang.Boolean, C>
	c1011:p -> c1010:p [dir=back,arrowtail=empty];
	//com.hammurapi.extract.AbstractPredicate<T, C> implements com.hammurapi.extract.Predicate<T, C>
	c971:p -> c1010:p [dir=back,arrowtail=empty,style=dashed];
	//com.hammurapi.extract.AbstractExtractor<T, V, C> extends com.hammurapi.extract.ExtractorBase<T, V, C>
	c992:p -> c1011:p [dir=back,arrowtail=empty];
	// com.hammurapi.extract.ArithmeticExtractor<T, V, C>
	c1050 [label=<<table title="com.hammurapi.extract.ArithmeticExtractor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p">
		<tr><td><table border="0" cellspacing="0" cellpadding="1">
<tr><td align="center" balign="center"><font face="arial italic"> ArithmeticExtractor&lt;T, V, C&gt; </font></td></tr>
		</table></td></tr>
		</table>>, fontname="arial", fontcolor="black", fontsize=9.0];
}

