PK M8 META-INF/PK M8META-INF/MANIFEST.MFManifest-Version: 1.0 Ant-Version: Apache Ant 1.7.0 Created-By: 1.6.0_03-b05 (Sun Microsystems Inc.) Main-Class: graphicInterface.GraphicInterface Class-Path: X-COMMENT: Main-Class will be added automatically by build PK M8ascertainsample/PK M8graphicInterface/PK M8tajimaPerlegen/PK M8tajimacorrection/PK M8;! %ascertainsample/AscertainSample.class1 >gh gi jk l mn jo pqr g stu v jw xy z { | } ~   "g " " & &  &      2 4 6  ;()VCodeLineNumberTableLocalVariableTablethis!Lascertainsample/AscertainSample;main'(Ljava/lang/String;Ljava/lang/String;)Vasc#Lascertainsample/AscertainmentBias;sampleLascertainsample/MsSample;fileLjava/io/FileReader;brLjava/io/BufferedReader;stLjava/util/StringTokenizer;prefixLjava/lang/String; outfileSampleLjava/io/FileWriter;bwLjava/io/BufferedWriter; ascOutfile$Lascertainsample/AscertainedOutfile;ex!Ljava/lang/NumberFormatException;Ljava/io/FileNotFoundException;Ljava/io/IOException;Ljava/lang/Exception;infile dSampleSizeiIheader Lascertainsample/MsOutputHeader; SourceFileAscertainSample.java ?@ascertainsample/MsOutputHeaderjava/io/FileReader ?java/io/BufferedReader ? java/util/StringTokenizer. java/io/FileWriterjava/lang/StringBuilder _d_ascertained.out java/io/BufferedWriter ?"ascertainsample/AscertainedOutfile ?  ************************** **Ascertaining sample **ascertainsample/MsSample !ascertainsample/AscertainmentBias ? @ @ @java/lang/NumberFormatException @java/io/FileNotFoundExceptionjava/io/IOExceptionFile not foundError java/lang/Exceptionascertainsample/AscertainSamplejava/lang/Object(Ljava/lang/String;)V(Ljava/io/Reader;)V readHeader(Ljava/io/BufferedReader;)V nextToken&(Ljava/lang/String;)Ljava/lang/String;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString()Ljava/lang/String;(Ljava/io/Writer;)V;(Lascertainsample/MsOutputHeader;Ljava/io/BufferedWriter;)VgetSeq()I writeHeader(I)V getIterationsjava/lang/SystemoutLjava/io/PrintStream;java/io/PrintStreamprintln(I)Ljava/lang/StringBuilder; readSample(Ljava/io/BufferedReader;I)V getSegsitesjava/lang/IntegervalueOf'(Ljava/lang/String;)Ljava/lang/Integer;intValue>(Lascertainsample/MsOutputHeader;Lascertainsample/MsSample;I)V ascertainwriteAscertainedSample&(Lascertainsample/AscertainmentBias;)VsetNewSegsitescloseflushprintStackTracejavax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)V!=>?@A3*B C DE FGA  g=YNY*:Y:- Y* : : YY+:Y: Y- :  -=-Y` !"Y#:  -$ %%&Y- +'():  *  +#&Y- +'():  ,  +g-. / 011:3':5:789: :< 582 5B4 5L6 5_;B-*+ ./1%4/586^7i8u9~?@ABDEGHIJKL MO?S!T&U+V0W5d8[:\?dB]D^IdL_N`Sa\d_bacfeC HI  HI UJK !LMNO/PQ8RS^TUiVW uXY :Z[DZ\NZ]aZ^g_Sg`Seab ]cdefPK M8Qx??(ascertainsample/AscertainedOutfile.class1h 5 6 78 59 : ;< => =? @ AB ACD =EFG HIJ =K HL AMNOheader Lascertainsample/MsOutputHeader;bwLjava/io/BufferedWriter;;(Lascertainsample/MsOutputHeader;Ljava/io/BufferedWriter;)VCodeLineNumberTableLocalVariableTablethis$Lascertainsample/AscertainedOutfile;pHeaderpBw ExceptionsP writeHeader(I)VnSeqsIQwriteAscertainedSample&(Lascertainsample/AscertainmentBias;)Viasc#Lascertainsample/AscertainmentBias; SourceFileAscertainedOutfile.java R  java/lang/StringBuilderms ST SU V WX YZ [Z\ ]^ _R `a// segsites: b cXpositions: 1 2 3 dX ef gR"ascertainsample/AscertainedOutfilejava/lang/Objectjava/io/IOExceptionjava/lang/Exception()Vappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder;ascertainsample/MsOutputHeader getIterations()IgetSimParameter()Ljava/lang/String;toStringjava/io/BufferedWriterwrite(Ljava/lang/String;)VnewLineseedLjava/lang/String;!ascertainsample/AscertainmentBiasgetNewSegsitesgetSeq getAscSample()[Ljava/lang/String;flush! Y**+*,! " #$%&'()* g*Y *  *  **Y* *!!8"?#_%f&"g#$g+,'-./ ** **Y+ *+:* *=**+2 **!:)*+-4.;0B1K2R4_5l6s4y:;" T%0,#$12'(34PK M8LmM^ ^ 'ascertainsample/AscertainmentBias.class1u H I J K L M NOP Q R S T U VW NX Y Z [ \ ]^ _` abcheader Lascertainsample/MsOutputHeader;sampleLascertainsample/MsSample;dI ascSample[Ljava/lang/String; newSegsites>(Lascertainsample/MsOutputHeader;Lascertainsample/MsSample;I)VCodeLineNumberTableLocalVariableTablethis#Lascertainsample/AscertainmentBias;pHeaderpSamplepD ascertain()VposCj subsampleLascertainsample/SubSamples;ci ExceptionsdsearchPolymorphism (Lascertainsample/SubSamples;I)IxinitializeAscSamplea getAscSample()[Ljava/lang/String; setAscSample([Ljava/lang/String;)VgetNewSegsites()IsetNewSegsites(I)V SourceFileAscertainmentBias.java $/ #    </e fCascertainsample/SubSamples $g h/ 9: BC DEi jC kl mn >? op qr stjava/lang/String @A !"!ascertainsample/AscertainmentBiasjava/lang/Objectjava/lang/Exceptionascertainsample/MsSample getSegsites$(Lascertainsample/MsOutputHeader;I)V findDSampleascertainsample/MsOutputHeadergetSeqgetSampleLines(I)Ljava/lang/String;charAt(I)CvalueOf(C)Ljava/lang/String;concat&(Ljava/lang/String;)Ljava/lang/String; dSequences[I! !"# $%&u***+*,*' !"#(*)*+,- ./&|*<*mY** M, *, >G** ` 6*.*6**2S̄'6 &(*!+%,,-1.;/J0Y1o/u({7(>Y01>72 !T34,I5 u6 |)*789:&>>6*#*+.1* ';<=(<.@<A(4); >)*>34>6 <5 </&n***<**S'EFG#F)I(= *)*>?&/*'L( )*@A&>*+' PQ()*!"BC&/*'T( )*DE&>*' XY()*# FGPK M8$ascertainsample/MsOutputHeader.class1M 0 1 2 345 6 7 89 : ;< => ? @ABseqI iterations simParameterLjava/lang/String;seed()VCodeLineNumberTableLocalVariableTablethis Lascertainsample/MsOutputHeader;getSeq()I getIterations readHeader(Ljava/io/BufferedReader;)VbrLjava/io/BufferedReader;linestLjava/util/StringTokenizer; ExceptionsCgetSimParameter()Ljava/lang/String;setSimParameter(Ljava/lang/String;)V SourceFileMsOutputHeader.java   D E+java/util/StringTokenizer - F+G HI ,- *+ J KL  ascertainsample/MsOutputHeaderjava/lang/Objectjava/io/IOExceptionjava/io/BufferedReaderreadLine nextTokenjava/lang/IntegerparseInt(Ljava/lang/String;)Ijava/lang/Stringconcat&(Ljava/lang/String;)Ljava/lang/String;!E***  /*#  /*( !"UM+MY,N-W*-*-*- **  - *+ +W. ,-./0 1+233G4O5T6*UU#$S%E&'()*+/*9 ,->*+ =>./PK M8 `ascertainsample/MsSample.class1Q 7 8 9 : ;<= > ? @A BC D EFGHsegsitesI positionsLjava/lang/String; sampleLines[Ljava/lang/String;()VCodeLineNumberTableLocalVariableTablethisLascertainsample/MsSample; getSegsites()I getPositions()Ljava/lang/String;getSampleLines()[Ljava/lang/String;(I)Ljava/lang/String;pos readSample(Ljava/io/BufferedReader;I)VibrLjava/io/BufferedReader;seqlinestLjava/util/StringTokenizer; ExceptionsI setSegsites(I)V setPositions(Ljava/lang/String;)V SourceFile MsSample.java    J K!java/util/StringTokenizer 4 L!M NO 12 LP 34java/lang/Stringascertainsample/MsSamplejava/lang/Objectjava/io/IOExceptionjava/io/BufferedReaderreadLine nextTokenjava/lang/IntegerparseInt(Ljava/lang/String;)I&(Ljava/lang/String;)Ljava/lang/String;!< **  !  /*$  !/*( "#/*, "$;*20%&'yN+W+NY-:W* *G+NY-:W* *6+N*-S+WJ468 9:;(=/>4?>@DAOCWF`GeHmFsLxM>Z(yy)*y+w,c-./012>* PQ34>*+ TU56PK M8k ascertainsample/SubSamples.class1F * + ,- ./ 0 1 23 4 5 6789header Lascertainsample/MsOutputHeader;dI dSequences[I$(Lascertainsample/MsOutputHeader;I)VCodeLineNumberTableLocalVariableTablethisLascertainsample/SubSamples;pHeaderpD findDSample()VrusedZirNumberLjava/util/Random; checkIfUsed(ILjava/util/Random;I)Zj SourceFileSubSamples.java   java/util/Random: ;< = > ?@ AB %&C DEascertainsample/SubSamplesjava/lang/Objectjava/lang/SystemnanoTime()J(J)Vascertainsample/MsOutputHeadergetSeq()InextInt(I)Ijava/util/Arrayssort([I)V! Y**+*   RYL** =*.6+* >*+ 6*O* . * ,.0"2.374=5D.J9Q:4."" !3"R G#$%&|6*.= >=@4'"#$()PK M8yoGG"graphicInterface/Application.class1c 3 45 3 6 7 89 :;< => 3? @ ABC D E;F GH I JKLMinfileLjava/lang/String;(Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethisLgraphicInterface/Application;pInfilecalculateFromSims((Ljava/lang/Boolean;Ljava/lang/String;)VstLjava/util/StringTokenizer; ascertainLjava/lang/Boolean; dSampleSizecontrolsLgraphicInterface/Controls;calculateFromRealData'(Ljava/lang/String;Ljava/lang/String;)V windowSizestepSize SourceFileApplication.java N graphicInterface/Controls O PQ RST U.java/util/StringTokenizer java/lang/StringBuilder. VW XY_d_ascertained.out Z[\Done!] ^_ `a UbgraphicInterface/Applicationjava/lang/Object()V controlInfilecontrolDSamplejava/lang/Boolean booleanValue()Zascertainsample/AscertainSamplemain nextToken&(Ljava/lang/String;)Ljava/lang/String;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString()Ljava/lang/String;!tajimacorrection/TajimaCorrectionjavax/swing/JOptionPaneshowMessageDialog)(Ljava/awt/Component;Ljava/lang/Object;)VcontrolRDataSizestajimaPerlegen/TajimaPerlegen9(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V!F **+   !" #$%yYN-*-,+I*, Y* :* Y  ,*,+ *,2 % 2!X"`#j$r'x( 42.&'y!"y()y*q+,-.*YN-*-+-,*+,+,-.0#2)3 **!"*/*0"+,12PK M8o;;graphicInterface/Controls.class1O *+ ,-./0 12 345 ,6789 ,: ,; <=>?()VCodeLineNumberTableLocalVariableTablethisLgraphicInterface/Controls; controlInfile(Ljava/lang/String;)VinfileLjava/lang/String;controlDSampledSamplecontrolRDataSizes parameter hasNumber(Ljava/lang/String;)ZjIs SourceFile Controls.java @ AB$You should introduce the infile nameErrorC DE #$:You should introduce a valid size for the discovery sample. FG.The discovery sample size should be an integer1You should introduce a valid window and step size(Windows and step size should be integers HI JKL MNgraphicInterface/Controlsjava/lang/Objectjava/lang/Stringequals(Ljava/lang/Object;)Zjavax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)Vcontains(Ljava/lang/CharSequence;)Zlength()IcharAt(I)Cjava/lang/CharacterisLetter(C)Z!3*  Z+ + l(*+ +   '!(( !l(*+ +  $%'('+(("#$m=++. 01/5 %&'()PK M8*:)graphicInterface/GraphicInterface$1.class1(     !this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$1; focusGained(Ljava/awt/event/FocusEvent;)VevtLjava/awt/event/FocusEvent; focusLost SourceFileGraphicInterface.javaEnclosingMethod" #$  $ %& '&#graphicInterface/GraphicInterface$1java/awt/event/FocusAdapter!graphicInterface/GraphicInterfaceinitComponents()V access$000A(LgraphicInterface/GraphicInterface;Ljava/awt/event/FocusEvent;)V access$1000  4 *+*    A *+     A *+     PK M8G LL*graphicInterface/GraphicInterface$10.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses&LgraphicInterface/GraphicInterface$10;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%$graphicInterface/GraphicInterface$10java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$600B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+* c   A *+ ef    PK M8QLL*graphicInterface/GraphicInterface$11.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses&LgraphicInterface/GraphicInterface$11;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%$graphicInterface/GraphicInterface$11java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$700B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+* j   A *+ lm    PK M8l"LL*graphicInterface/GraphicInterface$12.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses&LgraphicInterface/GraphicInterface$12;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%$graphicInterface/GraphicInterface$12java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$800B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+* q   A *+ st    PK M87w2NN*graphicInterface/GraphicInterface$13.class1   ()VCodeLineNumberTableLocalVariableTablethis InnerClasses&LgraphicInterface/GraphicInterface$13;run SourceFileGraphicInterface.javaEnclosingMethod   !graphicInterface/GraphicInterface $graphicInterface/GraphicInterface$13java/lang/Objectjava/lang/Runnablemain([Ljava/lang/String;)V setVisible(Z)V0  /*     : Y " #   PK M8dJJ)graphicInterface/GraphicInterface$2.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$2;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%#graphicInterface/GraphicInterface$2java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$200B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+*    A *+     PK M8L5)graphicInterface/GraphicInterface$3.class1(     !this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$3; focusGained(Ljava/awt/event/FocusEvent;)VevtLjava/awt/event/FocusEvent; focusLost SourceFileGraphicInterface.javaEnclosingMethod" #$  $ %& '&#graphicInterface/GraphicInterface$3java/awt/event/FocusAdapter!graphicInterface/GraphicInterfaceinitComponents()V access$000A(LgraphicInterface/GraphicInterface;Ljava/awt/event/FocusEvent;)V access$1000  4 *+*    A *+     A *+     PK M8^)graphicInterface/GraphicInterface$4.class1(     !this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$4; focusGained(Ljava/awt/event/FocusEvent;)VevtLjava/awt/event/FocusEvent; focusLost SourceFileGraphicInterface.javaEnclosingMethod" #$  $ %& '&#graphicInterface/GraphicInterface$4java/awt/event/FocusAdapter!graphicInterface/GraphicInterfaceinitComponents()V access$000A(LgraphicInterface/GraphicInterface;Ljava/awt/event/FocusEvent;)V access$1000  4 *+*    A *+     A *+     PK M8zJJ)graphicInterface/GraphicInterface$5.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$5;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%#graphicInterface/GraphicInterface$5java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$300B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+*    A *+     PK M8/)graphicInterface/GraphicInterface$6.class1(     !this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$6; focusGained(Ljava/awt/event/FocusEvent;)VevtLjava/awt/event/FocusEvent; focusLost SourceFileGraphicInterface.javaEnclosingMethod" #$  $ %& '&#graphicInterface/GraphicInterface$6java/awt/event/FocusAdapter!graphicInterface/GraphicInterfaceinitComponents()V access$000A(LgraphicInterface/GraphicInterface;Ljava/awt/event/FocusEvent;)V access$1000  4 *+*    A *+     A *+     PK M8@'JJ)graphicInterface/GraphicInterface$7.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$7;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%#graphicInterface/GraphicInterface$7java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$400B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+* "   A *+ $%    PK M8FJJ)graphicInterface/GraphicInterface$8.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$8;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%#graphicInterface/GraphicInterface$8java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$500B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+* -   A *+ /0    PK M8 eJJ)graphicInterface/GraphicInterface$9.class1&    this$0#LgraphicInterface/GraphicInterface;&(LgraphicInterface/GraphicInterface;)VCodeLineNumberTableLocalVariableTablethis InnerClasses%LgraphicInterface/GraphicInterface$9;actionPerformed(Ljava/awt/event/ActionEvent;)VevtLjava/awt/event/ActionEvent; SourceFileGraphicInterface.javaEnclosingMethod! "#  # $%#graphicInterface/GraphicInterface$9java/lang/Objectjava/awt/event/ActionListener!graphicInterface/GraphicInterfaceinitComponents()V access$500B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V0  4 *+* 5   A *+ 78    PK M8秾ӑ::'graphicInterface/GraphicInterface.class1 M N O P Q R S T U V W XY V Z [\ ]^ V _` V a b c d e fg V h i jk #V lm &V n o p q r s t u v w x y z { | } ~ 9        B  F   N   N N      N  N             # o # & t &          #   &            N N  V         V #          V               V  INFILES_TEXTLjava/lang/String; D_SAMPLE_SIZE WINDOWS_SIZE STEP_SIZE aboutButtonLjavax/swing/JButton; aboutFrameLjavax/swing/JFrame; ascSimsTextLjavax/swing/JLabel; ascertainNoLjavax/swing/JRadioButton; ascertainYesascertainmentGroupLjavax/swing/ButtonGroup; browseButton clearButton dSampleSizeLjavax/swing/JTextField;dSampleSizeLabel dataKindGroup dataKindText exitButtonfromRDataButtonfromRDataPanelLjavax/swing/JPanel; fromSimsPanelfromsSimsButton infileLabel infileName infilePaneljLabel1jLabel2jLabel3jLabel4jPanel1runRDataButton runSimsButtonstepSize stepSizeLabel windowsSizewindowsSizeLabel directoryLjava/io/File;()VCodeLineNumberTableLocalVariableTablethis#LgraphicInterface/GraphicInterface;initComponents jPanel1LayoutLjavax/swing/GroupLayout;aboutFrameLayoutfromSimsPanelLayoutfromRDataPanelLayoutinfilePanelLayoutlayoutbrowseButtonActionPerformed(Ljava/awt/event/ActionEvent;)ViI filesArray[Ljava/io/File;evtLjava/awt/event/ActionEvent;chooserLjavax/swing/JFileChooser;filter21Ljavax/swing/filechooser/FileNameExtensionFilter;filter3resultexitButtonActionPerformedclearButtonActionPerformedinfilesFocusLost(Ljava/awt/event/FocusEvent;)VLjava/awt/event/FocusEvent;tableLjava/util/Hashtable;label textInFieldinfilesFocusGainedfromsSimsButtonActionPerformedrunSimsButtonActionPerformedappLgraphicInterface/Application;runRDataButtonActionPerformedaboutButtonActionPerformeddeleteTextOnFocustextmain([Ljava/lang/String;)Vargs[Ljava/lang/String; access$000A(LgraphicInterface/GraphicInterface;Ljava/awt/event/FocusEvent;)Vx0x1 access$100 access$200B(LgraphicInterface/GraphicInterface;Ljava/awt/event/ActionEvent;)V access$300 access$400 access$500 access$600 access$700 access$800 SourceFileGraphicInterface.java 6 ' ( 1  5 2 )* 0*     javax/swing/ButtonGroup javax/swing/JFrame javax/swing/JPanel javax/swing/JLabel  javax/swing/JRadioButton javax/swing/JTextField javax/swing/JButton       java/awt/Dimension          ! java/awt/FontTahoma  " #$java/awt/Color  % &'Tajima's D Corrector ()(Anna Ramírez-Soriano and Rasmus Nielsen version 1.0 February 2008javax/swing/GroupLayout  * +,- /0 13 467 89 :;< =@ =A BC DE B6 FE GHI :J KLM NO PQ R)Calculate from simulationsS TU VWAscertain simulations XY ZNoYes d sample size#graphicInterface/GraphicInterface$1 InnerClasses  [ \]Run#graphicInterface/GraphicInterface$2 ^_a cd ef g0 =h i0 :j kd :l emCalculate from real data Window size Step size#graphicInterface/GraphicInterface$3#graphicInterface/GraphicInterface$4#graphicInterface/GraphicInterface$5 :n Infile name#graphicInterface/GraphicInterface$6Browse#graphicInterface/GraphicInterface$7Calculate Tajima's D from: simulations#graphicInterface/GraphicInterface$8 real data#graphicInterface/GraphicInterface$9Clear$graphicInterface/GraphicInterface$10Exit$graphicInterface/GraphicInterface$11About$graphicInterface/GraphicInterface$12java/awt/Component op 1q r javax/swing/JFileChooser/javax/swing/filechooser/FileNameExtensionFilterOUT filejava/lang/Stringout  sTXT filetxt tu vw xy z {| }~ java/lang/StringBuilder      Q java/util/Hashtable     7* graphicInterface/Application  )    < $graphicInterface/GraphicInterface$13 !graphicInterface/GraphicInterface(II)VsetMinimumSize(Ljava/awt/Dimension;)V setResizable(Z)V setEnabled setFocusable setOpaquesetRequestFocusEnabledsetVerifyInputWhenFocusTarget(Ljava/lang/String;II)VsetFont(Ljava/awt/Font;)V(III)V setForeground(Ljava/awt/Color;)VsetText(Ljava/lang/String;)V(Ljava/awt/Container;)V setLayout(Ljava/awt/LayoutManager;)V!javax/swing/GroupLayout$Alignment AlignmentLEADING#Ljavax/swing/GroupLayout$Alignment;createParallelGroup ParallelGroupL(Ljavax/swing/GroupLayout$Alignment;)Ljavax/swing/GroupLayout$ParallelGroup;createSequentialGroupSequentialGroup+()Ljavax/swing/GroupLayout$SequentialGroup;'javax/swing/GroupLayout$SequentialGroupaddGap.(III)Ljavax/swing/GroupLayout$SequentialGroup; addComponent?(Ljava/awt/Component;)Ljavax/swing/GroupLayout$SequentialGroup;%javax/swing/GroupLayout$ParallelGroupaddGroupGroupH(Ljavax/swing/GroupLayout$Group;)Ljavax/swing/GroupLayout$ParallelGroup;J(Ljavax/swing/GroupLayout$Group;)Ljavax/swing/GroupLayout$SequentialGroup;addContainerGap-(II)Ljavax/swing/GroupLayout$SequentialGroup;setHorizontalGroup"(Ljavax/swing/GroupLayout$Group;)VsetVerticalGroupgetContentPane()Ljava/awt/Container;java/awt/ContainerB(Ljava/awt/Component;III)Ljavax/swing/GroupLayout$SequentialGroup;getAccessibleContext)()Ljavax/accessibility/AccessibleContext;%javax/accessibility/AccessibleContextsetAccessibleParent#(Ljavax/accessibility/Accessible;)VsetDefaultCloseOperation(I)VsetTitlejavax/swing/BorderFactorycreateTitledBorder5(Ljava/lang/String;)Ljavax/swing/border/TitledBorder; setBorder(Ljavax/swing/border/Border;)Vadd(Ljavax/swing/AbstractButton;)V setSelected&(LgraphicInterface/GraphicInterface;)VaddFocusListener!(Ljava/awt/event/FocusListener;)VaddActionListener"(Ljava/awt/event/ActionListener;)V*javax/swing/LayoutStyle$ComponentPlacementComponentPlacementRELATED,Ljavax/swing/LayoutStyle$ComponentPlacement;addPreferredGapW(Ljavax/swing/LayoutStyle$ComponentPlacement;)Ljavax/swing/GroupLayout$SequentialGroup;TRAILINGk(Ljavax/swing/GroupLayout$Alignment;Ljavax/swing/GroupLayout$Group;)Ljavax/swing/GroupLayout$ParallelGroup;BASELINE=(Ljava/awt/Component;)Ljavax/swing/GroupLayout$ParallelGroup; UNRELATED@(Ljava/awt/Component;III)Ljavax/swing/GroupLayout$ParallelGroup;Y(Ljavax/swing/LayoutStyle$ComponentPlacement;II)Ljavax/swing/GroupLayout$SequentialGroup;`(Ljava/awt/Component;Ljavax/swing/GroupLayout$Alignment;)Ljavax/swing/GroupLayout$ParallelGroup;linkSize(I[Ljava/awt/Component;)VM(Ljavax/swing/GroupLayout$Alignment;Z)Ljavax/swing/GroupLayout$ParallelGroup;pack((Ljava/lang/String;[Ljava/lang/String;)V setFileFilter'(Ljavax/swing/filechooser/FileFilter;)VgetAcceptAllFileFilter&()Ljavax/swing/filechooser/FileFilter;setCurrentDirectory(Ljava/io/File;)VsetMultiSelectionEnabledshowOpenDialog(Ljava/awt/Component;)IgetCurrentDirectory()Ljava/io/File;getSelectedFiles()[Ljava/io/File;getText()Ljava/lang/String;append-(Ljava/lang/String;)Ljava/lang/StringBuilder; java/io/FilegetNametoStringjava/lang/Systemexitput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;java/awt/event/FocusEvent getSource()Ljava/lang/Object;get&(Ljava/lang/Object;)Ljava/lang/Object;equals(Ljava/lang/Object;)Z isSelected()Zjava/lang/BooleanvalueOf(Z)Ljava/lang/Boolean;calculateFromSims((Ljava/lang/Boolean;Ljava/lang/String;)VcalculateFromRealData'(Ljava/lang/String;Ljava/lang/String;)V setVisible startsWith(Ljava/lang/String;)Zjava/awt/EventQueue invokeLater(Ljava/lang/Runnable;)Vjavax/swing/GroupLayout$Groupjavax/swing/LayoutStyle!$     D* * *  G      * Y* Y*Y *Y*Y*Y*Y*Y*Y*Y*Y *Y!*Y"*#Y$%*&Y'(*Y)*Y**Y+*#Y$,*#Y$-*&Y'.*Y/*Y0*#Y$1*&Y'2*Y3*Y4*Y5*&Y'6*&Y'7*&Y'8*9YJ:;*<*=*>*?*@*A*BYC DE*FYGH*IJ*KJ*LJ*MJNY*OL*+P++QR+S+QR+SIIIT*UV+S###T*UV+SkkkT*UV+SbbbT*UVW$XVY++QR+SZ*UT*UT*UT*UXV[NY*\OM*\,],,QR,SZ*^XVY,,QR,SZ*^ZV[*_*8`*a*Ib*cde*fJ** g* h* ij**!g*!kj*"lJ*%mn*%oY*pq*(rs*(tY*uvNY*ON*-P--QR-SZ-QR-S*Uwx* Uwx*!UV-S*"Uwx*%^VWXVy-SX*(UzY--QR-SZ-{R*|* |*!|W}x-{R*"|*%~Ww*(UV[*)de**J*+J*,n*,*,Y*q*-n*-*-Y*q*.rs*.*.Y*vNY*)O:*)PQRSZQRSQR**|*+|WwxQR*-b~*,~W;XV*.yWVYQRSZ{R**|*,~Wwx{R*+|*-~Ww*.UV[*0J*1n*1Y*q*2s*2Y*v*3J**4g*4h*4j*4Y***5g*5j*5Y*NY*/O:*/PQRSZQRS*0Uwx*1X^}x*2UVS*3U}xQR*5|*4|WVWZVYQRSZQR{R*0|*1~V*2|WT{R*3|*4|W}x*5UXV[*6s*6Y*v*7s*7Y*v*8s*8Y*vNY*O:*]QRSZQRS*^wx*)^V*/~yS*8Uw5*6Uwx*7UzWZVYY*8SY*6SY*7SQRSZ*/^wxQ*)~*~WT{R*7|*6|*8|WXV[* u! "#!$,%7&B'M(X)c*n+y,-./0123456789:;)<4=?>J?UAiBqDyEFGHJKLNPRTUVwhvwx 1?DJV_jr{e ,5=LYbMV_n!w"(*+,-345;<=wPbc ij%p.q=wJxSy z ~H Y&J5 jYMYYSNYYS:,-,,,* ,* ,,*6V*, *1n,:64*1Y*12¶nʱ J/4:BIQV]bjsyR|9y< !"#$/%$]Y&' =ñ  ( i*1Ķn*%Ŷn*,ƶn*-Ƕn*4h* h* *!*%*(*,*- 6  (08@HPX`hii )* bYM,*1ĶW,*%ŶW,*,ƶW,*-ǶW,+̶N+#: -n *  ,8DM[a4bb+Z,-D.M/0* >*+ϱ +1 *4>* *!*%*(*,*-*.F*5;* *!*%*(*,*-*. F #+3;FQYaiqy 2 k%Y*1M,*!и*%Ա $  %% 345 h"Y*1M,*,*-ձ   ! "" 346 A *ֱ    7* e+#M,׶ؙ ,n  +8 9: 9 Yڸ۱  %  ;<=> :*+  ?@+A> :*+ ?@+BC :*+ ?@ DC :*+ ?@ EC :*+ ?@ FC :*+ ?@ GC :*+ ?@ HC :*+ ?@ IC :*+ ?@ J  9mDZ  KLotN.@N2N5>N?`b@PK M8>$$tajimaPerlegen/Beta.class1O 1 2 34 5 6 78 9 :; < = >? @ ABCDseqsIhiLtajimaPerlegen/Hi; betaArray[Ljava/math/BigDecimal;(ILtajimaPerlegen/Hi;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Beta;pSeqspHi fillBetaArray()VicalculateBetaNi(I)Ljava/math/BigDecimal;betaNiLjava/math/BigDecimal;temp getBetaArray()[Ljava/math/BigDecimal; setBetaArray([Ljava/math/BigDecimal;)V SourceFile Beta.java $  java/math/BigDecimal  +, &'0 E F1 GH IH JH2 KLM N,tajimaPerlegen/Betajava/lang/Object(Ljava/lang/String;)V(I)Vsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;addmultiplydivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/Hi getHiArray!Y***,   !"#$k'**<***S ! &# %' &'Y MY* Y Y M,Y* Y MY Y* N-,M,**`2*2 MY Y* Y N,- M,& & )-*H-`.i1458* % ()`V*)+,/*<  -.>*+ @A /0PK M8c -> > !tajimaPerlegen/Coefficients.class1l @AB C D E F G H IJ K LM N O P Q R ST U VW X VY Z[\windowLtajimaPerlegen/Window;paiLtajimaPerlegen/Pai;nminusiLtajimaPerlegen/NminusI; wattersonCoefLjava/math/BigDecimal; tajimaCoefF(LtajimaPerlegen/Window;LtajimaPerlegen/Pai;LtajimaPerlegen/NminusI;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Coefficients;pWindowpPaipNminusicalculateCoefs()ViI sumTajimaCoef(I)VsumTajimaCoefCorrectedtempsumWattersonCoefsumWattersonCoefCorrectedgetWattersonCoef()Ljava/math/BigDecimal;setWattersonCoef(Ljava/math/BigDecimal;)V getTajimaCoef setTajimaCoef SourceFileCoefficients.java $/java/math/BigDecimal0 $] !" #"    ^ _` 73 431 89 ab :; <9 =;c de fgh ie jg ke $3tajimaPerlegen/Coefficientsjava/lang/Object(Ljava/lang/String;)VtajimaPerlegen/WindowgetAverageSeqs()Idivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/NminusIgetNminusIArray()[Ljava/math/BigDecimal;add.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimaPerlegen/Pai getPaiArraymultiplygetOneDivIArray! !"#" $%&.**Y*Y*+*,*- '#( -!(*.)*.+.,.- ./&L<* * * *Y **Y *'$ )*$.4/K1(01L)*23&M*** 2' 45()*0143&i#*2* 2M**,'89":( #)*#01 5"63&M***2' =>()*0173&k%*2YM**,'AB$C( %)*%01 5"89&/*'F( )*:;&>*+' JK()*!"<9&/*'N( )*=;&>*+' RS()*#">?PK M8lm m tajimaPerlegen/Covariance.class1 MNO P Q R S T U V W X Y Z [ \] ^ _` a _bc d ef gh ij kl em no ip kqrsseqsIpaiLtajimaPerlegen/Pai;nminusiLtajimaPerlegen/NminusI;coefsLtajimaPerlegen/Coefficients;sigmaLtajimaPerlegen/Sigma;atLtajimaPerlegen/ThetaAverage; covarianceLjava/math/BigDecimal;(ILtajimaPerlegen/Pai;LtajimaPerlegen/NminusI;LtajimaPerlegen/Coefficients;LtajimaPerlegen/Sigma;LtajimaPerlegen/ThetaAverage;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Covariance;pSeqspPaipNminusipCoefspSigmapAtcalculateCovariance()VtempicalculateSecondSum(I)Ljava/math/BigDecimal;jrcalculateSecondSumCorrectedcalculateFirstSumcalculateFirstSumCorrected getCovariance()Ljava/math/BigDecimal; setCovariance(Ljava/math/BigDecimal;)V SourceFileCovariance.java /=java/math/BigDecimal0 /t -. !" #$ %& '( )* +, FA DA uv GHw xy zv{ |H IJ }H1 ~   H y  y y ytajimaPerlegen/Covariancejava/lang/Object(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimaPerlegen/NminusIgetINminusIArray()[Ljava/math/BigDecimal;multiplytajimaPerlegen/Coefficients getTajimaCoefgetWattersonCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/SigmasigmaijLtajimaPerlegen/Sigmaij;tajimaPerlegen/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;tajimaPerlegen/ThetaAveragegetAThetaSquaredtajimaPerlegen/Pai getPaiArraysigmaiiLtajimaPerlegen/Sigmaii;tajimaPerlegen/Sigmaii getSigmaii getAThetaDivIgetPaiSquaredArray! !"#$%&'()*+,-./013**Y**,*-* * * 2&  !" #&$,%2&3H34536"37$38&39(3:*3;,<=1j<*9* * M**,*2* *** **Y2) ./:)@3R4i63 ">.>?"j45@A1kYM>6*TH$,* 22* M!,* 22* M,2& 9 : ;<=$>E@c;iE34ZB"k45k?" a>. _C"DA1YM>*u;,* 22* *2*2M8,* 22* *2*2M~,2"I JKLMVPJU3* B"45?" >.EA1m'* * 2M,* 2M,2YZ%\3 '45'?">.FA1?* * 2*2M,* 2*2M,2`#a=c3 ?45??"#>.GH1/*2g3 45IJ1>*+2 kl345-.KLPK M8!Ye e "tajimaPerlegen/DDistribution.class1 !GH G I J K LM LN OP QRS T UVWX YZ [ \ ]^ _` _a bc Ld e f gh i jklwindowLtajimaPerlegen/Window;dSampleLtajimaPerlegen/DSample; dDistributionLjava/util/HashMap;2(LtajimaPerlegen/Window;LtajimaPerlegen/DSample;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/DDistribution;pWindowpDSamplefilldDistribution()ViI exceptionLjava/lang/Exception; ExceptionsrelativizeHashTableLjava/lang/Integer;valueLjava/math/BigDecimal;iterLjava/util/Iterator; fillHashTable(Ljava/lang/Integer;)VdSizegetDDistribution()Ljava/util/HashMap;setDDistribution(Ljava/util/HashMap;)V SourceFileDDistribution.java (2java/util/HashMap &' "# $%m no poq rst uvjava/lang/Integer >? 82java/lang/ExceptionIncorrect infile formatErrorw xy AB z{| }~ ujava/math/BigDecimal o ( 1 ( tajimaPerlegen/DDistributionjava/lang/ObjecttajimaPerlegen/WindowgetStartPosArray()IgetEndPosArraytajimaPerlegen/DSamplegetDSampleSize()Ljava/util/ArrayList;java/util/ArrayListget(I)Ljava/lang/Object;javax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)VkeySet()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;&(Ljava/lang/Object;)Ljava/lang/Object;getSnpsInWindow(I)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;! !"#$%&'()*h**Y*+*,+, -./#0%12*=*<***  * L/2+"#$%#+&/*2(3)<,, #343 56=-.782*O*L+;+ M*,N-Y*N*,-W±+"/ 01 2,3A4K5N6,* +39,:;O-. B<=>?*E*+**+M,YM*+,W*+YW+9 :;%</=2>D@, 3;E-.E@9AB*/*+C, -.CD*>*++ GH,-.&'EFPK M8BTtajimaPerlegen/DSample.class1O -. - / 0 123 45 6 78 9:;< =>?@dBrLjava/io/BufferedReader; dSampleSizeLjava/util/ArrayList;(Ljava/io/BufferedReader;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/DSample;pDBr readDFile()VsnpInfo[Ljava/lang/String;lineLjava/lang/String;exLjava/lang/Exception; ExceptionsgetDSampleSize()Ljava/util/ArrayList;setDSampleSize(Ljava/util/ArrayList;)V SourceFile DSample.java java/util/ArrayList  A BC D EF '(G HI JKjava/lang/Exception*Incorrect ascertainment sample file formatErrorL MNtajimaPerlegen/DSamplejava/lang/Objectjava/io/BufferedReaderreadLine()Ljava/lang/String;java/lang/Stringsplit'(Ljava/lang/String;)[Ljava/lang/String;java/lang/IntegervalueOf'(Ljava/lang/String;)Ljava/lang/Integer;add(Ljava/lang/Object;)Zjavax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)V!U**Y*+B*W*L+#+M* ,2 W*Lߧ L 47 . "#$%)&1'4+7)8*A-* !$"#8 $%B& '(/*0 )*>*+ 45+,PK M8ĕtajimaPerlegen/Files.class1 9x 8yz { 8|} 8~  8  {  x    8 8 8  {  !{ 8 8 & 8 8  8 8  8 8 & & ! 8 8 8 8 infileNameLjava/lang/String;gInfileLjava/io/FileReader;dInfileoutputLjava/io/FileWriter;cBrLjava/io/BufferedReader;dBrbwLjava/io/BufferedWriter;(Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Files; pInfileName openInfile()VfileNameiI patternName[Ljava/lang/String; phaseFilesLjava/io/File;phaseFilesInDir[Ljava/io/File;flag Exceptions openOutfiletkLjava/util/StringTokenizer; closeFilesgetBw()Ljava/io/BufferedWriter;setBw(Ljava/io/BufferedWriter;)V getGInfile()Ljava/io/FileReader; setGInfile(Ljava/io/FileReader;)V getDInfile setDInfilegetCBr()Ljava/io/BufferedReader;setCBr(Ljava/io/BufferedReader;)VgBrgetDBrsetDBr getOutput()Ljava/io/FileWriter; setOutput(Ljava/io/FileWriter;)V SourceFile Files.java FO :;java/io/FileReader FG ghjava/io/BufferedReader ef F mn\.  java/io/File. java/lang/StringBuilder .asc F jh if qn#Ascertainment sample file not foundError java/util/StringTokenizerjava/io/FileWriter .tcr tujava/io/BufferedWriter rs F cd kl O pl <= >= ab O DE AB CB ?@tajimaPerlegen/Filesjava/lang/Objectjava/lang/Exceptionjava/io/IOException(Ljava/io/Reader;)Vjava/lang/Stringsplit'(Ljava/lang/String;)[Ljava/lang/String; listFiles()[Ljava/io/File;isFile()ZgetName()Ljava/lang/String;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toStringequals(Ljava/lang/Object;)Z(Ljava/io/File;)Vjavax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)V nextToken&(Ljava/lang/String;)Ljava/lang/String;(Ljava/io/Writer;)Vcloseflush!89:;<=>=?@ABCBDEFGHF **+I#$ %J KL M;NOHW*Y**Y* * L Y M,N66-]-2M-2:Y+2'*Y-2*Y*6  IJ()+(-2.70:1D2N3W4t56781<=?JHWAP;=aQRKL(ST2{UV7vWX:sYRZ[\OH?Y* L*!YY+ "#$%*&Y*'()IB C/D>EJ?KL 3]^Z[_OHx2**+*,+*-.*/.*01*02*'3I"HIJKM#N*O1PJ 2KLZ`abH/*4ISJ KLcdH>*+4I WXJKLDEefH/*-I[J KLghH>*+-I _`JKL<=ifH/*/IcJ KLjhH>*+/I ghJKL>=klH/*5IkJ KLmnH>*+5I opJKLoBplH/*6IsJ KLqnH>*+6I wxJKLCBrsH/*7I{J KLtuH>*+7I JKL?@vwPK M8,ætajimaPerlegen/Hi.class13 " # $ %&' ( )* +,-seqsIpaiLtajimaPerlegen/Pai;hiArray[Ljava/math/BigDecimal;(ILtajimaPerlegen/Pai;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Hi;pSeqpPai getHiArray()[Ljava/math/BigDecimal;fillHi()Vi SourceFileHi.java   java/math/BigDecimal0 ./ 0 12tajimaPerlegen/Hijava/lang/Object(Ljava/lang/String;)VtajimaPerlegen/PaigetOneDivIArrayadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;!  Y***,   /*  K**`*YS<*`%**d2*d2 Sױ$ &'((D'J+, K !PK M8OBڊ#tajimaPerlegen/MsOutputHeader.class1G * + , -./ 0 1 23456 789:seqI iterations()VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/MsOutputHeader;getSeq()I getIterations readHeader(Ljava/io/BufferedReader;)VlineLjava/lang/String;stLjava/util/StringTokenizer;numberFormatException!Ljava/lang/NumberFormatException;brLjava/io/BufferedReader; Exceptions; SourceFileMsOutputHeader.java   < =>java/util/StringTokenizer ? @>A BCjava/lang/NumberFormatExceptionIncorrect infile formatErrorD EFtajimaPerlegen/MsOutputHeaderjava/lang/Objectjava/io/IOExceptionjava/io/BufferedReaderreadLine()Ljava/lang/String;(Ljava/lang/String;)V nextTokenjava/lang/IntegerparseInt(Ljava/lang/String;)Ijavax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)V! E***  /*" /*' CM+MY,N-W*-*-+W+W M   58 2 ,-./0 1+203568495B843% !9 "#CC$%&'()PK M8 tajimaPerlegen/MsSample.class1e ? @ A B CDE F G HI JK L MN O PQ R S T UVWbrLjava/io/BufferedReader;seqsIsegsites positions[Ljava/lang/String; sampleLines(Ljava/io/BufferedReader;I)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/MsSample;pBrpSeqs readSample()VlineLjava/lang/String;stLjava/util/StringTokenizer;posi ExceptionsX getSegsites()I setSegsites(I)V getPositions()[Ljava/lang/String; setPositions([Ljava/lang/String;)VgetSampleLinessetSampleLines SourceFile MsSample.java *   Y Z[java/util/StringTokenizer \ ][^ _` 56 ]a b[ cd 9:java/lang/String <: ;8  tajimaPerlegen/MsSamplejava/lang/Objectjava/io/IOExceptionjava/io/BufferedReaderreadLine()Ljava/lang/String;(Ljava/lang/String;)V nextTokenjava/lang/IntegerparseInt(Ljava/lang/String;)I&(Ljava/lang/String;)Ljava/lang/String;trimsplit'(Ljava/lang/String;)[Ljava/lang/String;! !"b***+*#" #$%$ %&'()*"!L*W*LY+M,W*, *LY+M,W, N*- **6**L*+S*W#J(* ,-. /+233<4A5H6U8`;l<t=|;AB$4%&+,p-.HC/,c(01234"/*#E$ %&56">*# IJ$%&78"/*#M$ %&9:">*+# QR$%&;8"/*#U$ %&<:">*+# YZ$%&=>PK M8Qz]tajimaPerlegen/NminusI.class1L 1 2 3 45 67 8 9 : ; < = > ? @ A BCDwindowLtajimaPerlegen/Window; iNminusIArray[Ljava/math/BigDecimal;iNminusISquaredArray nminusIArray(LtajimaPerlegen/Window;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/NminusI;pWindowcalculateNminusI()ViIinitializeArraysgetINminusIArray()[Ljava/math/BigDecimal;setINminusIArray([Ljava/math/BigDecimal;)VgetINminusISquaredArraysetINminusISquaredArraygetNminusIArraysetNminusIArray SourceFile NminusI.java #  &#E FG -(java/math/BigDecimal H IJ '( KJ +( )* ,* .*   tajimaPerlegen/NminusIjava/lang/ObjecttajimaPerlegen/WindowgetAverageSeqs()I(I)Vsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiply! F **+   !"#c*<*T*Y*YS* *2Y S* * 2* 2 S!"0#G$\!b'\$%c &#a+** ** ***+,*- + '(/*0  )*>*+ 45 +(/*8  ,*>*+ <= -(/*@  .*>*+ DE /0PK M8$γ tajimaPerlegen/Output.class1 #P "Q "R "S "T "U "V "W "X "Y "Z[ \] \^_ P` a bc de df dg dh ij k lm no pq rs tu v \wxybwLjava/io/BufferedWriter;iIwindowLtajimaPerlegen/Window;wtLtajimaPerlegen/ThetaWatterson;ttLtajimaPerlegen/ThetaTajima;atLtajimaPerlegen/ThetaAverage;vwt'LtajimaPerlegen/VarianceThetaWatterson;vtt$LtajimaPerlegen/VarianceThetaTajima;covarLtajimaPerlegen/Covariance;tajimaLtajimaPerlegen/TajimaD; (Ljava/io/BufferedWriter;ILtajimaPerlegen/Window;LtajimaPerlegen/ThetaWatterson;LtajimaPerlegen/ThetaTajima;LtajimaPerlegen/ThetaAverage;LtajimaPerlegen/VarianceThetaWatterson;LtajimaPerlegen/VarianceThetaTajima;LtajimaPerlegen/Covariance;LtajimaPerlegen/TajimaD;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Output;pBwpIpWindowpWtpTtpAtpVwtpVttpCovarpTajima writeHeader()V Exceptionsz writeSample SourceFile Output.java 8J $% &' () *+ ,- ./ 01 23 45 67`Window start_pos end_pos snp_num average_n W_theta T_theta Var_W_theta VarT_theta Cov Tajima's D{ |} ~Jjava/lang/StringBuilder          JtajimaPerlegen/Outputjava/lang/Objectjava/io/IOExceptionjava/io/BufferedWriterwrite(Ljava/lang/String;)VnewLineappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder;tajimaPerlegen/WindowgetStartPosArray()IgetEndPosArraygetSnpsInWindowgetAverageSeqstajimaPerlegen/ThetaWattersongetWattersonTheta()Ljava/math/BigDecimal;-(Ljava/lang/Object;)Ljava/lang/StringBuilder;tajimaPerlegen/ThetaTajimagetTajimaTheta%tajimaPerlegen/VarianceThetaWattersongetVarianceWTheta"tajimaPerlegen/VarianceThetaTajimagetVarianceTThetatajimaPerlegen/Covariance getCovariancetajimaPerlegen/TajimaD getTajimadtoString()Ljava/lang/String;flush!"# $%&'()*+,-./0123456789: >**+**-***** * * ;2 "# $%&'(%)+*1+7,=-<p >=>>?%>@'>A)>B+>C->D/>E1>F3>G5 >H7 IJ:C* *;0 12< =>KLMJ:*Y********* * *  **!;589:< =>KLNOPK M8?y*  tajimaPerlegen/Pai.class1 &_ %` %a %b cdef g hi jk lm no npq r s %t u vw x jy z %{ %| %} %~ % % %  % s % % %windowLtajimaPerlegen/Window;dDistLtajimaPerlegen/DDistribution;paiArray[Ljava/math/BigDecimal;paiSquaredArray oneDivIArray8(LtajimaPerlegen/Window;LtajimaPerlegen/DDistribution;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Pai;pWindowpDDistcalculateProbabilityAi()VkeyLjava/lang/Integer;idLjava/math/BigDecimal;nidnd probabilityAifinalProbabilityAiiterLjava/util/Iterator;iI fillArrays(ILjava/math/BigDecimal;)VinitializeArrayscalculateProbabilityParameterD(Ljava/math/BigDecimal;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; upperFact downerFactdenupperdownerprobabilityParametercalculateFactorial.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;begginingNumberfactorialNumber getPaiArray()[Ljava/math/BigDecimal; setPaiArray([Ljava/math/BigDecimal;)VgetPaiSquaredArraysetPaiSquaredArraygetOneDivIArraysetOneDivIArray SourceFilePai.java /9 '( )* H9 java/math/BigDecimal0 /    java/lang/Integer / IJ R 1 R R FG UV YV [V WX ZX \X QR +, -, .,tajimaPerlegen/Paijava/lang/ObjecttajimaPerlegen/WindowgetAverageSeqs()I(Ljava/lang/String;)VtajimaPerlegen/DDistributiongetDDistribution()Ljava/util/HashMap;java/util/HashMapkeySet()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;(I)VintValueadddivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;subtractget&(Ljava/lang/Object;)Ljava/lang/Object;multiply intValueExact!%&'()*+,-,., /01Y**+*,2 3 456(7*891 *<*`޻YM* N- - :*YY:*Y*dY:*Y*Y:::Y:* :,MN*,2J"$%&-(6)A+[,}-/012345$73\ A:;[<=}b>=B?=<@=A=-BCDE45FG1z0*,S*,,S*YYS2:;</>3 0450DE0@=H91g1**`**`**`2AB C0D3 145IJ1UYN,+YN4*+ :*, :+,:* ::N-2* G IJ"L)M0O7P?QHSSV3H)*K=0#L=7M=U45UN=UO= KP=QR1)YM+!>,YM,2Z [\!['_3*DE)45)S= T=UV1/*"2c3 45WX1>*+"2 gh345+,YV1/*#2k3 45ZX1>*+#2 op345-,[V1/*$2s3 45\X1>*+$2 wx345.,]^PK M8tajimaPerlegen/Pairwise.class1c :;< = > ? @ AB CD E F G H I J KL AM NOPQheaderLtajimaPerlegen/MsOutputHeader;windowLtajimaPerlegen/Window;piLjava/math/BigDecimal;9(LtajimaPerlegen/Window;LtajimaPerlegen/MsOutputHeader;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Pairwise;pWindowpHeader calculatePi()Vallele0Iallele1numdentempicalculateAlleleFreq(CI)IalleleCcountjgetPi()Ljava/math/BigDecimal;setPi(Ljava/math/BigDecimal;)V SourceFile Pairwise.java &java/math/BigDecimal0 R   S TU ./1 V WX YZ 45 [Z 67\ ]U ^_` abtajimaPerlegen/Pairwisejava/lang/Object(Ljava/lang/String;)VtajimaPerlegen/WindowgetSnpsInWindow()I(I)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;subtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;addtajimaPerlegen/MsOutputHeadergetSeqgetWindowSample()[Ljava/lang/String;java/lang/StringcharAt(I)C!j**Y*+*, !"#$%&q<*f*0 =*1 >hdhd`6``h`d6Y Y Y  :**& . /02*374]5j.p9 HU'(M)(*@*(73+(] ,n-(q!"./.>6**2<>?&>,B 4.!".01.-(,2()3(45/*F !"67>*+ JK !"89PK M8VRtajimaPerlegen/Sigma.class1N 1 2 34 5 6 78 9 : ;<= > ? @ AB ? C DEFseqsIpaiLtajimaPerlegen/Pai;hiLtajimaPerlegen/Hi;betaLtajimaPerlegen/Beta;sigmaiiLtajimaPerlegen/Sigmaii;sigmaijLtajimaPerlegen/Sigmaij;(ILtajimaPerlegen/Pai;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Sigma;pSeqspPailaunchSigmaRelatedClasses()V SourceFile Sigma.java $.  tajimaPerlegen/Hi $%  G.tajimaPerlegen/Beta $H  I.tajimaPerlegen/Sigmaiijava/math/BigDecimal $J $K ! L.tajimaPerlegen/Sigmaij "# M.tajimaPerlegen/Sigmajava/lang/ObjectfillHi(ILtajimaPerlegen/Hi;)V fillBetaArray(I)VA(Ljava/math/BigDecimal;LtajimaPerlegen/Hi;LtajimaPerlegen/Beta;)VcalculateSigmaiiArraycalculateSigmaijArray! !"#$%&Y***,' ( )*+,-.&*Y****Y** * * Y Y*** **Y Y*** *'& #$'-(4+R,Y/w0~1( )*/0PK M8ltajimaPerlegen/Sigmaii.class1i ? @ A B CD EF G H I J K L MN OP QR S T UV WXYseqsLjava/math/BigDecimal;hiLtajimaPerlegen/Hi;betaLtajimaPerlegen/Beta; sigmaiiArray[Ljava/math/BigDecimal;A(Ljava/math/BigDecimal;LtajimaPerlegen/Hi;LtajimaPerlegen/Beta;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Sigmaii;pSeqspHipBetacalculateSigmaiiArray()ViIhalfDcalculateSigmaiiCase1(I)Ljava/math/BigDecimal;omegacalculateSigmaiiCase2tempcalculateSigmaiiCase3 getSigmaii()[Ljava/math/BigDecimal; setSigmaii([Ljava/math/BigDecimal;)Vomegaii SourceFile Sigmaii.java "-    Z[java/math/BigDecimal :;2 "\ ]^ _` 89 23 53 730a b9c d9 ef "g hf1 !tajimaPerlegen/Sigmaiijava/lang/Object intValueExact()I(Ljava/lang/String;)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal; doubleValue()DtajimaPerlegen/Beta getBetaArraytajimaPerlegen/Hi getHiArraysubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;(I)Vmultiply! !"#$l**+*,*-% &*'()*+,-$t***Y  H>*E'* * S*'* *S'* *S%. !#$$1%8&F'M([)b*m$s.& &M./t'($P0123$^Y M*`2M,%1 35& '(./ 453$vY M**2*2M*YN,- Y MY YY N,-M,%9 <&>6@KBnEtG&*v'(v./ l46@673$=Y MY YY M*2,M,%K M-N;P& ='(=./ 3489$/*%T& '(:;$>*+% XY&'(<!=>PK M8+3 tajimaPerlegen/Sigmaij.class1m C D E F G# H I J K L MNO P QR ST U VW X QE YZ [\]seqsLjava/math/BigDecimal;hiLtajimaPerlegen/Hi;betaLtajimaPerlegen/Beta;sigmaij[[Ljava/math/BigDecimal;A(Ljava/math/BigDecimal;LtajimaPerlegen/Hi;LtajimaPerlegen/Beta;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Sigmaij;pSeqspHipBetacalculateSigmaijArray()ViIjcalculateSigmaijCase1(I)Ljava/math/BigDecimal;omegacalculateSigmaijCase2(II)Ljava/math/BigDecimal;temptemp2temp3calculateSigmaijCase3 getSigmaij()[[Ljava/math/BigDecimal; setSigmaij([[Ljava/math/BigDecimal;)Vomegaij SourceFile Sigmaij.java $/   ! ^_ >? <= 34 67 ;7 "#java/math/BigDecimal0 $`a bc de2 fgh ic $j ke1 letajimaPerlegen/Sigmaijjava/lang/Object intValueExact()I(Ljava/lang/String;)VtajimaPerlegen/Beta getBetaArray()[Ljava/math/BigDecimal;subtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;divide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/Hi getHiArray(I)Vaddmultiply! !"#$%&l**+*,*-' (*)*+,-!./&***<*`=*o`**2* S<`**2* S`**2* S* 2* 22Sw'6 !##$2%?&O'\(m)z*,$#0( 'w0121)*34&5 YM*`2*2M, YM,'3 5"638( 5)*501 +567&iۻ YN**2*2N* Y:-:**2*2N* Y:-:*2*`2 Y: Y Y YN-N-'. < ?&A7CBFaHrJ}MPSU(H)*0121 578ri96:;7&` YN*2*`2N- YN Y Y Y:-N-'Y ["\3^W`^b(4`)*`01`21 V5W 8<=&/* 'f( )*>?&>*+ ' jk()*@#ABPK M8r1tajimaPerlegen/TajimaD.class1h :;< = > ? @ A B C DE FG HI JK L M N OP QR S TUVwtLtajimaPerlegen/ThetaWatterson;ttLtajimaPerlegen/ThetaTajima;vwt'LtajimaPerlegen/VarianceThetaWatterson;vtt$LtajimaPerlegen/VarianceThetaTajima;covarLtajimaPerlegen/Covariance;tajimadLjava/math/BigDecimal;(LtajimaPerlegen/ThetaWatterson;LtajimaPerlegen/ThetaTajima;LtajimaPerlegen/VarianceThetaWatterson;LtajimaPerlegen/VarianceThetaTajima;LtajimaPerlegen/Covariance;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/TajimaD;pWtpTtpVwtpVttpCovarcalculateTajimaD()Vtemp getTajimad()Ljava/math/BigDecimal; setTajimad(Ljava/math/BigDecimal;)V SourceFile TajimaD.java %2java/math/BigDecimal0 %W #$     !"X Y5Z [5 \]2^ _5 `] a] 67b c5d e5 45 fgtajimaPerlegen/TajimaDjava/lang/Object(Ljava/lang/String;)V%tajimaPerlegen/VarianceThetaWattersongetVarianceWTheta"tajimaPerlegen/VarianceThetaTajimagetVarianceTThetaadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimaPerlegen/Covariance getCovariancemultiplysubtracttajimaPerlegen/ThetaTajimagetTajimaThetatajimaPerlegen/ThetaWattersongetWattersonThetadivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;! !"#$%&'-**Y*+*,*-* * (" &!,")>-*+-,---.-/ -0"12'M** * Y* **L*+*(%+'=)L+)M*+=3$45'/*(.) *+67'>*+( 23)*+#$89PK M8q<<#tajimaPerlegen/TajimaPerlegen.class11 W                       $ & ( *  ,  $ & ( * , 5 5 8 8 ; ; > @ > @ D D G G J G  N N N  T()VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/TajimaPerlegen;main9(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)VwindowLtajimaPerlegen/Window;ddistLtajimaPerlegen/DDistribution;paiLtajimaPerlegen/Pai;nminusiLtajimaPerlegen/NminusI;coefsLtajimaPerlegen/Coefficients;sigmaLtajimaPerlegen/Sigma;wtLtajimaPerlegen/ThetaWatterson;ttLtajimaPerlegen/ThetaTajima;atLtajimaPerlegen/ThetaAverage;vwt'LtajimaPerlegen/VarianceThetaWatterson;vtt$LtajimaPerlegen/VarianceThetaTajima;covLtajimaPerlegen/Covariance;tajimaLtajimaPerlegen/TajimaD;outputLtajimaPerlegen/Output;filesLtajimaPerlegen/Files;headerLtajimaPerlegen/MsOutputHeader;sampleLtajimaPerlegen/MsSample;dSampleLtajimaPerlegen/DSample;endIpreviousWindowStartPos startPositionJiexLjava/lang/Exception;infileLjava/lang/String; windowSizestepSize SourceFileTajimaPerlegen.java XYtajimaPerlegen/Files X Y YtajimaPerlegen/MsOutputHeader tajimaPerlegen/MsSample X YtajimaPerlegen/DSample X Y   tajimaPerlegen/Window X Y   java/lang/StringBuilderanalysing window      tajimaPerlegen/DDistribution XtajimaPerlegen/Pai XtajimaPerlegen/NminusI XtajimaPerlegen/Coefficients XtajimaPerlegen/Sigma  X  Y Y Y Y YtajimaPerlegen/ThetaWatterson X YtajimaPerlegen/ThetaTajima X YtajimaPerlegen/ThetaAverage X  Y%tajimaPerlegen/VarianceThetaWatterson X!"tajimaPerlegen/VarianceThetaTajima X" #Y $YtajimaPerlegen/Covariance %YtajimaPerlegen/TajimaD X& 'Yjava/math/BigDecimal0.000000 ()tajimaPerlegen/Output *+ X, -Y .Y /Yjava/lang/Exception 0YtajimaPerlegen/TajimaPerlegenjava/lang/Object(Ljava/lang/String;)V openInfile openOutfilegetCBr()Ljava/io/BufferedReader; readHeader(Ljava/io/BufferedReader;)VgetSeq()I(Ljava/io/BufferedReader;I)V readSamplegetDBr readDFile getPositions()[Ljava/lang/String;java/lang/LongvalueOf$(Ljava/lang/String;)Ljava/lang/Long; longValue()Jjava/lang/Integer'(Ljava/lang/String;)Ljava/lang/Integer;intValue (ILtajimaPerlegen/MsSample;IJI)V createWindowgetStartPosArraygetEndPosArrayjava/lang/SystemoutLjava/io/PrintStream;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder;toString()Ljava/lang/String;java/io/PrintStreamprintln2(LtajimaPerlegen/Window;LtajimaPerlegen/DSample;)V8(LtajimaPerlegen/Window;LtajimaPerlegen/DDistribution;)V(LtajimaPerlegen/Window;)VF(LtajimaPerlegen/Window;LtajimaPerlegen/Pai;LtajimaPerlegen/NminusI;)VgetAverageSeqs(ILtajimaPerlegen/Pai;)VgetSnpsInWindowfilldDistributioncalculateProbabilityAicalculateNminusIcalculateCoefslaunchSigmaRelatedClasses7(LtajimaPerlegen/Window;LtajimaPerlegen/Coefficients;)VcalculateWattersonThetaV(LtajimaPerlegen/MsOutputHeader;LtajimaPerlegen/Window;LtajimaPerlegen/Coefficients;)VcalculateTajimaTheta(LtajimaPerlegen/Window;LtajimaPerlegen/ThetaWatterson;LtajimaPerlegen/ThetaTajima;LtajimaPerlegen/Pai;LtajimaPerlegen/Sigma;)VcalculateThetaAverageh(ILtajimaPerlegen/Pai;LtajimaPerlegen/Coefficients;LtajimaPerlegen/Sigma;LtajimaPerlegen/ThetaAverage;)V(ILtajimaPerlegen/Pai;LtajimaPerlegen/NminusI;LtajimaPerlegen/Coefficients;LtajimaPerlegen/Sigma;LtajimaPerlegen/ThetaAverage;)VcalculateVarianceWattersonThetacalculateVarianceTajimaThetacalculateCovariance(LtajimaPerlegen/ThetaWatterson;LtajimaPerlegen/ThetaTajima;LtajimaPerlegen/VarianceThetaWatterson;LtajimaPerlegen/VarianceThetaTajima;LtajimaPerlegen/Covariance;)VcalculateTajimaD setTajimad(Ljava/math/BigDecimal;)VgetBw()Ljava/io/BufferedWriter; (Ljava/io/BufferedWriter;ILtajimaPerlegen/Window;LtajimaPerlegen/ThetaWatterson;LtajimaPerlegen/ThetaTajima;LtajimaPerlegen/ThetaAverage;LtajimaPerlegen/VarianceThetaWatterson;LtajimaPerlegen/VarianceThetaTajima;LtajimaPerlegen/Covariance;LtajimaPerlegen/TajimaD;)V writeHeader writeSample closeFilesprintStackTrace!VWXYZ3*[ \ ]^ _`Za MY*N--Y:- Y- : Y-:66 7 6  27  ,ha7 Y +h :   6 6Y  `!"#$Y %: &Y  ':(Y ):*Y +:,Y -.: / 012345Y 6:78Y 9::;Y <:=>Y -?:@Y -A: / BCDY -E:FGYH: / IJYKLMNY-O ` P: QR -SN-UDGT[;$ % &()#+5,:.G/L2O3R4U5X6c7h8z:<=>?BEFGH IK%M*O/R4U9X>]K^P__`dawb|defghklpqr u+v5w:y=z@|DG}H~L\ab Wcd Jef?gh 0ij klKmn_opwqrstuviwxQyz+{| ;}~*5GORU X HMMMPK M8? !tajimaPerlegen/ThetaAverage.class1 $WXY Z #[ #\ #] #^ #_ #` #a bc de #f #g #h bi #j #k #l m n op oq r s tu vw tx yz #{ #| } #~windowLtajimaPerlegen/Window;wtLtajimaPerlegen/ThetaWatterson;ttLtajimaPerlegen/ThetaTajima;paiLtajimaPerlegen/Pai;sigmaLtajimaPerlegen/Sigma; averageThetaLjava/math/BigDecimal; aThetaSquared aThetaDivI[Ljava/math/BigDecimal;(LtajimaPerlegen/Window;LtajimaPerlegen/ThetaWatterson;LtajimaPerlegen/ThetaTajima;LtajimaPerlegen/Pai;LtajimaPerlegen/Sigma;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/ThetaAverage;pWindowpWtpTtpPaipSigmacalculateThetaAverage()V operateThetaiIthetaSquaredCorrectedjfirstSum secondSumtemptemp2getAverageTheta()Ljava/math/BigDecimal;setAverageTheta(Ljava/math/BigDecimal;)VgetAThetaSquaredsetAThetaSquared getAThetaDivI()[Ljava/math/BigDecimal; setAThetaDivI([Ljava/math/BigDecimal;)V SourceFileThetaAverage.java 4Ajava/math/BigDecimal0 4 /0 10 %& '( )* +, -.  L MN BA EA ST QR KL 4  R R    R PN OL 23tajimaPerlegen/ThetaAveragejava/lang/Object(Ljava/lang/String;)VtajimaPerlegen/WindowgetSnpsInWindow()ItajimaPerlegen/ThetaWattersongetWattersonThetagetAverageSeqs(I)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/PaigetOneDivIArray getPaiArraymultiply.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;addtajimaPerlegen/SigmasigmaijLtajimaPerlegen/Sigmaij;tajimaPerlegen/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;sigmaiiLtajimaPerlegen/Sigmaii;tajimaPerlegen/Sigmaii getSigmaiisubtract!#$%&'()*+,-./01023 456:**Y*Y*+*,*- * * 7& # (!-"3#9$8>:9::;&:<(:=*:>,:?.@A6P* ** *7* +/18 9:BA6>***<*!**YSڱ7578978=;8)CD>9:EA61YLYMYNY:6** 2* 2N+-L6*s/* 22* 2* 2:,* 2* 2* 2:,MT++L*Y* Y* ** Y* !** +,7R> ?AB)D8EPFVGeHlIJKLGDPRST0V8HY|FD,CD19: 'G0H0I0)J0KL6/*7Y8 9:MN6>*+7 ]^89:/0OL6/*7a8 9:PN6>*+7 ef89:10QR6/*"7i8 9:ST6>*+"7 mn89:23UVPK M8$ tajimaPerlegen/ThetaTajima.class1a 678 9 : ; < = >?@ A B C >D EF G H I JK LM NOPheaderLtajimaPerlegen/MsOutputHeader;windowLtajimaPerlegen/Window;coefsLtajimaPerlegen/Coefficients; tajimaThetaLjava/math/BigDecimal;V(LtajimaPerlegen/MsOutputHeader;LtajimaPerlegen/Window;LtajimaPerlegen/Coefficients;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/ThetaTajima;pHeaderpWindowpCoefscalculateTajimaTheta()VpiLtajimaPerlegen/Pairwise;getTajimaTheta()Ljava/math/BigDecimal;setTajimaTheta(Ljava/math/BigDecimal;)V SourceFileThetaTajima.java "-java/math/BigDecimal0 "Q !   R STtajimaPerlegen/Pairwise "U V- W1 XT "Y1 Z[ \[ 23] ^1 012 _`tajimaPerlegen/ThetaTajimajava/lang/Object(Ljava/lang/String;)VtajimaPerlegen/WindowgetSnpsInWindow()I9(LtajimaPerlegen/Window;LtajimaPerlegen/MsOutputHeader;)V calculatePigetPigetAverageSeqs(I)Vsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiplytajimaPerlegen/Coefficients getTajimaCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;! !"#$}!**Y*+*,*-% &*!'(!)!*!+,-$* n Y** L+ *+ Y*Y*Y***Y**Y%# $%'T)u./&[./'(01$/*%;& '(23$>*+% ?@&'( !45PK M8FVV#tajimaPerlegen/ThetaWatterson.class1G )*+ , - . / 01 2 34 5 6 78 9:;windowLtajimaPerlegen/Window;coefsLtajimaPerlegen/Coefficients;wattersonThetaLjava/math/BigDecimal;7(LtajimaPerlegen/Window;LtajimaPerlegen/Coefficients;)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/ThetaWatterson;pWindowpCoefscalculateWattersonTheta()VgetWattersonTheta()Ljava/math/BigDecimal;setWattersonTheta(Ljava/math/BigDecimal;)V SourceFileThetaWatterson.java "java/math/BigDecimal0 <   = >? @A B$ CD %& #$1 EFtajimaPerlegen/ThetaWattersonjava/lang/Object(Ljava/lang/String;)VtajimaPerlegen/WindowgetSnpsInWindow()I(I)VtajimaPerlegen/CoefficientsgetWattersonCoefmultiply.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;divide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;!j**Y*+*,   !"t>**Y* * ** Y # $&)=* >#$/*6 %&>*+ :;'(PK M85E (tajimaPerlegen/VarianceThetaTajima.class1 !OPQ R S T U V W X Y Z [ \] ^ _` a b cde f gh ij kl mn io pq _r gs mtuvseqsIpaiLtajimaPerlegen/Pai;nminusiLtajimaPerlegen/NminusI;coefsLtajimaPerlegen/Coefficients;sigmaLtajimaPerlegen/Sigma;atLtajimaPerlegen/ThetaAverage;varianceTThetaLjava/math/BigDecimal;(ILtajimaPerlegen/Pai;LtajimaPerlegen/NminusI;LtajimaPerlegen/Coefficients;LtajimaPerlegen/Sigma;LtajimaPerlegen/ThetaAverage;)VCodeLineNumberTableLocalVariableTablethis$LtajimaPerlegen/VarianceThetaTajima;pSeqspPaipNminusipCoefspSigmapAtcalculateVarianceTajimaTheta()VifirstSum secondSumcalculateSecondSum(I)Ljava/math/BigDecimal;jtempcalculateSecondSumCorrectedcalculateFirstSumcalculateFirstSumCorrectedgetVarianceTTheta()Ljava/math/BigDecimal;setVarianceTTheta(Ljava/math/BigDecimal;)V SourceFileVarianceThetaTajima.java 0>java/math/BigDecimal0 0w ./ "# $% &' () *+ ,- HC xy FC2 zy{ |J KL IJ} ~J1      "tajimaPerlegen/VarianceThetaTajimajava/lang/Object(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiplytajimaPerlegen/ThetaAveragegetAThetaSquaredtajimaPerlegen/Coefficients getTajimaCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/NminusIgetINminusIArray()[Ljava/math/BigDecimal;tajimaPerlegen/SigmasigmaijLtajimaPerlegen/Sigmaij;tajimaPerlegen/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;tajimaPerlegen/Pai getPaiArraysigmaiiLtajimaPerlegen/Sigmaii;tajimaPerlegen/Sigmaii getSigmaii getAThetaDivIgetINminusISquaredArraygetPaiSquaredArray! !"#$%&'()*+,-./0123**Y**,*-* * * 3&  !" #&$,%2&4H35637#38%39'3:)3;+3<-=>2YLYM>*+* L,* M,Y* M*+, *** * **Y3. ) *+0(12+84P6Y7u8:4*"?#56 @/yA/BC2IYM`>*4,*2*2* 22 M,3= >?A>GB4*9D#I56I?# ?E/FC2aYM`>*L,*2*2*2*2* 22 M,3F GHYG_K4*QD#a56a?# WE/GC25* * 2M,* 2 M,*2M,3OP%Q3S4 5565?#E/HC2M*2* * 2M,* 2*2 M,*2M,3W#X=YK[4 M56M?##*E/IJ2/*3_4 56KL2>*+3 cd456./MNPK M8 +tajimaPerlegen/VarianceThetaWatterson.class1 IJK L M N O P Q R S T UV W XY Z [ \]^ _ `a bc de `f gh Xi djklseqsIpaiLtajimaPerlegen/Pai;coefsLtajimaPerlegen/Coefficients;sigmaLtajimaPerlegen/Sigma;atLtajimaPerlegen/ThetaAverage;varianceWThetaLjava/math/BigDecimal;h(ILtajimaPerlegen/Pai;LtajimaPerlegen/Coefficients;LtajimaPerlegen/Sigma;LtajimaPerlegen/ThetaAverage;)VCodeLineNumberTableLocalVariableTablethis'LtajimaPerlegen/VarianceThetaWatterson;pSeqspPaipCoefspSigmapAtcalculateVarianceWattersonTheta()VifirstSum secondSumcalculateSecondSum(I)Ljava/math/BigDecimal;jtempcalculateSecondSumCorrectedcalculateFirstSumcalculateFirstSumCorrectedgetVarianceWTheta()Ljava/math/BigDecimal;setVarianceWTheta(Ljava/math/BigDecimal;)V SourceFileVarianceThetaWatterson.java +8java/math/BigDecimal0 +m )*  !" #$ %& '( B= no @=2 poq rD EF CDs tD1 uvw xyz {|} ~    %tajimaPerlegen/VarianceThetaWattersonjava/lang/Object(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiplytajimaPerlegen/ThetaAveragegetAThetaSquaredtajimaPerlegen/CoefficientsgetWattersonCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimaPerlegen/SigmasigmaijLtajimaPerlegen/Sigmaij;tajimaPerlegen/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;tajimaPerlegen/Pai getPaiArray()[Ljava/math/BigDecimal;sigmaiiLtajimaPerlegen/Sigmaii;tajimaPerlegen/Sigmaii getSigmaii getAThetaDivIgetPaiSquaredArray! !"#$%&'()*+,--**Y**,*-* * ." ! "&#,$/>-01-2 -3"-4$-5&-6(78-YLYM>*+* L,* M,Y* M*+, ******Y.. ' ().(/2)82P4Y5u67/*"9 01 :*y;*<=-1YM`>*,* 22 M,.: ;<);/>/*!> 10119  '?*@=-IYM`>*4,*2*2* 22 M,.B CDACGF/*9> I01I9  ??*A=-m'* * 2M,* 2 M,.JK%M/ '01'9 ?*B=-?*2* * 2M,* 2*2 M,.Q#R=T/ ?01?9 #?*CD-/*.X/ 01EF->*+. \]/01)*GHPK M8e tajimaPerlegen/Window.class1 #] "^ "_ "` "a "b "c "d "ef "g "h "i "j "k "l "m "n o "p "qr s t u "v wx y wz {| {} "~ "seqsIsampleLtajimaPerlegen/MsSample; windowSize startPositionJpreviousWindowStartPos windowSample[Ljava/lang/String; endPosArray startPosArray snpsInWindow averageSeqs (ILtajimaPerlegen/MsSample;IJI)VCodeLineNumberTableLocalVariableTablethisLtajimaPerlegen/Window;pSeqspSample pWindowSizepStartPositionpPreviousWindowStartPos createWindow()VjcountSeqsNoMissingsitempLjava/math/BigDecimal; lastPosition fillWindowfindSnpsInWindow(J)V ExceptionsfindStartPositiongetWindowSample()[Ljava/lang/String;setWindowSample([Ljava/lang/String;)VgetEndPosArray()IsetEndPosArray(I)VendgetStartPosArraysetStartPosArraygetSnpsInWindowsetSnpsInWindowgetAverageSeqssetAverageSeqs SourceFile Window.java 2? /% 0% 1% $% &' (% )* +%java/lang/String NO K? GH UQ WQ .% F? ,- YQ ZSjava/math/BigDecimal 2S Q LM M M XS VStajimaPerlegen/Windowjava/lang/Objectjava/lang/NumberFormatExceptioncharAt(I)Cdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;intValuetajimaPerlegen/MsSamplegetSampleLines substring(II)Ljava/lang/String; getPositionsjava/lang/LongvalueOf$(Ljava/lang/String;)Ljava/lang/Long; longValue()J!"# $%&'(%)*+%,-.%/%0%1%234/******,*** 5* ! "#$"%(&.'6>/78/9%/:'/;%/<*/=%>?4?** **a@* * ***`**j>*<66**2?**`»Y*Y*N*-5J* ,-./,00273A4D5P6`7c5i:t3z<=@6>G"@%D0A%9AB%CD78E*F?4k+<*#**2**S۱5C D$C*F6(B%+78GH46*>*'*2**` ӱ5JK%L/J5Q6 0B%6786E*IJK?47* <*(*2* *! ұ5UV(W-X0U6[61B%778IJLM4/*5^6 78NO4>*+5 bc678,-PQ4/*5f6 78RS4>*5 jk678T%UQ4/*5n6 78VS4>*5 rs678/%WQ4/*5v6 78XS4>*5 z{6780%YQ4/*5~6 78ZS4>*5 6781%[\PK M8*..tajimacorrection/Beta.class1O 1 2 34 5 6 78 9 :; < = >? @ ABCDseqsIhiLtajimacorrection/Hi; betaArray[Ljava/math/BigDecimal;(ILtajimacorrection/Hi;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Beta;pSeqspHi fillBetaArray()VicalculateBetaNi(I)Ljava/math/BigDecimal;betaNiLjava/math/BigDecimal;temp getBetaArray()[Ljava/math/BigDecimal; setBetaArray([Ljava/math/BigDecimal;)V SourceFile Beta.java $  java/math/BigDecimal  +, &'0 E F1 GH IH JH2 KLM N,tajimacorrection/Betajava/lang/Object(Ljava/lang/String;)V(I)Vsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;addmultiplydivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/Hi getHiArray!Y***,   !"#$k'**<***S ! &# %' &'Y MY* Y Y M,Y* Y MY Y* N-,M,**`2*2 MY Y* Y N,- M,& & )-*H-`.i1458* % ()`V*)+,/*<  -.>*+ @A /0PK M8T0W W #tajimacorrection/Coefficients.class1m CDE F G H I J K L M N O PQ R S T U V WX Y Z[ \ Z] ^_`seqsI ascSampleSizepaiLtajimacorrection/Pai;nminusiLtajimacorrection/NminusI; wattersonCoefLjava/math/BigDecimal; tajimaCoef5(IILtajimacorrection/Pai;Ltajimacorrection/NminusI;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Coefficients;pSeqspAscSampleSizepPaipNminusicalculateCoefs()Vi sumTajimaCoef(I)VsumTajimaCoefCorrectedtempsumWattersonCoefsumWattersonCoefCorrectedgetWattersonCoef()Ljava/math/BigDecimal;setWattersonCoef(Ljava/math/BigDecimal;)V getTajimaCoef setTajimaCoef SourceFileCoefficients.java '3java/math/BigDecimal0 'a $% &%   ! "# 96 56 :6 761 ;< bc => ?< @>d ef ghi jf kh lf '6tajimacorrection/Coefficientsjava/lang/Object(Ljava/lang/String;)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/NminusIgetNminusIArray()[Ljava/math/BigDecimal;add.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimacorrection/Pai getPaiArraymultiplygetOneDivIArray! !"#$%&% '()4**Y*Y***- * *"#(- 3!+44,-4.4/40!41#23)]<*'** * * **Y**Y*** $ %&')#*($..E/\1+,4],-56)M*** 2* 45+,-476)i#* 2* 2M**,*89":+ #,-#4 8%96)M*** 2* =>+,-4:6)k%* 2YM**,*AB$C+ %,-%4 8%;<)/**F+ ,-=>)>*+* JK+,-$%?<)/**N+ ,-@>)>*+* RS+,-&%ABPK M8{rJG G !tajimacorrection/Covariance.class1 #RST U "V "W "X "Y "Z "[ "\ "] "^ "_ ` "a bc d ef "g "h "i ejk l mn op qr st mu vw qx syz{ ascSampleSizeIseqspaiLtajimacorrection/Pai;nminusiLtajimacorrection/NminusI;coefsLtajimacorrection/Coefficients;sigmaLtajimacorrection/Sigma;atLtajimacorrection/ThetaAverage; covarianceLjava/math/BigDecimal;(IILtajimacorrection/Pai;Ltajimacorrection/NminusI;Ltajimacorrection/Coefficients;Ltajimacorrection/Sigma;Ltajimacorrection/ThetaAverage;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Covariance;pAscSampleSizepSeqspPaipNminusipCoefspSigmapAtcalculateCovariance()VtempicalculateSecondSum(I)Ljava/math/BigDecimal;jrcalculateSecondSumCorrectedcalculateFirstSumcalculateFirstSumCorrected getCovariance()Ljava/math/BigDecimal; setCovariance(Ljava/math/BigDecimal;)V SourceFileCovariance.java 3Bjava/math/BigDecimal0 3| 12 $% &% '( )* +, -. /0 JF EF }~ LM ~ M NO KF IF M1    M  tajimacorrection/Covariancejava/lang/Object(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimacorrection/NminusIgetINminusIArray()[Ljava/math/BigDecimal;multiplytajimacorrection/Coefficients getTajimaCoefgetWattersonCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/SigmasigmaijLtajimacorrection/Sigmaij;tajimacorrection/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;tajimacorrection/ThetaAveragegetAThetaSquaredtajimacorrection/Pai getPaiArraysigmaiiLtajimacorrection/Sigmaii;tajimacorrection/Sigmaii getSigmaii getAThetaDivIgetPaiSquaredArray!"#$%&%'()*+,-./0123459**Y***-* * * * 6*  ! "&#,$2%8&7R9899:%9;%9<(9=*9>,9?.9@0AB5<*s*6* *M**,* 2* 3**M**,* 2* *** **Y6. ) *+,A-D.R/t)z3467*"C2R"C2xD%89EF5kYM>6*TH$,* 22* M!,* 22* M,6& 9 : ;<=$>E@c;iE74ZG%k89kD% aC2 _H%IF5YM>*u;,* 22* *2*2M8,* 22* *2*2M~,6"I JKLMVPJU7* G%89D% C2JF5m'* * 2M,* 2M,6YZ%\7 '89'D%C2KF5?* * 2*!2M,* 2*2M,6`#a=c7 ?89?D%#C2LM5/*6g7 89NO5>*+6 kl78912PQPK M8}j? ? tajimacorrection/Files.class1 (S 'T 'UV W 'XY Z '[\]^ _`a Wbc Sd e fgh i W 'jk l 'mno 'p q r r rs 'tuv infileNameLjava/lang/String; ascSampleSizefileLjava/io/FileReader;outputLjava/io/FileWriter;brLjava/io/BufferedReader;bwLjava/io/BufferedWriter;'(Ljava/lang/String;Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Files; pInfileNamepAscSampleSize openInfile()VfileNotFoundExceptionLjava/io/FileNotFoundException; Exceptionsw openOutfiletkLjava/util/StringTokenizer; iOExceptionLjava/io/IOException; closeFilesgetBr()Ljava/io/BufferedReader;setBr(Ljava/io/BufferedReader;)VgetBw()Ljava/io/BufferedWriter;setBw(Ljava/io/BufferedWriter;)V SourceFile Files.java 4> )* +*java/io/FileReader 4x ,-java/io/BufferedReader 4y KLjava/io/FileNotFoundExceptionInfile not foundErrorz {|java/util/StringTokenizerjava/io/FileWriterjava/lang/StringBuilder. }~ _.tcr ./java/io/BufferedWriter 4 OPjava/io/IOExceptionError cretaing outfile 23 > >Error closing files 01tajimacorrection/Filesjava/lang/Objectjava/lang/Exception(Ljava/lang/String;)V(Ljava/io/Reader;)Vjavax/swing/JOptionPaneshowMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)V nextToken&(Ljava/lang/String;)Ljava/lang/String;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString()Ljava/lang/String;(Ljava/io/Writer;)Vflushclose!'()*+*,-./0123456Y**+*,7$% &'8 9:;*<*=>6|,*Y**Y* L   ! 7+,/!-".+18" ?@,9:ABC>6XY*L*YY+**Y* L  JM75 6;7J;M9N:W=8  >DEN FGX9:ABH>6** !* "*#*$ L%  7"ABCDHF G)J8 FG*9:AIJ6/*&7M8 9:KL6>*+&7 QR89:01MN6/* 7U8 9:OP6>*+ 7 YZ89:23QRPK M8zL<tajimacorrection/Hi.class13 " # $ %&' ( )* +,-seqsIpaiLtajimacorrection/Pai;hiArray[Ljava/math/BigDecimal;(ILtajimacorrection/Pai;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Hi;pSeqpPai getHiArray()[Ljava/math/BigDecimal;fillHi()Vi SourceFileHi.java   java/math/BigDecimal0 ./ 0 12tajimacorrection/Hijava/lang/Object(Ljava/lang/String;)Vtajimacorrection/PaigetOneDivIArrayadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;!  Y***,   /*  K**`*YS<*`%**d2*d2 Sױ$ &'((D'J+, K !PK M8h|``%tajimacorrection/MsOutputHeader.class19 $ % & '() * + ,-./seqI iterations()VCodeLineNumberTableLocalVariableTablethis!Ltajimacorrection/MsOutputHeader;getSeq()I getIterations readHeader(Ljava/io/BufferedReader;)VbrLjava/io/BufferedReader;lineLjava/lang/String;stLjava/util/StringTokenizer; Exceptions0 SourceFileMsOutputHeader.java  1 23java/util/StringTokenizer 4 536 78tajimacorrection/MsOutputHeaderjava/lang/Objectjava/io/IOExceptionjava/io/BufferedReaderreadLine()Ljava/lang/String;(Ljava/lang/String;)V nextTokenjava/lang/IntegerparseInt(Ljava/lang/String;)I!  E***  /*! /*& 6M+MY,N-W*-*-+W+W& *+,-. /+00152*664& !"#PK M8 tajimacorrection/MsSample.class1 M N O P QRS T U VWX YZ[ \] ^ _ `a M b cd e f ghisegsitesI positionsLjava/lang/String; sampleLines[Ljava/lang/String;sampleLinesMissings()VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/MsSample; getSegsites()I getPositions()Ljava/lang/String;getSampleLines()[Ljava/lang/String;(I)Ljava/lang/String;pos readSample(Ljava/io/BufferedReader;I)VibrLjava/io/BufferedReader;seqlinestLjava/util/StringTokenizer; ExceptionsjrandomizeSamplertmprNumberLjava/util/Random; putMissings(II)VxcoordycoordgetSampleLinesMissings checkcoords(II)CsymbolC SourceFile MsSample.java #$   !k l-java/util/StringTokenizer #m n-o pq nrjava/lang/Stringjava/util/Randoms tu #v wx "!java/lang/StringBuilder yz {|? y0 }- ~tajimacorrection/MsSamplejava/lang/Objectjava/io/IOExceptionjava/io/BufferedReaderreadLine(Ljava/lang/String;)V nextTokenjava/lang/IntegerparseInt(Ljava/lang/String;)I&(Ljava/lang/String;)Ljava/lang/String;java/lang/SystemcurrentTimeMillis()J(J)VnextInt(I)I substring(II)Ljava/lang/String;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toStringcharAt(I)C! !"! #$%< **&! "'  ()*+%/*&&' (),-%/*&*' ()./%/*&.' ().0%;*2&2'()123%yN+W+NY-:W* *G+NY-:W* * 6+N*-S+W&J68: ;<=(?/@4A>BDCOEWH`IeJmHsNxP'>Z4y()y56y7w8c9:;<=$%K YL=*/+*>*2:**2S*S**&& S VW X(Y4Z<VB]J^'4 >(?K() @@A >4BC%5Y*2*2`N*-S&b-c4d'*5()5D5E-?F/%/*&g' ()F0%;*2&k'()1GH%Y *2>& t v'* () D E IJKLPK M8]|??tajimacorrection/NminusI.class1D / 0 1 23 4 5 6 7 8 9 : ; < = >?@seqsI iNminusIArray[Ljava/math/BigDecimal;iNminusISquaredArray nminusIArray(I)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/NminusI;pSeqscalculateNminusI()ViinitializeArraysgetINminusIArray()[Ljava/math/BigDecimal;setINminusIArray([Ljava/math/BigDecimal;)VgetINminusISquaredArraysetINminusISquaredArraygetNminusIArraysetNminusIArray SourceFile NminusI.java "  $" +&java/math/BigDecimal  AB %& CB )& '( *( ,(   tajimacorrection/NminusIjava/lang/Objectsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiply! F **   !"]*<*Q*Y*YS**2Y S* *2*2 S!"*#A$V!\'V#]$"X"** ** ** * +,!- "%&/*0 '(>*+ 45)&/*8 *(>*+ <=+&/*@ ,(>*+ DE-.PK M8ӝ  tajimacorrection/Output.class1 D E F G H I J K LM NO NPQR DS T UV WX YZ [\ ]^ _` ab c Ndef ascSampleSizeIbwLjava/io/BufferedWriter;wt!Ltajimacorrection/ThetaWatterson;ttLtajimacorrection/ThetaTajima;vwt)Ltajimacorrection/VarianceThetaWatterson;vtt&Ltajimacorrection/VarianceThetaTajima;covarLtajimacorrection/Covariance;tajimaLtajimacorrection/TajimaD;(ILjava/io/BufferedWriter;Ltajimacorrection/ThetaWatterson;Ltajimacorrection/ThetaTajima;Ltajimacorrection/VarianceThetaWatterson;Ltajimacorrection/VarianceThetaTajima;Ltajimacorrection/Covariance;Ltajimacorrection/TajimaD;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Output;pAscSampleSizepBwpWtpTtpVwtpVttpCovarpTajima writeHeader()V Exceptionsg writeSample SourceFile Output.java .>  ! "# $% &' () *+ ,-XWatterson's theta Tajima's theta Variance W_theta Variance T_theta Covariance Tajima's Dh ij k>Watterson's theta corrected Tajima's theta corrected Variance W_theta corrected Variance T_theta corrected Covariance corrected Tajima's D correctedjava/lang/StringBuilder lmn op lq r spt upv wpx ypz {p |} ~>tajimacorrection/Outputjava/lang/Objectjava/io/IOExceptionjava/io/BufferedWriterwrite(Ljava/lang/String;)VnewLineappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;tajimacorrection/ThetaWattersongetWattersonTheta()Ljava/math/BigDecimal;-(Ljava/lang/Object;)Ljava/lang/StringBuilder;tajimacorrection/ThetaTajimagetTajimaTheta'tajimacorrection/VarianceThetaWattersongetVarianceWTheta$tajimacorrection/VarianceThetaTajimagetVarianceTThetatajimacorrection/Covariance getCovariancetajimacorrection/TajimaD getTajimadtoString()Ljava/lang/String;flush! !"#$%&'()*+,-./0 2***,*-***** 1*  !"#$%%+&1'2\ 2342526!27#28%29'2:)2;+2<-=>0i+** * * * 1*+,.#0*22 +34?@A>0z*Y******  * *15k7r8y92 z34?@BCPK M82{# # tajimacorrection/Pai.class1v O P Q RST U V W X YZ [ \ ] ^ _ ` a b c d e f g h ijkseqsI ascSampleSizepaiArray[Ljava/math/BigDecimal;paiSquaredArray oneDivIArray(II)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Pai;pSeqspAscSampleSizecalculateProbabilityAi()VidLjava/math/BigDecimal;nidndi probabilityAi fillArrays(ILjava/math/BigDecimal;)VinitializeArrayscalculateProbabilityParameterD(Ljava/math/BigDecimal;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; upperFact downerFactdenupperdownerprobabilityParametercalculateFactorial.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;begginingNumberfactorialNumber getPaiArray()[Ljava/math/BigDecimal; setPaiArray([Ljava/math/BigDecimal;)VgetPaiSquaredArraysetPaiSquaredArraygetOneDivIArraysetOneDivIArray SourceFilePai.java %/   8/java/math/BigDecimal0 %l %m 9: nB op1 qB 67 EF IF rB KF GH JH LH st AB ut !" #" $"tajimacorrection/Paijava/lang/Object(Ljava/lang/String;)V(I)Vadddivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;subtractmultiply intValueExact()IintValue! !"#"$" %&'Y***( ) *+,-./'+*YL=*`*t*YY* N*Y*dY* :*Y*Y* :- L+ LY + L*+u(6 "$%&!'9(W)s+z,-0%2)>9Y01W;21s314*+5167'7**,S*,,S*Y Y S(567:6<) 7*+747518/'^(**`**`**`(? @B'C) (*+9:'UYN,+YN4*+:*,:+, :*:: N-(* F HI"K)L0N7O?PHRSU)H)*;10#<17=1U*+U>1U?1 K@1AB')Y M+>,YM,(Y Z[!Z'^)*4)*+)C1 D1EF'/*(b) *+GH'>*+( fg)*+!"IF'/*(j) *+JH'>*+( no)*+#"KF'/*(r) *+LH'>*+( vw)*+$"MNPK M8)tajimacorrection/Pairwise.class1] 789 : ; < = > ? @ AB C D E F G AH IJKLseqIsampleLtajimacorrection/MsSample;piLjava/math/BigDecimal;(ILtajimacorrection/MsSample;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Pairwise;pSeqpSample calculatePi()Vcountip1seqsfactorccalculateAlleleFreq(CI)IalleleCjgetPi()Ljava/math/BigDecimal;setPi(Ljava/math/BigDecimal;)V SourceFile Pairwise.java %java/math/BigDecimal0 M    N OP QRS TU ,- 12 VP WP 34 XYZ [\tajimacorrection/Pairwisejava/lang/Object(Ljava/lang/String;)V(I)Vsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;divide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/MsSample getSegsites()ImultiplyaddgetSampleLines(I)Ljava/lang/String;java/lang/StringcharAt(I)C!j**Y**,  !"#$%&YLY*MYN,,Y  N66* R*1 6Y:, L** +YY+ -2 ! "#%2'5(D)N*Y+c,(/HY4&8[' ! ()v*5_+,-*>6**245"4(84* !*./*'(&%012/*<  !34>*+ @A !56PK M8uztajimacorrection/Sigma.class1N 1 2 34 5 6 78 9 : ;<= > ? @ AB ? C DEFseqsIpaiLtajimacorrection/Pai;hiLtajimacorrection/Hi;betaLtajimacorrection/Beta;sigmaiiLtajimacorrection/Sigmaii;sigmaijLtajimacorrection/Sigmaij;(ILtajimacorrection/Pai;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Sigma;pSeqspPailaunchSigmaRelatedClasses()V SourceFile Sigma.java $.  tajimacorrection/Hi $%  G.tajimacorrection/Beta $H  I.tajimacorrection/Sigmaiijava/math/BigDecimal $J $K ! L.tajimacorrection/Sigmaij "# M.tajimacorrection/Sigmajava/lang/ObjectfillHi(ILtajimacorrection/Hi;)V fillBetaArray(I)VE(Ljava/math/BigDecimal;Ltajimacorrection/Hi;Ltajimacorrection/Beta;)VcalculateSigmaiiArraycalculateSigmaijArray! !"#$%&Y***,' ( )*+,-.&*Y****Y** * * Y Y*** **Y Y*** *'& #$'-(4+R,Y/w0~1( )*/0PK M8~gtajimacorrection/Sigmaii.class1i ? @ A B CD EF G H I J K L MN OP QR S T UV WXYseqsLjava/math/BigDecimal;hiLtajimacorrection/Hi;betaLtajimacorrection/Beta; sigmaiiArray[Ljava/math/BigDecimal;E(Ljava/math/BigDecimal;Ltajimacorrection/Hi;Ltajimacorrection/Beta;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Sigmaii;pSeqspHipBetacalculateSigmaiiArray()ViIhalfDcalculateSigmaiiCase1(I)Ljava/math/BigDecimal;omegacalculateSigmaiiCase2tempcalculateSigmaiiCase3 getSigmaii()[Ljava/math/BigDecimal; setSigmaii([Ljava/math/BigDecimal;)Vomegaii SourceFile Sigmaii.java "-    Z[java/math/BigDecimal :;2 "\ ]^ _` 89 23 53 730a b9c d9 ef "g hf1 !tajimacorrection/Sigmaiijava/lang/Object intValueExact()I(Ljava/lang/String;)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal; doubleValue()Dtajimacorrection/Beta getBetaArraytajimacorrection/Hi getHiArraysubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;(I)Vmultiply! !"#$l**+*,*-% &*'()*+,-$t***Y  H>*E'* * S*'* *S'* *S%. !#$$1%8&F'M([)b*m$s.& &M./t'($P0123$^Y M*`2M,%1 35& '(./ 453$vY M**2*2M*YN,- Y MY YY N,-M,%9 <&>6@KBnEtG&*v'(v./ l46@673$=Y MY YY M*2,M,%K M-N;P& ='(=./ 3489$/*%T& '(:;$>*+% XY&'(<!=>PK M8v#  tajimacorrection/Sigmaij.class1m C D E F G# H I J K L MNO P QR ST U VW X QE YZ [\]seqsLjava/math/BigDecimal;hiLtajimacorrection/Hi;betaLtajimacorrection/Beta;sigmaij[[Ljava/math/BigDecimal;E(Ljava/math/BigDecimal;Ltajimacorrection/Hi;Ltajimacorrection/Beta;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/Sigmaij;pSeqspHipBetacalculateSigmaijArray()ViIjcalculateSigmaijCase1(I)Ljava/math/BigDecimal;omegacalculateSigmaijCase2(II)Ljava/math/BigDecimal;temptemp2temp3calculateSigmaijCase3 getSigmaij()[[Ljava/math/BigDecimal; setSigmaij([[Ljava/math/BigDecimal;)Vomegaij SourceFile Sigmaij.java $/   ! ^_ >? <= 34 67 ;7 "#java/math/BigDecimal0 $`a bc de2 fgh ic $j ke1 letajimacorrection/Sigmaijjava/lang/Object intValueExact()I(Ljava/lang/String;)Vtajimacorrection/Beta getBetaArray()[Ljava/math/BigDecimal;subtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;divide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/Hi getHiArray(I)Vaddmultiply! !"#$%&l**+*,*-' (*)*+,-!./&***<*`=*o`**2* S<`**2* S`**2* S* 2* 22Sw'6 !##$2%?&O'\(m)z*,$#0( 'w0121)*34&5 YM*`2*2M, YM,'3 5"638( 5)*501 +567&iۻ YN**2*2N* Y:-:**2*2N* Y:-:*2*`2 Y: Y Y YN-N-'. < ?&A7CBFaHrJ}MPSU(H)*0121 578ri96:;7&` YN*2*`2N- YN Y Y Y:-N-'Y ["\3^W`^b(4`)*`01`21 V5W 8<=&/* 'f( )*>?&>*+ ' jk()*@#ABPK M82Mgcc'tajimacorrection/TajimaCorrection.class1 Hz{ | } ~ z              z     "z " % % ( ( + + . . 1 1 4 4 7 " 7 ; 7  ? ? ?  E()VCodeLineNumberTableLocalVariableTablethis#Ltajimacorrection/TajimaCorrection;main'(Ljava/lang/String;Ljava/lang/String;)VsampleLtajimacorrection/MsSample;wt!Ltajimacorrection/ThetaWatterson;ttLtajimacorrection/ThetaTajima;atLtajimacorrection/ThetaAverage;vwt)Ltajimacorrection/VarianceThetaWatterson;vtt&Ltajimacorrection/VarianceThetaTajima;covLtajimacorrection/Covariance;tajimaLtajimacorrection/TajimaD;outputLtajimacorrection/Output;iIfilesLtajimacorrection/Files;header!Ltajimacorrection/MsOutputHeader; ascSampleSizepaiLtajimacorrection/Pai;nminusiLtajimacorrection/NminusI;coefsLtajimacorrection/Coefficients;sigmaLtajimacorrection/Sigma;exLjava/lang/Exception;infileLjava/lang/String; dSampleSize SourceFileTajimaCorrection.java IJtajimacorrection/Files IQ J Jtajimacorrection/MsOutputHeader  tajimacorrection/Pai I Jtajimacorrection/NminusI I Jtajimacorrection/Coefficients I Jtajimacorrection/Sigma I J  java/lang/StringBuildersample  tajimacorrection/MsSample tajimacorrection/ThetaWatterson I Jtajimacorrection/ThetaTajima I Jtajimacorrection/ThetaAverage I J'tajimacorrection/VarianceThetaWatterson I J$tajimacorrection/VarianceThetaTajima I Jtajimacorrection/Covariance Jtajimacorrection/TajimaD I Jjava/math/BigDecimal0.000000 I tajimacorrection/Output I J J Jjava/lang/Exception J!tajimacorrection/TajimaCorrectionjava/lang/Object openInfile openOutfilegetBr()Ljava/io/BufferedReader; readHeader(Ljava/io/BufferedReader;)Vjava/lang/IntegervalueOf'(Ljava/lang/String;)Ljava/lang/Integer;intValue()IgetSeq(II)VcalculateProbabilityAi(I)VcalculateNminusI5(IILtajimacorrection/Pai;Ltajimacorrection/NminusI;)VcalculateCoefs(ILtajimacorrection/Pai;)VlaunchSigmaRelatedClasses getIterationsjava/lang/SystemoutLjava/io/PrintStream;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder;toString()Ljava/lang/String;java/io/PrintStreamprintln(Ljava/lang/String;)V readSample(Ljava/io/BufferedReader;I)V?(IILtajimacorrection/MsSample;Ltajimacorrection/Coefficients;)VcalculateWattersonTheta>(ILtajimacorrection/MsSample;Ltajimacorrection/Coefficients;)VcalculateTajimaTheta(ILtajimacorrection/ThetaWatterson;Ltajimacorrection/ThetaTajima;Ltajimacorrection/MsSample;Ltajimacorrection/Pai;Ltajimacorrection/Sigma;I)VcalculateThetaAverageq(IILtajimacorrection/Pai;Ltajimacorrection/Coefficients;Ltajimacorrection/Sigma;Ltajimacorrection/ThetaAverage;)VcalculateVarianceWattersonTheta(IILtajimacorrection/Pai;Ltajimacorrection/NminusI;Ltajimacorrection/Coefficients;Ltajimacorrection/Sigma;Ltajimacorrection/ThetaAverage;)VcalculateVarianceTajimaThetacalculateCovariance(Ltajimacorrection/ThetaWatterson;Ltajimacorrection/ThetaTajima;Ltajimacorrection/VarianceThetaWatterson;Ltajimacorrection/VarianceThetaTajima;Ltajimacorrection/Covariance;)V getSegsitescalculateTajimaD setTajimad(Ljava/math/BigDecimal;)VgetBw()Ljava/io/BufferedWriter;(ILjava/io/BufferedWriter;Ltajimacorrection/ThetaWatterson;Ltajimacorrection/ThetaTajima;Ltajimacorrection/VarianceThetaWatterson;Ltajimacorrection/VarianceThetaTajima;Ltajimacorrection/Covariance;Ltajimacorrection/TajimaD;)V writeHeader writeSample closeFilesprintStackTrace!GHIJK3*L M NO PQK_ ˻Y*+M,,YN-, + 6 Y- :Y- :Y- :Y- :6  -8Y  !"Y#:  ,- $%Y-  &:  '(Y-  ):  *+Y-    ,:  -.Y-  /:01Y-  2:34Y-  5:67Y  8: 9 :;Y<=>?Y,@  A: BC ,DM,FEL*% &'*+".+/:0?1L2Q3d4i5x6}89;<>?@ABCEF!G:H?JXK]MpNOQRS8UXVWZM RS TU VW XY Z[:~\]X`^_pH`abc>de fghi+je:klLvmnd^opxJqrstuvwvxyPK M8|"Z Z tajimacorrection/TajimaD.class1 FGH I J K L M N O PQ RS TU VW X Y Z [ \ ]^ _` a b cd e fghwt!Ltajimacorrection/ThetaWatterson;ttLtajimacorrection/ThetaTajima;vwt)Ltajimacorrection/VarianceThetaWatterson;vtt&Ltajimacorrection/VarianceThetaTajima;covarLtajimacorrection/Covariance;tajimadLjava/math/BigDecimal;(Ltajimacorrection/ThetaWatterson;Ltajimacorrection/ThetaTajima;Ltajimacorrection/VarianceThetaWatterson;Ltajimacorrection/VarianceThetaTajima;Ltajimacorrection/Covariance;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/TajimaD;pWtpTtpVwtpVttpCovarcalculateTajimaD()Vtemp getTajimad()Ljava/math/BigDecimal; setTajimad(Ljava/math/BigDecimal;)Vsqrt/(Ljava/math/BigDecimal;I)Ljava/math/BigDecimal;ASCALEIx0x1 SourceFile TajimaD.java *7java/math/BigDecimal0 *i ()  ! "# $% &'j k:l m: no2p q: ro so ;< 9: =>t u:v w: xy z{| =} *~ tajimacorrection/TajimaDjava/lang/Object(Ljava/lang/String;)V'tajimacorrection/VarianceThetaWattersongetVarianceWTheta$tajimacorrection/VarianceThetaTajimagetVarianceTThetaadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimacorrection/Covariance getCovariancemultiplysubtracttajimacorrection/ThetaTajimagetTajimaThetatajimacorrection/ThetaWattersongetWattersonThetadivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal; doubleValue()Djava/lang/Math(D)D(D)Vequals(Ljava/lang/Object;)Z! !"#$%&'()*+,-**Y*+*,*-* * -" &!,".>-/0-1-2!-3#-4%-5'67,Z** * Y* ****L*+*-%+&8'J)Y+.Z/0J8)9:,/*-.. /0;<,>*+- 23./0() =>,FYMY*N,-&-M*,N-, N-YN--"6 79!:#;+<1=D@.*F?)F@A <B)-C)DEPK M8ӄ2//#tajimacorrection/ThetaAverage.class1 &^_` a %b %c %d %e %f %g %h %i %j kl %m %n %o %p %q %r %s t u vw x yz {| y} ~  % %  v %seqsIwt!Ltajimacorrection/ThetaWatterson;ttLtajimacorrection/ThetaTajima;sampleLtajimacorrection/MsSample;paiLtajimacorrection/Pai;sigmaLtajimacorrection/Sigma; ascSampleSize averageThetaLjava/math/BigDecimal; aThetaSquared aThetaDivI[Ljava/math/BigDecimal;(ILtajimacorrection/ThetaWatterson;Ltajimacorrection/ThetaTajima;Ltajimacorrection/MsSample;Ltajimacorrection/Pai;Ltajimacorrection/Sigma;I)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/ThetaAverage;pSeqspWtpTtpSamplepPaipSigma pAscSamplecalculateThetaAverage()V operateThetai thetaSquaredjfirstSum secondSumtemptemp2thetaSquaredCorrectedgetAverageTheta()Ljava/math/BigDecimal;setAverageTheta(Ljava/math/BigDecimal;)VgetAThetaSquaredsetAThetaSquared getAThetaDivI()[Ljava/math/BigDecimal; setAThetaDivI([Ljava/math/BigDecimal;)V SourceFileThetaAverage.java 9Hjava/math/BigDecimal0 9 45 65 '( )* +, -. /0 12 3( S TU IH KH QH Z[ XY RS 9  Y    Y  WU VS Y 78tajimacorrection/ThetaAveragejava/lang/Object(Ljava/lang/String;)Vtajimacorrection/ThetaWattersongetWattersonTheta(I)Vdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/PaigetOneDivIArrayadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;tajimacorrection/SigmasigmaijLtajimacorrection/Sigmaij;tajimacorrection/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;sigmaiiLtajimacorrection/Sigmaii;tajimacorrection/Sigmaii getSigmaiimultiplytajimacorrection/MsSample getSegsites()Isubtract getPaiArray!%& '()*+,-./0123(456578 9:;F**Y*Y**,*- * * * * <. !#"(#-$3%9&?'E(=RF>?F@(FA*FB,FC.FD0FE2FF(GH;B***</ 24= >?IH;F* ****<*!**YSݱ<89;<'=?<E?=&J(F>?KH;YLYMYNY:6*b* 2N+-L6*?* 22:* 2:,M++L*Y* Y*  **!Y* " **!+, <RB CEF)H5I@JFKRLYMkNrOPKHTVWXZ=HIEL(,hJ(>? M5N5O5)P5QH;+YLYMYNY:6** 2* #2N+-L6*s/* 22* #2* #2:,* 2* #2* #2:,MZ++L*Y* Y*  **!Y* " **!+, <R] ^`a)c5dMeSf_gfhijkfcoqrs*u=HVyL(,J(+>? !M5N5 O5)P5RS;/*<x= >?TU;>*+< |}=>?45VS;/*<= >?WU;>*+< =>?65XY;/*$<= >?Z[;>*+$< =>?78\]PK M8Ku u "tajimacorrection/ThetaTajima.class1u FGH I J K L M N OPQ R S T UV W X Y Z[ \] ^ _ ` a b cdeseqsIsampleLtajimacorrection/MsSample;coefsLtajimacorrection/Coefficients; tajimaThetaLjava/math/BigDecimal; tThetaSquared tThetaDivI[Ljava/math/BigDecimal;>(ILtajimacorrection/MsSample;Ltajimacorrection/Coefficients;)VCodeLineNumberTableLocalVariableTablethisLtajimacorrection/ThetaTajima;pSeqspSamplepCoefscalculateTajimaTheta()VpiLtajimacorrection/Pairwise; operateThetaigetTajimaTheta()Ljava/math/BigDecimal;setTajimaTheta(Ljava/math/BigDecimal;)VgetTThetaSquaredsetTThetaSquared getTThetaDivI()[Ljava/math/BigDecimal; setTThetaDivI([Ljava/math/BigDecimal;)V SourceFileThetaTajima.java *5java/math/BigDecimal0 *f %& '&  !" #$g hitajimacorrection/Pairwise *j k5 l; *m1 no po <=q r; :;2 st 85 ?= BC @A ()tajimacorrection/ThetaTajimajava/lang/Object(Ljava/lang/String;)Vtajimacorrection/MsSample getSegsites()I(ILtajimacorrection/MsSample;)V calculatePigetPi(I)Vsubtract.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiplytajimacorrection/Coefficients getTajimaCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;! !"#$%&'&() *+,.**Y*Y**,*- -#(- .*./0.1 .2".3$45,* h Y** L+ *+Y*Y*Y** *Y***Y-"# $%'N(o,s-..U67/085,C*****<*!**YSݱ-134$5<4B7.&9 C/0:;,/*-:. /0<=,>*+- >?./0%&>;,/*-B. /0?=,>*+- FG./0'&@A,/*-J. /0BC,>*+- NO./0()DEPK M8h%tajimacorrection/ThetaWatterson.class1g ABC D E F G H I J KL M NO P Q R ST U V W X YZ[seqsI ascSampleSizesampleLtajimacorrection/MsSample;coefsLtajimacorrection/Coefficients;wattersonThetaLjava/math/BigDecimal; wThetaSquared wThetaDivI[Ljava/math/BigDecimal;?(IILtajimacorrection/MsSample;Ltajimacorrection/Coefficients;)VCodeLineNumberTableLocalVariableTablethis!Ltajimacorrection/ThetaWatterson;pSeqspAscSampleSizepSamplepCoefscalculateWattersonTheta()V operateThetaigetWattersonTheta()Ljava/math/BigDecimal;setWattersonTheta(Ljava/math/BigDecimal;)VgetWThetaSquaredsetWThetaSquared getWThetaDivI()[Ljava/math/BigDecimal; setWThetaDivI([Ljava/math/BigDecimal;)V SourceFileThetaWatterson.java &2java/math/BigDecimal0 &\ !" #"     ] ^_ &`a b6 cd 78 32 561 ef :8 => ;< $%tajimacorrection/ThetaWattersonjava/lang/Object(Ljava/lang/String;)Vtajimacorrection/MsSample getSegsites()I(I)Vtajimacorrection/CoefficientsgetWattersonCoefmultiply.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;divide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;! !"#"$% &'(4**Y*Y***- * )"#( -!3"*44+,4-4.4/40 12(|B* *Y* * ***Y)% &&**+A,* B+,32(C*****<*!**Y Sݱ)/12$3<2B5*&4C+,56(/*)8* +,78(>*+) <=*+,!"96(/*)@* +,:8(>*+) DE*+,#";<(/*)H* +,=>(>*+) LM*+,$%?@PK M8l+U U *tajimacorrection/VarianceThetaTajima.class1 $TUV W #X #Y #Z #[ #\ #] #^ #_ #` a #b #c #de f gh #i #j klm n op qr st uv qw xy gz o{ u|}~ ascSampleSizeIseqspaiLtajimacorrection/Pai;nminusiLtajimacorrection/NminusI;coefsLtajimacorrection/Coefficients;sigmaLtajimacorrection/Sigma;atLtajimacorrection/ThetaAverage;varianceTThetaLjava/math/BigDecimal;(IILtajimacorrection/Pai;Ltajimacorrection/NminusI;Ltajimacorrection/Coefficients;Ltajimacorrection/Sigma;Ltajimacorrection/ThetaAverage;)VCodeLineNumberTableLocalVariableTablethis&Ltajimacorrection/VarianceThetaTajima;pAscSampleSizepSeqspPaipNminusipCoefspSigmapAtcalculateVarianceTajimaTheta()VifirstSum secondSumcalculateSecondSum(I)Ljava/math/BigDecimal;jtempcalculateSecondSumCorrectedcalculateFirstSumcalculateFirstSumCorrectedgetVarianceTTheta()Ljava/math/BigDecimal;setVarianceTTheta(Ljava/math/BigDecimal;)V SourceFileVarianceThetaTajima.java 4Cjava/math/BigDecimal0 4 23 %& '& () *+ ,- ./ 01 LH GH MH KH2  O PQ NO O1      $tajimacorrection/VarianceThetaTajimajava/lang/Object(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiplytajimacorrection/ThetaAveragegetAThetaSquaredtajimacorrection/Coefficients getTajimaCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/NminusIgetINminusIArray()[Ljava/math/BigDecimal;tajimacorrection/SigmasigmaijLtajimacorrection/Sigmaij;tajimacorrection/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;tajimacorrection/Pai getPaiArraysigmaiiLtajimacorrection/Sigmaii;tajimacorrection/Sigmaii getSigmaii getAThetaDivIgetINminusISquaredArraygetPaiSquaredArray!#$%&'&()*+,-./01234569**Y***-* * * * 7*  ! "&#,$2%8&8R99:9;&9<&9=)9>+9?-9@/9A1BC6'YLYM>*;*+* L,*M+*L,*M,Y* M*+,*** * **Y7:) *+,%-/.<0F1P+V4n6w78:8*@D&9: E3F3GH6IYM`>*4,* 2* 2* 22M,7= >?A>GB8*9I&I9:ID& ?J3KH6aYM`>*L,*2*2* 2* 2* 22M,7F GHYG_K8*QI&a9:aD& WJ3LH65* * 2M,* 2M,* !2M,7OP%Q3S8 59:5D&J3MH6M*"2* * 2M,* 2*2M,* !2M,7W#X=YK[8 M9:MD&#*J3NO6/*7_8 9:PQ6>*+7 cd89:23RSPK M8wM? ? -tajimacorrection/VarianceThetaWatterson.class1 !NOP Q R S T U V W X Y Z [ \ ]^ _ `a b c def g hi jk lm hn op `q lrst ascSampleSizeIseqspaiLtajimacorrection/Pai;coefsLtajimacorrection/Coefficients;sigmaLtajimacorrection/Sigma;atLtajimacorrection/ThetaAverage;varianceWThetaLjava/math/BigDecimal;q(IILtajimacorrection/Pai;Ltajimacorrection/Coefficients;Ltajimacorrection/Sigma;Ltajimacorrection/ThetaAverage;)VCodeLineNumberTableLocalVariableTablethis)Ltajimacorrection/VarianceThetaWatterson;pAscSampleSizepSeqspPaipCoefspSigmapAtcalculateVarianceWattersonTheta()VifirstSum secondSumcalculateSecondSum(I)Ljava/math/BigDecimal;jtempcalculateSecondSumCorrectedcalculateFirstSumcalculateFirstSumCorrectedgetVarianceWTheta()Ljava/math/BigDecimal;setVarianceWTheta(Ljava/math/BigDecimal;)V SourceFileVarianceThetaWatterson.java /=java/math/BigDecimal0 /u -. "# $# %& '( )* +, FB vw AB GB EB2 xwy zI JK HI{ |I1 }~    'tajimacorrection/VarianceThetaWattersonjava/lang/Object(Ljava/lang/String;)Vadd.(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;multiplytajimacorrection/ThetaAveragegetAThetaSquaredtajimacorrection/CoefficientsgetWattersonCoefdivide0(Ljava/math/BigDecimal;II)Ljava/math/BigDecimal;tajimacorrection/SigmasigmaijLtajimacorrection/Sigmaij;tajimacorrection/Sigmaij getSigmaij()[[Ljava/math/BigDecimal;tajimacorrection/Pai getPaiArray()[Ljava/math/BigDecimal;sigmaiiLtajimacorrection/Sigmaii;tajimacorrection/Sigmaii getSigmaii getAThetaDivIgetPaiSquaredArray! !"#$#%&'()*+,-./013**Y***-* * * 2&  !&",#2$3H34536#37#38&39(3:*3;,<=1'YLYM>*;*+* L,* M+* L,* M,Y* M*+, *** * **Y2:' ()*%+/,<.F/P)V2n4w5673*@>#45 ?.@.AB11YM`>*,* 22 M,2: ;<);/>3*!C#1451># 'D.EB1IYM`>*4,*2*2* 22 M,2B CDACGF3*9C#I45I># ?D.FB1m'* * 2M,* 2 M,2JK%M3 '45'>#D.GB1?*2* * 2M,* 2*2 M,2Q#R=T3 ?45?>##D.HI1/*2X3 45JK1>*+2 \]345-.LMPK M8 AMETA-INF/PK M8+META-INF/MANIFEST.MFPK M8A@ascertainsample/PK M8AngraphicInterface/PK M8AtajimaPerlegen/PK M8Atajimacorrection/PK M8;! %ascertainsample/AscertainSample.classPK M8Qx??(ascertainsample/AscertainedOutfile.classPK M8LmM^ ^ 'jascertainsample/AscertainmentBias.classPK M8$ !ascertainsample/MsOutputHeader.classPK M8 `('ascertainsample/MsSample.classPK M8k X.ascertainsample/SubSamples.classPK M8yoGG"J3graphicInterface/Application.classPK M8o;;:graphicInterface/Controls.classPK M8*:)IAgraphicInterface/GraphicInterface$1.classPK M8G LL*+EgraphicInterface/GraphicInterface$10.classPK M8QLL*HgraphicInterface/GraphicInterface$11.classPK M8l"LL*SLgraphicInterface/GraphicInterface$12.classPK M87w2NN*OgraphicInterface/GraphicInterface$13.classPK M8dJJ)}RgraphicInterface/GraphicInterface$2.classPK M8L5)VgraphicInterface/GraphicInterface$3.classPK M8^)YgraphicInterface/GraphicInterface$4.classPK M8zJJ)]graphicInterface/GraphicInterface$5.classPK M8/)cagraphicInterface/GraphicInterface$6.classPK M8@'JJ)EegraphicInterface/GraphicInterface$7.classPK M8FJJ)hgraphicInterface/GraphicInterface$8.classPK M8 eJJ)glgraphicInterface/GraphicInterface$9.classPK M8秾ӑ::'ographicInterface/GraphicInterface.classPK M8>$$ΪtajimaPerlegen/Beta.classPK M8c -> > !)tajimaPerlegen/Coefficients.classPK M8lm m tajimaPerlegen/Covariance.classPK M8!Ye e "PtajimaPerlegen/DDistribution.classPK M8BTtajimaPerlegen/DSample.classPK M8ĕ1tajimaPerlegen/Files.classPK M8,æNtajimaPerlegen/Hi.classPK M8OBڊ#)tajimaPerlegen/MsOutputHeader.classPK M8 tajimaPerlegen/MsSample.classPK M8Qz]tajimaPerlegen/NminusI.classPK M8$γ tajimaPerlegen/Output.classPK M8?y*   tajimaPerlegen/Pai.classPK M8ZtajimaPerlegen/Pairwise.classPK M8VR tajimaPerlegen/Sigma.classPK M8l%tajimaPerlegen/Sigmaii.classPK M8+3 .tajimaPerlegen/Sigmaij.classPK M8r18tajimaPerlegen/TajimaD.classPK M8q<<#@tajimaPerlegen/TajimaPerlegen.classPK M8? !.XtajimaPerlegen/ThetaAverage.classPK M8$ XetajimaPerlegen/ThetaTajima.classPK M8FVV#ltajimaPerlegen/ThetaWatterson.classPK M85E (.rtajimaPerlegen/VarianceThetaTajima.classPK M8 +tajimaPerlegen/VarianceThetaWatterson.classPK M8e tajimaPerlegen/Window.classPK M8*..tajimacorrection/Beta.classPK M8T0W W #tajimacorrection/Coefficients.classPK M8{rJG G !tajimacorrection/Covariance.classPK M8}j? ? tajimacorrection/Files.classPK M8zL<tajimacorrection/Hi.classPK M8h|``%tajimacorrection/MsOutputHeader.classPK M8 tajimacorrection/MsSample.classPK M8]|??gtajimacorrection/NminusI.classPK M8ӝ  tajimacorrection/Output.classPK M82{# # "tajimacorrection/Pai.classPK M8)}tajimacorrection/Pairwise.classPK M8uztajimacorrection/Sigma.classPK M8~gtajimacorrection/Sigmaii.classPK M8v#  tajimacorrection/Sigmaij.classPK M82Mgcc'tajimacorrection/TajimaCorrection.classPK M8|"Z Z "tajimacorrection/TajimaD.classPK M8ӄ2//#E,tajimacorrection/ThetaAverage.classPK M8Ku u ";tajimacorrection/ThetaTajima.classPK M8h%jEtajimacorrection/ThetaWatterson.classPK M8l+U U *oNtajimacorrection/VarianceThetaTajima.classPK M8wM? ? - \tajimacorrection/VarianceThetaWatterson.classPKIIXh