diff --git a/bob/bio/base/__init__.py b/bob/bio/base/__init__.py index adf87109095c9c436917098995b9252c7bef93d7..a81db5cd825633417b6f1a2e24a37380e4120bd0 100644 --- a/bob/bio/base/__init__.py +++ b/bob/bio/base/__init__.py @@ -1,7 +1,12 @@ from .utils import * from . import database -from . import algorithm +from . import preprocessor from . import extractor +from . import algorithm +from . import tools +from . import grid # only one file, not complete directory + +from . import test diff --git a/bob/bio/base/database/DatabaseFileList.py b/bob/bio/base/database/DatabaseFileList.py new file mode 100644 index 0000000000000000000000000000000000000000..a423442521c9305f94525aeda9a844f5691e2e3b --- /dev/null +++ b/bob/bio/base/database/DatabaseFileList.py @@ -0,0 +1,83 @@ +#!/usr/bin/env python +# vim: set fileencoding=utf-8 : +# @author: Manuel Guenther <Manuel.Guenther@idiap.ch> +# @date: Wed Oct 3 10:31:51 CEST 2012 +# +# Copyright (C) 2011-2012 Idiap Research Institute, Martigny, Switzerland +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, version 3 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + +from .DatabaseBob import DatabaseBobZT + +class DatabaseFileList (DatabaseBobZT): + """This class should be used whenever you have an :py:class:`bob.db.verification.filelist.Database``.""" + + def __init__( + self, + database, # The bob database that is used + **kwargs # The default parameters of the base class + ): + """ + Parameters of the constructor of this database: + + database : :py:class:`bob.db.verification.filelist.Database` + The database that provides the actual interface + + kwargs + Keyword arguments directly passed to the :py:class:`DatabaseBobZT` base class constructor + """ + + DatabaseBobZT.__init__( + self, + database = database, + **kwargs + ) + + + def all_files(self, groups = ['dev']): + """Returns all File objects of the database for the current protocol. If the current protocol is 'None' (a string), None (NoneType) will be used instead""" + files = self.database.objects(protocol = self.protocol if self.protocol != 'None' else None, groups = groups, **self.all_files_options) + + # add all files that belong to the ZT-norm + for group in groups: + if group == 'world': continue + if self.database.implements_zt(protocol = self.protocol if self.protocol != 'None' else None, groups = group): + files += self.database.tobjects(protocol = self.protocol if self.protocol != 'None' else None, groups = group, model_ids = None) + files += self.database.zobjects(protocol = self.protocol if self.protocol != 'None' else None, groups = group, **self.m_z_probe_options) + return self.sort(files) + + + def uses_probe_file_sets(self): + """Defines if, for the current protocol, the database uses several probe files to generate a score.""" + return False + + + def model_ids(self, group = 'dev'): + """Returns the model ids for the given group and the current protocol.""" + return sorted(self.database.model_ids(protocol = self.protocol if self.protocol != 'None' else None, groups = group)) + + + def client_id_from_model_id(self, model_id, group = 'dev'): + """Returns the client id for the given model id.""" + return self.database.get_client_id_from_model_id(model_id, groups = group, protocol = self.protocol if self.protocol != 'None' else None) + + + def client_id_from_t_model_id(self, t_model_id, group = 'dev'): + """Returns the client id for the given T-model id.""" + return self.database.get_client_id_from_tmodel_id(t_model_id, groups=group, protocol=self.protocol if self.protocol != 'None' else None) + + + def t_model_ids(self, group = 'dev'): + """Returns the T-Norm model ids for the given group and the current protocol.""" + return sorted(self.database.tmodel_ids(protocol = self.protocol if self.protocol != 'None' else None, groups = group)) diff --git a/bob/bio/base/database/__init__.py b/bob/bio/base/database/__init__.py index 4be83f81fd87a662ebeb2a93be4fc6b149a9b5ed..e40749ee493def073b3bad13699846e9596112b5 100644 --- a/bob/bio/base/database/__init__.py +++ b/bob/bio/base/database/__init__.py @@ -1,5 +1,6 @@ from .Database import Database, DatabaseZT from .DatabaseBob import DatabaseBob, DatabaseBobZT +from .DatabaseFileList import DatabaseFileList # gets sphinx autodoc done right - don't remove it __all__ = [_ for _ in dir() if not _.startswith('_')] diff --git a/bob/bio/base/grid.py b/bob/bio/base/grid.py index e9170a11668441ece86da4f903a057a48a96bae4..aba9ca30950fa1a429d283cfb317fe52bcea7820 100644 --- a/bob/bio/base/grid.py +++ b/bob/bio/base/grid.py @@ -32,7 +32,7 @@ PREDEFINED_QUEUES = { 'Week' : {'queue' : 'q1wm', 'memfree' : '32G', 'pe_opt' : 'pe_mth 4', 'hvmem' : '8G'} } -class GridParameters: +class Grid: """This class is defining the options that are required to submit parallel jobs to the SGE grid. """ diff --git a/bob/bio/base/script/verify.py b/bob/bio/base/script/verify.py index 577064c6c176643f09db7a58a07f9df87fccd8b2..4df60e4ee3790cacba340e912d4ba6b4b7aeca56 100644 --- a/bob/bio/base/script/verify.py +++ b/bob/bio/base/script/verify.py @@ -34,7 +34,7 @@ def parse_arguments(command_line_parameters, exclude_resources_from = []): skips = ['preprocessing', 'extractor-training', 'extraction', 'projector-training', 'projection', 'enroller-training', 'enrollment', 'score-computation', 'concatenation', 'calibration']) -def add_jobs(args): +def add_jobs(args, submitter = None): """Adds all (desired) jobs of the tool chain to the grid, or to the local list to be executed.""" # collect the job ids @@ -50,8 +50,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('preprocess',)) else: - job_ids['preprocessing'] = self.submit_grid_job( - 'preprocess', + job_ids['preprocessing'] = submitter.submit( + '--sub-task preprocess', number_of_parallel_jobs = args.grid.number_of_preprocessing_jobs, dependencies = deps, **args.grid.preprocessing_queue) @@ -62,8 +62,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('train-extractor',)) else: - job_ids['extractor-training'] = self.submit_grid_job( - 'train-extractor', + job_ids['extractor-training'] = submitter.submit( + '--sub-task train-extractor', name = 'train-f', dependencies = deps, **args.grid.training_queue) @@ -74,8 +74,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('extract',)) else: - job_ids['extraction'] = self.submit_grid_job( - 'extract', + job_ids['extraction'] = submitter.submit( + '--sub-task extract', number_of_parallel_jobs = args.grid.number_of_extraction_jobs, dependencies = deps, **args.grid.extraction_queue) @@ -86,8 +86,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('train-projector',)) else: - job_ids['projector_training'] = self.submit_grid_job( - 'train-projector', + job_ids['projector_training'] = submitter.submit( + '--sub-task train-projector', name="train-p", dependencies = deps, **args.grid.training_queue) @@ -98,8 +98,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('project',)) else: - job_ids['projection'] = self.submit_grid_job( - 'project', + job_ids['projection'] = submitter.submit( + '--sub-task project', number_of_parallel_jobs = args.grid.number_of_projection_jobs, dependencies = deps, **args.grid.projection_queue) @@ -110,8 +110,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('train-enroller',)) else: - job_ids['enroller_training'] = self.submit_grid_job( - 'train-enroller', + job_ids['enroller_training'] = submitter.submit( + '--sub-task train-enroller', name = "train-e", dependencies = deps, **args.grid.training_queue) @@ -129,8 +129,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('enroll', group, 'N')) else: - job_ids['enroll_%s_N'%group] = self.submit_grid_job( - 'enroll --group %s --model-type N'%group, + job_ids['enroll_%s_N'%group] = submitter.submit( + '--sub-task enroll --group %s --model-type N'%group, name = "enr-N-%s"%group, number_of_parallel_jobs = args.grid.number_of_enrollment_jobs, dependencies = deps, @@ -141,8 +141,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('enroll', group, 'T')) else: - job_ids['enroll_%s_T'%group] = self.submit_grid_job( - 'enroll --group %s --model-type T'%group, + job_ids['enroll_%s_T'%group] = submitter.submit( + '--sub-task enroll --group %s --model-type T'%group, name = "enr-T-%s"%group, number_of_parallel_jobs = args.grid.number_of_enrollment_jobs, dependencies = deps, @@ -154,8 +154,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('compute-scores', group, None, 'A')) else: - job_ids['score_%s_A'%group] = self.submit_grid_job( - 'compute-scores --group %s --score-type A'%group, + job_ids['score_%s_A'%group] = submitter.submit( + '--sub-task compute-scores --group %s --score-type A'%group, name = "score-A-%s"%group, number_of_parallel_jobs = args.grid.number_of_scoring_jobs, dependencies = enroll_deps_n[group], @@ -169,22 +169,22 @@ def add_jobs(args): jobs_to_execute.append(('compute-scores', group, None, 'D')) jobs_to_execute.append(('compute-scores', group, None, 'Z')) else: - job_ids['score_%s_B'%group] = self.submit_grid_job( - 'compute-scores --group %s --score-type B'%group, + job_ids['score_%s_B'%group] = submitter.submit( + '--sub-task compute-scores --group %s --score-type B'%group, name = "score-B-%s"%group, number_of_parallel_jobs = args.grid.number_of_scoring_jobs, dependencies = enroll_deps_n[group], **args.grid.scoring_queue) - job_ids['score_%s_C'%group] = self.submit_grid_job( - 'compute-scores --group %s --score-type C'%group, + job_ids['score_%s_C'%group] = submitter.submit( + '--sub-task compute-scores --group %s --score-type C'%group, name = "score-C-%s"%group, number_of_parallel_jobs = args.grid.number_of_scoring_jobs, dependencies = enroll_deps_t[group], **args.grid.scoring_queue) - job_ids['score_%s_D'%group] = self.submit_grid_job( - 'compute-scores --group %s --score-type D'%group, + job_ids['score_%s_D'%group] = submitter.submit( + '--sub-task compute-scores --group %s --score-type D'%group, name = "score-D-%s"%group, number_of_parallel_jobs = args.grid.number_of_scoring_jobs, dependencies = enroll_deps_t[group], @@ -192,8 +192,8 @@ def add_jobs(args): # compute zt-norm score_deps[group] = [job_ids['score_%s_A'%group], job_ids['score_%s_B'%group], job_ids['score_%s_C'%group], job_ids['score_%s_D'%group]] - job_ids['score_%s_Z'%group] = self.submit_grid_job( - 'compute-scores --group %s --score-type Z'%group, + job_ids['score_%s_Z'%group] = submitter.submit( + '--sub-task compute-scores --group %s --score-type Z'%group, name = "score-Z-%s"%group, dependencies = score_deps[group]) concat_deps[group].extend([job_ids['score_%s_B'%group], job_ids['score_%s_C'%group], job_ids['score_%s_D'%group], job_ids['score_%s_Z'%group]]) @@ -205,8 +205,8 @@ def add_jobs(args): if args.grid is None: jobs_to_execute.append(('concatenate', group)) else: - job_ids['concat_%s'%group] = self.submit_grid_job( - 'concatenate --group %s'%group, + job_ids['concat_%s'%group] = submitter.submit( + '--sub-task concatenate --group %s'%group, name = "concat-%s"%group, dependencies = concat_deps[group]) @@ -216,8 +216,8 @@ def add_jobs(args): jobs_to_execute.append(('calibrate',)) else: calib_deps = [job_ids['concat_%s'%g] for g in args.groups if 'concat_%s'%g in job_ids] - job_ids['calibrate'] = self.submit_grid_job( - 'calibrate', + job_ids['calibrate'] = submitter.submit( + '--sub-task calibrate', dependencies = calib_deps) @@ -230,7 +230,8 @@ def add_jobs(args): def execute(args): - """Run the desired job of the ZT tool chain that is specified on command line.""" + """Run the desired job of the tool chain that is specified on command line. + This job might be executed either in the grid, or locally.""" # the file selector object fs = tools.FileSelector.instance() @@ -341,12 +342,11 @@ def execute(args): # Test if the keyword was processed else: return False - raise ValueError("The given subtask '%s' could not be processed. THIS IS A BUG. Please report this to the authors." % args.sub_task) return True -def verify(args, command_line_parameters, external_dependencies = [], external_fake_job_id = 0): +def verify(args, command_line_parameters, external_fake_job_id = 0): """This is the main entry point for computing verification experiments. You just have to specify configurations for any of the steps of the toolchain, which are: -- the database @@ -362,17 +362,28 @@ def verify(args, command_line_parameters, external_dependencies = [], external_f # as the main entry point, check whether the sub-task is specified if args.sub_task is not None: # execute the desired sub-task - execute_grid_job(args) + execute(args) return {} else: # add jobs - retval = add_jobs(args) + submitter = tools.GridSubmission(args, command_line_parameters, first_fake_job_id = 0) if args.grid else None + retval = add_jobs(args, submitter) tools.write_info(args, command_line_parameters) - if args.grid: - pass + if args.grid is not None: + if args.grid.is_local() and args.run_local_scheduler: + if args.dry_run: + print ("Would have started the local scheduler to run the experiments with parallel jobs") + else: + # start the jman local deamon + submitter.execute_local() + return {} + + else: + # return job ids as a dictionary + return retval else: - # not in a grid, use default tool chain sequentially + # not in a grid, execute tool chain sequentially if args.timer: logger.info("- Timer: Starting timer") start_time = os.times() @@ -395,35 +406,6 @@ def verify(args, command_line_parameters, external_dependencies = [], external_f return {} - """ - else: - # no other parameter given, so deploy new jobs - - # get the name of this file - this_file = __file__ - if this_file[-1] == 'c': - this_file = this_file[0:-1] - - executor.write_info(command_line_parameters) - - # initialize the executor to submit the jobs to the grid - executor.set_common_parameters(calling_file = this_file, parameters = command_line_parameters, fake_job_id = external_fake_job_id) - - # add the jobs - job_ids = executor.add_jobs_to_grid(external_dependencies) - - if executor.m_grid.is_local() and args.run_local_scheduler: - if args.dry_run: - print ("Would have started the local scheduler to finally run the experiments with parallel jobs") - else: - # start the jman local deamon - executor.execute_local_deamon() - return {} - - else: - return job_ids - """ - def main(command_line_parameters = sys.argv): """Executes the main function""" try: diff --git a/bob/bio/base/test/__init__.py b/bob/bio/base/test/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..77d1ede44a3aed0ce4bfde00a6288787622a17c7 100644 --- a/bob/bio/base/test/__init__.py +++ b/bob/bio/base/test/__init__.py @@ -0,0 +1 @@ +from . import dummy diff --git a/bob/bio/base/test/data/atnt/models.lst b/bob/bio/base/test/data/atnt/models.lst new file mode 100644 index 0000000000000000000000000000000000000000..eeaa42baeedf51060b920b00dc53fa65d68eed20 --- /dev/null +++ b/bob/bio/base/test/data/atnt/models.lst @@ -0,0 +1,100 @@ +s3/9 3 3 +s3/2 3 3 +s3/4 3 3 +s3/5 3 3 +s3/7 3 3 +s4/9 4 4 +s4/2 4 4 +s4/4 4 4 +s4/5 4 4 +s4/7 4 4 +s7/9 7 7 +s7/2 7 7 +s7/4 7 7 +s7/5 7 7 +s7/7 7 7 +s8/9 8 8 +s8/2 8 8 +s8/4 8 8 +s8/5 8 8 +s8/7 8 8 +s9/9 9 9 +s9/2 9 9 +s9/4 9 9 +s9/5 9 9 +s9/7 9 9 +s13/9 13 13 +s13/2 13 13 +s13/4 13 13 +s13/5 13 13 +s13/7 13 13 +s15/9 15 15 +s15/2 15 15 +s15/4 15 15 +s15/5 15 15 +s15/7 15 15 +s18/9 18 18 +s18/2 18 18 +s18/4 18 18 +s18/5 18 18 +s18/7 18 18 +s19/9 19 19 +s19/2 19 19 +s19/4 19 19 +s19/5 19 19 +s19/7 19 19 +s22/9 22 22 +s22/2 22 22 +s22/4 22 22 +s22/5 22 22 +s22/7 22 22 +s23/9 23 23 +s23/2 23 23 +s23/4 23 23 +s23/5 23 23 +s23/7 23 23 +s25/9 25 25 +s25/2 25 25 +s25/4 25 25 +s25/5 25 25 +s25/7 25 25 +s28/9 28 28 +s28/2 28 28 +s28/4 28 28 +s28/5 28 28 +s28/7 28 28 +s30/9 30 30 +s30/2 30 30 +s30/4 30 30 +s30/5 30 30 +s30/7 30 30 +s31/9 31 31 +s31/2 31 31 +s31/4 31 31 +s31/5 31 31 +s31/7 31 31 +s32/9 32 32 +s32/2 32 32 +s32/4 32 32 +s32/5 32 32 +s32/7 32 32 +s35/9 35 35 +s35/2 35 35 +s35/4 35 35 +s35/5 35 35 +s35/7 35 35 +s37/9 37 37 +s37/2 37 37 +s37/4 37 37 +s37/5 37 37 +s37/7 37 37 +s38/9 38 38 +s38/2 38 38 +s38/4 38 38 +s38/5 38 38 +s38/7 38 38 +s40/9 40 40 +s40/2 40 40 +s40/4 40 40 +s40/5 40 40 +s40/7 40 40 diff --git a/bob/bio/base/test/data/atnt/probes.lst b/bob/bio/base/test/data/atnt/probes.lst new file mode 100644 index 0000000000000000000000000000000000000000..9423e365d09fc3fa51c3b2a0f0125cd59352281a --- /dev/null +++ b/bob/bio/base/test/data/atnt/probes.lst @@ -0,0 +1,100 @@ +s3/8 3 +s3/1 3 +s3/10 3 +s3/3 3 +s3/6 3 +s4/8 4 +s4/1 4 +s4/10 4 +s4/3 4 +s4/6 4 +s7/8 7 +s7/1 7 +s7/10 7 +s7/3 7 +s7/6 7 +s8/8 8 +s8/1 8 +s8/10 8 +s8/3 8 +s8/6 8 +s9/8 9 +s9/1 9 +s9/10 9 +s9/3 9 +s9/6 9 +s13/8 13 +s13/1 13 +s13/10 13 +s13/3 13 +s13/6 13 +s15/8 15 +s15/1 15 +s15/10 15 +s15/3 15 +s15/6 15 +s18/8 18 +s18/1 18 +s18/10 18 +s18/3 18 +s18/6 18 +s19/8 19 +s19/1 19 +s19/10 19 +s19/3 19 +s19/6 19 +s22/8 22 +s22/1 22 +s22/10 22 +s22/3 22 +s22/6 22 +s23/8 23 +s23/1 23 +s23/10 23 +s23/3 23 +s23/6 23 +s25/8 25 +s25/1 25 +s25/10 25 +s25/3 25 +s25/6 25 +s28/8 28 +s28/1 28 +s28/10 28 +s28/3 28 +s28/6 28 +s30/8 30 +s30/1 30 +s30/10 30 +s30/3 30 +s30/6 30 +s31/8 31 +s31/1 31 +s31/10 31 +s31/3 31 +s31/6 31 +s32/8 32 +s32/1 32 +s32/10 32 +s32/3 32 +s32/6 32 +s35/8 35 +s35/1 35 +s35/10 35 +s35/3 35 +s35/6 35 +s37/8 37 +s37/1 37 +s37/10 37 +s37/3 37 +s37/6 37 +s38/8 38 +s38/1 38 +s38/10 38 +s38/3 38 +s38/6 38 +s40/8 40 +s40/1 40 +s40/10 40 +s40/3 40 +s40/6 40 diff --git a/bob/bio/base/test/data/atnt/world.lst b/bob/bio/base/test/data/atnt/world.lst new file mode 100644 index 0000000000000000000000000000000000000000..0a526ead3d5e5d0930ed2234bd577161c30dfe2b --- /dev/null +++ b/bob/bio/base/test/data/atnt/world.lst @@ -0,0 +1,200 @@ +s1/9 1 +s1/2 1 +s1/4 1 +s1/5 1 +s1/7 1 +s1/8 1 +s1/1 1 +s1/10 1 +s1/3 1 +s1/6 1 +s2/9 2 +s2/2 2 +s2/4 2 +s2/5 2 +s2/7 2 +s2/8 2 +s2/1 2 +s2/10 2 +s2/3 2 +s2/6 2 +s5/9 5 +s5/2 5 +s5/4 5 +s5/5 5 +s5/7 5 +s5/8 5 +s5/1 5 +s5/10 5 +s5/3 5 +s5/6 5 +s6/9 6 +s6/2 6 +s6/4 6 +s6/5 6 +s6/7 6 +s6/8 6 +s6/1 6 +s6/10 6 +s6/3 6 +s6/6 6 +s10/9 10 +s10/2 10 +s10/4 10 +s10/5 10 +s10/7 10 +s10/8 10 +s10/1 10 +s10/10 10 +s10/3 10 +s10/6 10 +s11/9 11 +s11/2 11 +s11/4 11 +s11/5 11 +s11/7 11 +s11/8 11 +s11/1 11 +s11/10 11 +s11/3 11 +s11/6 11 +s12/9 12 +s12/2 12 +s12/4 12 +s12/5 12 +s12/7 12 +s12/8 12 +s12/1 12 +s12/10 12 +s12/3 12 +s12/6 12 +s14/9 14 +s14/2 14 +s14/4 14 +s14/5 14 +s14/7 14 +s14/8 14 +s14/1 14 +s14/10 14 +s14/3 14 +s14/6 14 +s16/9 16 +s16/2 16 +s16/4 16 +s16/5 16 +s16/7 16 +s16/8 16 +s16/1 16 +s16/10 16 +s16/3 16 +s16/6 16 +s17/9 17 +s17/2 17 +s17/4 17 +s17/5 17 +s17/7 17 +s17/8 17 +s17/1 17 +s17/10 17 +s17/3 17 +s17/6 17 +s20/9 20 +s20/2 20 +s20/4 20 +s20/5 20 +s20/7 20 +s20/8 20 +s20/1 20 +s20/10 20 +s20/3 20 +s20/6 20 +s21/9 21 +s21/2 21 +s21/4 21 +s21/5 21 +s21/7 21 +s21/8 21 +s21/1 21 +s21/10 21 +s21/3 21 +s21/6 21 +s24/9 24 +s24/2 24 +s24/4 24 +s24/5 24 +s24/7 24 +s24/8 24 +s24/1 24 +s24/10 24 +s24/3 24 +s24/6 24 +s26/9 26 +s26/2 26 +s26/4 26 +s26/5 26 +s26/7 26 +s26/8 26 +s26/1 26 +s26/10 26 +s26/3 26 +s26/6 26 +s27/9 27 +s27/2 27 +s27/4 27 +s27/5 27 +s27/7 27 +s27/8 27 +s27/1 27 +s27/10 27 +s27/3 27 +s27/6 27 +s29/9 29 +s29/2 29 +s29/4 29 +s29/5 29 +s29/7 29 +s29/8 29 +s29/1 29 +s29/10 29 +s29/3 29 +s29/6 29 +s33/9 33 +s33/2 33 +s33/4 33 +s33/5 33 +s33/7 33 +s33/8 33 +s33/1 33 +s33/10 33 +s33/3 33 +s33/6 33 +s34/9 34 +s34/2 34 +s34/4 34 +s34/5 34 +s34/7 34 +s34/8 34 +s34/1 34 +s34/10 34 +s34/3 34 +s34/6 34 +s36/9 36 +s36/2 36 +s36/4 36 +s36/5 36 +s36/7 36 +s36/8 36 +s36/1 36 +s36/10 36 +s36/3 36 +s36/6 36 +s39/9 39 +s39/2 39 +s39/4 39 +s39/5 39 +s39/7 39 +s39/8 39 +s39/1 39 +s39/10 39 +s39/3 39 +s39/6 39 diff --git a/bob/bio/base/test/data/scores-nonorm-calibrated-dev b/bob/bio/base/test/data/scores-nonorm-calibrated-dev new file mode 100644 index 0000000000000000000000000000000000000000..4e8e60f5db6ff05340938302ca093fce231d3a72 --- /dev/null +++ b/bob/bio/base/test/data/scores-nonorm-calibrated-dev @@ -0,0 +1,2000 @@ +3 3 s3/1 4.09156855 +3 3 s3/3 5.89520583 +3 3 s3/6 2.05436262 +3 3 s3/8 1.55656064 +3 3 s3/10 3.17131609 +3 4 s4/1 -0.12804103 +3 4 s4/3 -0.55509843 +3 4 s4/6 -0.98711161 +3 4 s4/8 -0.45045609 +3 4 s4/10 1.86264185 +3 7 s7/1 -0.48638707 +3 7 s7/3 -0.88300849 +3 7 s7/6 -0.46347941 +3 7 s7/8 -1.17053571 +3 7 s7/10 -0.27156963 +3 8 s8/1 -3.27019660 +3 8 s8/3 -2.84710253 +3 8 s8/6 -3.01038974 +3 8 s8/8 -3.30889272 +3 8 s8/10 -2.18308787 +3 9 s9/1 0.43794688 +3 9 s9/3 0.82480305 +3 9 s9/6 -0.48167091 +3 9 s9/8 0.27638884 +3 9 s9/10 1.55943539 +3 13 s13/1 -1.44276469 +3 13 s13/3 -2.50333336 +3 13 s13/6 0.01294430 +3 13 s13/8 -1.10291536 +3 13 s13/10 -0.51027608 +3 15 s15/1 -0.63549748 +3 15 s15/3 -0.70697874 +3 15 s15/6 -0.71315744 +3 15 s15/8 -1.22591183 +3 15 s15/10 0.40913759 +3 18 s18/1 0.37199872 +3 18 s18/3 -1.07258462 +3 18 s18/6 -1.01231161 +3 18 s18/8 -1.17581482 +3 18 s18/10 -1.03825504 +3 19 s19/1 -2.59569125 +3 19 s19/3 -3.54838476 +3 19 s19/6 -3.14554150 +3 19 s19/8 -3.21639877 +3 19 s19/10 -2.47252959 +3 22 s22/1 -1.95557692 +3 22 s22/3 -1.43421897 +3 22 s22/6 -3.05905038 +3 22 s22/8 -2.18980238 +3 22 s22/10 -2.98420826 +3 23 s23/1 -0.04012042 +3 23 s23/3 -0.89190054 +3 23 s23/6 -0.59440854 +3 23 s23/8 1.08908964 +3 23 s23/10 0.25966018 +3 25 s25/1 1.15034484 +3 25 s25/3 1.28599755 +3 25 s25/6 0.72139593 +3 25 s25/8 -1.13033155 +3 25 s25/10 1.26041596 +3 28 s28/1 -1.62778886 +3 28 s28/3 -1.60170634 +3 28 s28/6 -1.23372195 +3 28 s28/8 -0.80847273 +3 28 s28/10 -2.81956389 +3 30 s30/1 0.33973930 +3 30 s30/3 -0.69714398 +3 30 s30/6 0.21653512 +3 30 s30/8 -1.37089616 +3 30 s30/10 -0.41336557 +3 31 s31/1 -0.15936899 +3 31 s31/3 -3.69579938 +3 31 s31/6 -0.49895453 +3 31 s31/8 -0.11223866 +3 31 s31/10 -3.63267229 +3 32 s32/1 -2.94757230 +3 32 s32/3 -3.32326970 +3 32 s32/6 -2.05429453 +3 32 s32/8 -2.74943554 +3 32 s32/10 -1.68504603 +3 35 s35/1 -1.64259394 +3 35 s35/3 -1.17889623 +3 35 s35/6 -0.27769563 +3 35 s35/8 -0.42305083 +3 35 s35/10 -0.77953650 +3 37 s37/1 -0.90662774 +3 37 s37/3 -1.47505613 +3 37 s37/6 -2.36129272 +3 37 s37/8 -1.49843894 +3 37 s37/10 -0.71108415 +3 38 s38/1 -0.54979384 +3 38 s38/3 -0.43942019 +3 38 s38/6 -1.32322804 +3 38 s38/8 0.22565919 +3 38 s38/10 -0.21873683 +3 40 s40/1 0.51962883 +3 40 s40/3 1.04684162 +3 40 s40/6 -0.66757915 +3 40 s40/8 0.19302681 +3 40 s40/10 -1.12559238 +4 3 s3/1 1.24334469 +4 3 s3/3 1.33093939 +4 3 s3/6 0.50131368 +4 3 s3/8 0.31651902 +4 3 s3/10 1.71860732 +4 4 s4/1 2.20961326 +4 4 s4/3 1.51716864 +4 4 s4/6 0.08212185 +4 4 s4/8 2.07252781 +4 4 s4/10 2.01857990 +4 7 s7/1 -2.20465873 +4 7 s7/3 -2.13205541 +4 7 s7/6 -1.78878112 +4 7 s7/8 -2.68441729 +4 7 s7/10 -1.41951634 +4 8 s8/1 -3.03213536 +4 8 s8/3 -1.46265558 +4 8 s8/6 -1.79646149 +4 8 s8/8 -1.46593750 +4 8 s8/10 -0.49267936 +4 9 s9/1 0.55726883 +4 9 s9/3 0.83208676 +4 9 s9/6 -0.60264250 +4 9 s9/8 0.35043184 +4 9 s9/10 0.71673389 +4 13 s13/1 -2.16399439 +4 13 s13/3 -3.46897589 +4 13 s13/6 -1.13989009 +4 13 s13/8 -2.33935150 +4 13 s13/10 -1.41815466 +4 15 s15/1 -0.66582705 +4 15 s15/3 -0.43273164 +4 15 s15/6 -0.97479038 +4 15 s15/8 -0.41745877 +4 15 s15/10 -0.06885498 +4 18 s18/1 -0.68696446 +4 18 s18/3 -1.51051795 +4 18 s18/6 -1.06461294 +4 18 s18/8 -1.40491491 +4 18 s18/10 -1.51904114 +4 19 s19/1 -2.38547735 +4 19 s19/3 -3.68378704 +4 19 s19/6 -3.30395388 +4 19 s19/8 -3.78599027 +4 19 s19/10 -2.14707866 +4 22 s22/1 -1.76827883 +4 22 s22/3 -0.98391581 +4 22 s22/6 -2.88937865 +4 22 s22/8 -1.97447449 +4 22 s22/10 -2.97954968 +4 23 s23/1 -0.83483111 +4 23 s23/3 -1.89014431 +4 23 s23/6 -1.71584959 +4 23 s23/8 -1.07759123 +4 23 s23/10 -0.77821352 +4 25 s25/1 1.96249449 +4 25 s25/3 2.06888863 +4 25 s25/6 1.91429292 +4 25 s25/8 -0.99895640 +4 25 s25/10 2.35604083 +4 28 s28/1 -3.27266416 +4 28 s28/3 -2.72925206 +4 28 s28/6 -2.66305731 +4 28 s28/8 -2.46427929 +4 28 s28/10 -3.30539836 +4 30 s30/1 0.79708405 +4 30 s30/3 -0.34562067 +4 30 s30/6 0.33567829 +4 30 s30/8 -0.88738135 +4 30 s30/10 0.01677897 +4 31 s31/1 -0.51889767 +4 31 s31/3 -3.13498407 +4 31 s31/6 0.07302265 +4 31 s31/8 0.17218573 +4 31 s31/10 -3.10696712 +4 32 s32/1 -2.64550391 +4 32 s32/3 -2.93664871 +4 32 s32/6 -1.98797985 +4 32 s32/8 -2.52147136 +4 32 s32/10 -1.79063721 +4 35 s35/1 -2.81193562 +4 35 s35/3 -1.74065405 +4 35 s35/6 0.63302918 +4 35 s35/8 0.28921961 +4 35 s35/10 -2.22223548 +4 37 s37/1 -2.47862626 +4 37 s37/3 -3.20870968 +4 37 s37/6 -3.32794274 +4 37 s37/8 -2.43962870 +4 37 s37/10 -2.15605161 +4 38 s38/1 -1.37986444 +4 38 s38/3 -0.63993203 +4 38 s38/6 -2.21375817 +4 38 s38/8 -0.47600119 +4 38 s38/10 -1.11746381 +4 40 s40/1 -0.64545400 +4 40 s40/3 -0.19425020 +4 40 s40/6 -1.30596837 +4 40 s40/8 -0.59277680 +4 40 s40/10 -2.20891746 +7 3 s3/1 -0.01242372 +7 3 s3/3 -0.29728805 +7 3 s3/6 -0.53609868 +7 3 s3/8 -1.02099084 +7 3 s3/10 -0.24068483 +7 4 s4/1 -1.49248271 +7 4 s4/3 -2.07760397 +7 4 s4/6 -2.40906065 +7 4 s4/8 -2.07515169 +7 4 s4/10 -1.33958797 +7 7 s7/1 3.08401216 +7 7 s7/3 2.83732956 +7 7 s7/6 3.48281350 +7 7 s7/8 0.63184021 +7 7 s7/10 3.01762022 +7 8 s8/1 -2.97848194 +7 8 s8/3 -2.35486694 +7 8 s8/6 -2.58137707 +7 8 s8/8 -3.21468633 +7 8 s8/10 -2.34501713 +7 9 s9/1 -1.42942680 +7 9 s9/3 -1.50632725 +7 9 s9/6 -2.11523544 +7 9 s9/8 -1.12429707 +7 9 s9/10 -1.63848942 +7 13 s13/1 -4.45974112 +7 13 s13/3 -4.64955018 +7 13 s13/6 -3.76114105 +7 13 s13/8 -3.95538229 +7 13 s13/10 -3.36417377 +7 15 s15/1 -0.15600369 +7 15 s15/3 0.03737443 +7 15 s15/6 -0.49323785 +7 15 s15/8 -0.10813828 +7 15 s15/10 -0.65753069 +7 18 s18/1 -3.29618639 +7 18 s18/3 -3.85102392 +7 18 s18/6 -2.89254481 +7 18 s18/8 -3.62528458 +7 18 s18/10 -3.35336540 +7 19 s19/1 -3.25002019 +7 19 s19/3 -4.38752112 +7 19 s19/6 -4.33142391 +7 19 s19/8 -2.81541676 +7 19 s19/10 -3.32879916 +7 22 s22/1 -1.89670576 +7 22 s22/3 -1.65710043 +7 22 s22/6 -1.97836805 +7 22 s22/8 -1.94096649 +7 22 s22/10 -2.39729370 +7 23 s23/1 -0.13320027 +7 23 s23/3 -1.16440045 +7 23 s23/6 -1.36470499 +7 23 s23/8 -0.07787431 +7 23 s23/10 -0.05424685 +7 25 s25/1 -1.44174019 +7 25 s25/3 -1.63598905 +7 25 s25/6 -2.04826185 +7 25 s25/8 -3.14956799 +7 25 s25/10 -1.87362058 +7 28 s28/1 -3.77318045 +7 28 s28/3 -3.77678733 +7 28 s28/6 -3.41901886 +7 28 s28/8 -3.42939418 +7 28 s28/10 -4.69184439 +7 30 s30/1 -0.47665931 +7 30 s30/3 -0.95965507 +7 30 s30/6 -0.25840840 +7 30 s30/8 -1.72076703 +7 30 s30/10 -0.85477197 +7 31 s31/1 -1.15824636 +7 31 s31/3 -3.73689530 +7 31 s31/6 -1.78574721 +7 31 s31/8 -1.51552102 +7 31 s31/10 -3.97346341 +7 32 s32/1 -3.22392322 +7 32 s32/3 -4.15105562 +7 32 s32/6 -1.73968300 +7 32 s32/8 -3.01765286 +7 32 s32/10 -1.20723713 +7 35 s35/1 -2.59653535 +7 35 s35/3 -2.41307480 +7 35 s35/6 -2.42320910 +7 35 s35/8 -1.79849799 +7 35 s35/10 -1.88839306 +7 37 s37/1 -3.16768524 +7 37 s37/3 -3.60385518 +7 37 s37/6 -2.84815751 +7 37 s37/8 -2.11376788 +7 37 s37/10 -3.00175779 +7 38 s38/1 -1.07391362 +7 38 s38/3 -1.08282793 +7 38 s38/6 -1.61926185 +7 38 s38/8 -0.36915652 +7 38 s38/10 -0.29965675 +7 40 s40/1 -2.30151382 +7 40 s40/3 -1.68469220 +7 40 s40/6 -2.27959247 +7 40 s40/8 -2.19560683 +7 40 s40/10 -3.18738528 +8 3 s3/1 -2.31567869 +8 3 s3/3 -3.36615963 +8 3 s3/6 -1.32354974 +8 3 s3/8 -1.19948075 +8 3 s3/10 -3.46061099 +8 4 s4/1 -1.33015408 +8 4 s4/3 -1.53665520 +8 4 s4/6 -2.17025573 +8 4 s4/8 -1.84919828 +8 4 s4/10 -4.53582029 +8 7 s7/1 -3.31042019 +8 7 s7/3 -2.77481369 +8 7 s7/6 -1.81471092 +8 7 s7/8 -2.10944814 +8 7 s7/10 -4.31350036 +8 8 s8/1 6.76445594 +8 8 s8/3 1.37878166 +8 8 s8/6 1.81000108 +8 8 s8/8 0.67329352 +8 8 s8/10 0.25641932 +8 9 s9/1 -3.68325986 +8 9 s9/3 -3.80876646 +8 9 s9/6 -1.77591987 +8 9 s9/8 -1.56796713 +8 9 s9/10 -4.66221651 +8 13 s13/1 -4.06597309 +8 13 s13/3 -3.85278030 +8 13 s13/6 -4.35987263 +8 13 s13/8 -3.89301514 +8 13 s13/10 -3.35126718 +8 15 s15/1 -2.15823928 +8 15 s15/3 -1.57856641 +8 15 s15/6 -1.96335336 +8 15 s15/8 -1.76723312 +8 15 s15/10 -0.10417385 +8 18 s18/1 -5.39915722 +8 18 s18/3 -2.91521910 +8 18 s18/6 -2.69263030 +8 18 s18/8 -3.10306703 +8 18 s18/10 -2.94822832 +8 19 s19/1 -3.22916847 +8 19 s19/3 -4.60619531 +8 19 s19/6 -3.68346035 +8 19 s19/8 -2.02692485 +8 19 s19/10 -2.29183431 +8 22 s22/1 -3.05490067 +8 22 s22/3 -3.08703631 +8 22 s22/6 -3.26804498 +8 22 s22/8 -3.14343570 +8 22 s22/10 -3.61773980 +8 23 s23/1 -0.71147732 +8 23 s23/3 -3.26713680 +8 23 s23/6 -2.21705729 +8 23 s23/8 -3.98798433 +8 23 s23/10 -0.66690606 +8 25 s25/1 -2.38710604 +8 25 s25/3 -2.72837790 +8 25 s25/6 -2.14270962 +8 25 s25/8 -2.30501202 +8 25 s25/10 -2.93436782 +8 28 s28/1 -3.33808159 +8 28 s28/3 -3.31281965 +8 28 s28/6 -3.28945811 +8 28 s28/8 -5.86973215 +8 28 s28/10 -4.07898861 +8 30 s30/1 -2.20219335 +8 30 s30/3 -2.51907969 +8 30 s30/6 -1.96574655 +8 30 s30/8 -3.20881448 +8 30 s30/10 -1.74228327 +8 31 s31/1 -4.14359629 +8 31 s31/3 -5.02809202 +8 31 s31/6 -3.99456340 +8 31 s31/8 -4.16383965 +8 31 s31/10 -4.92215112 +8 32 s32/1 -3.41216366 +8 32 s32/3 -3.16895948 +8 32 s32/6 -1.71500954 +8 32 s32/8 -1.53679182 +8 32 s32/10 -1.39627762 +8 35 s35/1 -4.04267504 +8 35 s35/3 -2.53849550 +8 35 s35/6 -2.50890212 +8 35 s35/8 -2.33078754 +8 35 s35/10 -3.60966525 +8 37 s37/1 -4.68173454 +8 37 s37/3 -4.82358426 +8 37 s37/6 -4.41543094 +8 37 s37/8 -3.54418104 +8 37 s37/10 -4.04650745 +8 38 s38/1 -0.93432363 +8 38 s38/3 -1.04141840 +8 38 s38/6 -1.49714676 +8 38 s38/8 -2.37884293 +8 38 s38/10 -1.72346627 +8 40 s40/1 -4.23739431 +8 40 s40/3 -4.31196439 +8 40 s40/6 -2.76359462 +8 40 s40/8 -3.21211006 +8 40 s40/10 -2.17873878 +9 3 s3/1 1.34883192 +9 3 s3/3 0.38906075 +9 3 s3/6 0.60558213 +9 3 s3/8 0.12249094 +9 3 s3/10 -0.10325638 +9 4 s4/1 1.22693734 +9 4 s4/3 0.41453810 +9 4 s4/6 -1.04814908 +9 4 s4/8 0.37445821 +9 4 s4/10 0.13948527 +9 7 s7/1 -1.43288123 +9 7 s7/3 -1.64546126 +9 7 s7/6 -1.34526220 +9 7 s7/8 -1.54593132 +9 7 s7/10 -1.47787148 +9 8 s8/1 -2.76075787 +9 8 s8/3 -1.87483268 +9 8 s8/6 -2.74904314 +9 8 s8/8 -2.27098213 +9 8 s8/10 -1.48891690 +9 9 s9/1 4.28574365 +9 9 s9/3 5.35285841 +9 9 s9/6 1.98494588 +9 9 s9/8 3.16555438 +9 9 s9/10 2.71240190 +9 13 s13/1 -2.84700815 +9 13 s13/3 -4.34611621 +9 13 s13/6 -2.53518198 +9 13 s13/8 -3.21614328 +9 13 s13/10 -2.47461625 +9 15 s15/1 -1.24138747 +9 15 s15/3 -1.07117652 +9 15 s15/6 -1.52495683 +9 15 s15/8 -1.47847530 +9 15 s15/10 0.58404426 +9 18 s18/1 -2.97271227 +9 18 s18/3 -2.37987002 +9 18 s18/6 -2.59012540 +9 18 s18/8 -2.35615279 +9 18 s18/10 -1.88110274 +9 19 s19/1 -3.58277062 +9 19 s19/3 -4.99891680 +9 19 s19/6 -4.29069468 +9 19 s19/8 -4.66773676 +9 19 s19/10 -3.14925362 +9 22 s22/1 -1.83352670 +9 22 s22/3 -1.12776747 +9 22 s22/6 -2.33637811 +9 22 s22/8 -1.86496297 +9 22 s22/10 -2.82894042 +9 23 s23/1 0.73025184 +9 23 s23/3 1.22977092 +9 23 s23/6 -0.21991105 +9 23 s23/8 0.61793421 +9 23 s23/10 0.43949884 +9 25 s25/1 2.27731009 +9 25 s25/3 2.18317043 +9 25 s25/6 1.42892193 +9 25 s25/8 -1.14039339 +9 25 s25/10 2.22532969 +9 28 s28/1 -3.95136574 +9 28 s28/3 -3.34770622 +9 28 s28/6 -3.31597335 +9 28 s28/8 -3.70818183 +9 28 s28/10 -4.47849016 +9 30 s30/1 1.97025386 +9 30 s30/3 1.74498129 +9 30 s30/6 1.63495653 +9 30 s30/8 0.33202925 +9 30 s30/10 1.57210100 +9 31 s31/1 1.41197480 +9 31 s31/3 -3.88666791 +9 31 s31/6 -0.07270646 +9 31 s31/8 0.96055250 +9 31 s31/10 -3.98243126 +9 32 s32/1 -4.40424188 +9 32 s32/3 -4.51803970 +9 32 s32/6 -3.12022270 +9 32 s32/8 -3.75869583 +9 32 s32/10 -2.90524967 +9 35 s35/1 -0.27364785 +9 35 s35/3 -2.63263735 +9 35 s35/6 -0.29444643 +9 35 s35/8 0.80142328 +9 35 s35/10 -2.52000529 +9 37 s37/1 -3.33140799 +9 37 s37/3 -3.87242532 +9 37 s37/6 -4.12929202 +9 37 s37/8 -3.40394091 +9 37 s37/10 -3.49455471 +9 38 s38/1 0.67327058 +9 38 s38/3 1.16025261 +9 38 s38/6 0.23851401 +9 38 s38/8 1.75494485 +9 38 s38/10 1.73212886 +9 40 s40/1 0.20574447 +9 40 s40/3 -0.28616367 +9 40 s40/6 1.52069763 +9 40 s40/8 1.37541454 +9 40 s40/10 -0.85695770 +13 3 s3/1 -0.83709337 +13 3 s3/3 -1.59184788 +13 3 s3/6 -1.62728716 +13 3 s3/8 -1.45060411 +13 3 s3/10 -2.33363988 +13 4 s4/1 -1.69455391 +13 4 s4/3 -1.63337682 +13 4 s4/6 -1.98818565 +13 4 s4/8 -1.68006282 +13 4 s4/10 -3.78605534 +13 7 s7/1 -5.14090015 +13 7 s7/3 -5.00988063 +13 7 s7/6 -4.37505039 +13 7 s7/8 -4.93856471 +13 7 s7/10 -4.30304716 +13 8 s8/1 -4.39633598 +13 8 s8/3 -4.89790968 +13 8 s8/6 -4.71564705 +13 8 s8/8 -4.73128510 +13 8 s8/10 -5.02743707 +13 9 s9/1 -3.89385565 +13 9 s9/3 -3.54962005 +13 9 s9/6 -3.43075963 +13 9 s9/8 -2.71151313 +13 9 s9/10 -4.16174588 +13 13 s13/1 5.42211091 +13 13 s13/3 1.27153765 +13 13 s13/6 1.85275083 +13 13 s13/8 2.05081314 +13 13 s13/10 3.14329107 +13 15 s15/1 -3.10672538 +13 15 s15/3 -3.20951950 +13 15 s15/6 -2.66959337 +13 15 s15/8 -3.86189301 +13 15 s15/10 -1.38810784 +13 18 s18/1 -1.76501343 +13 18 s18/3 0.61385701 +13 18 s18/6 -0.18526764 +13 18 s18/8 0.95357259 +13 18 s18/10 -0.29470787 +13 19 s19/1 -2.10466241 +13 19 s19/3 -1.86716858 +13 19 s19/6 -1.38941842 +13 19 s19/8 -1.95748785 +13 19 s19/10 -1.78476153 +13 22 s22/1 -4.86137473 +13 22 s22/3 -4.76857403 +13 22 s22/6 -5.69581994 +13 22 s22/8 -5.02780952 +13 22 s22/10 -4.28113325 +13 23 s23/1 -3.91894759 +13 23 s23/3 -4.83340948 +13 23 s23/6 -3.67998044 +13 23 s23/8 -5.53088812 +13 23 s23/10 -3.84879556 +13 25 s25/1 -0.96334874 +13 25 s25/3 -0.67131471 +13 25 s25/6 0.42937016 +13 25 s25/8 -0.11564632 +13 25 s25/10 -0.91060696 +13 28 s28/1 -0.14039238 +13 28 s28/3 -0.68969337 +13 28 s28/6 -0.48573188 +13 28 s28/8 -1.71425993 +13 28 s28/10 0.07170100 +13 30 s30/1 -4.95639081 +13 30 s30/3 -5.42088214 +13 30 s30/6 -4.82005958 +13 30 s30/8 -5.23182691 +13 30 s30/10 -4.79451971 +13 31 s31/1 -5.18021150 +13 31 s31/3 -4.09637244 +13 31 s31/6 -3.84034884 +13 31 s31/8 -4.51060159 +13 31 s31/10 -4.34618137 +13 32 s32/1 -3.03530830 +13 32 s32/3 -2.10659317 +13 32 s32/6 -2.80140484 +13 32 s32/8 -2.07283647 +13 32 s32/10 -2.54603455 +13 35 s35/1 -1.71146853 +13 35 s35/3 -1.47252480 +13 35 s35/6 -0.93463729 +13 35 s35/8 -1.50247469 +13 35 s35/10 -2.48103376 +13 37 s37/1 -0.34156670 +13 37 s37/3 -0.09595572 +13 37 s37/6 -1.91500339 +13 37 s37/8 -1.67713575 +13 37 s37/10 -0.11380327 +13 38 s38/1 -4.01866273 +13 38 s38/3 -2.87479289 +13 38 s38/6 -4.53730837 +13 38 s38/8 -4.49129264 +13 38 s38/10 -3.48461815 +13 40 s40/1 -0.33530674 +13 40 s40/3 -1.77959158 +13 40 s40/6 0.07632258 +13 40 s40/8 0.19412061 +13 40 s40/10 0.30783263 +15 3 s3/1 0.78866213 +15 3 s3/3 0.03087581 +15 3 s3/6 0.55855206 +15 3 s3/8 0.34556575 +15 3 s3/10 -0.42545282 +15 4 s4/1 1.20013683 +15 4 s4/3 0.70851469 +15 4 s4/6 -0.25760671 +15 4 s4/8 0.55137137 +15 4 s4/10 -0.85699709 +15 7 s7/1 -0.97077462 +15 7 s7/3 -0.62648443 +15 7 s7/6 -0.04112319 +15 7 s7/8 -0.35113326 +15 7 s7/10 -0.94961054 +15 8 s8/1 -0.15275459 +15 8 s8/3 -1.53919010 +15 8 s8/6 -2.07520298 +15 8 s8/8 -1.60437055 +15 8 s8/10 -1.76315421 +15 9 s9/1 -0.07292317 +15 9 s9/3 -0.05385458 +15 9 s9/6 0.78289343 +15 9 s9/8 1.51037182 +15 9 s9/10 -0.38668219 +15 13 s13/1 -0.98338016 +15 13 s13/3 -1.06259980 +15 13 s13/6 -1.16160616 +15 13 s13/8 -0.91812350 +15 13 s13/10 -0.50823246 +15 15 s15/1 0.09569238 +15 15 s15/3 0.38249199 +15 15 s15/6 0.19409498 +15 15 s15/8 1.05079306 +15 15 s15/10 6.09488379 +15 18 s18/1 -1.74714787 +15 18 s18/3 0.65098276 +15 18 s18/6 0.38886362 +15 18 s18/8 0.69972980 +15 18 s18/10 0.19336240 +15 19 s19/1 -2.22810466 +15 19 s19/3 -3.09898301 +15 19 s19/6 -2.78994583 +15 19 s19/8 -2.70170634 +15 19 s19/10 -1.93815549 +15 22 s22/1 -0.81638342 +15 22 s22/3 -0.49254245 +15 22 s22/6 -0.91177733 +15 22 s22/8 -0.90984562 +15 22 s22/10 -1.29014810 +15 23 s23/1 1.33295645 +15 23 s23/3 0.14534674 +15 23 s23/6 1.13553042 +15 23 s23/8 -0.41709189 +15 23 s23/10 1.06830742 +15 25 s25/1 1.47075604 +15 25 s25/3 0.88141579 +15 25 s25/6 0.98915665 +15 25 s25/8 0.31041220 +15 25 s25/10 0.52897628 +15 28 s28/1 -1.89433554 +15 28 s28/3 -1.84353037 +15 28 s28/6 -1.61170385 +15 28 s28/8 -3.09710693 +15 28 s28/10 -2.84881012 +15 30 s30/1 1.53928747 +15 30 s30/3 0.96545415 +15 30 s30/6 1.88501496 +15 30 s30/8 0.67620793 +15 30 s30/10 1.66752635 +15 31 s31/1 0.37425905 +15 31 s31/3 -1.58152855 +15 31 s31/6 0.18362882 +15 31 s31/8 0.23520128 +15 31 s31/10 -1.86779301 +15 32 s32/1 -2.14139118 +15 32 s32/3 -1.72711633 +15 32 s32/6 -1.27432006 +15 32 s32/8 -1.28752174 +15 32 s32/10 -0.99977615 +15 35 s35/1 0.90633963 +15 35 s35/3 1.28652465 +15 35 s35/6 0.33903817 +15 35 s35/8 1.35216347 +15 35 s35/10 0.64239256 +15 37 s37/1 -1.75004187 +15 37 s37/3 -1.93147733 +15 37 s37/6 -2.55161208 +15 37 s37/8 -1.89821835 +15 37 s37/10 -1.85302714 +15 38 s38/1 0.57391730 +15 38 s38/3 0.77410092 +15 38 s38/6 0.23188191 +15 38 s38/8 0.22071776 +15 38 s38/10 0.56244199 +15 40 s40/1 0.17037563 +15 40 s40/3 0.23800577 +15 40 s40/6 0.67773163 +15 40 s40/8 0.44234860 +15 40 s40/10 1.28490788 +18 3 s3/1 -0.13029092 +18 3 s3/3 0.82306314 +18 3 s3/6 -0.97492094 +18 3 s3/8 -1.12683994 +18 3 s3/10 0.44367312 +18 4 s4/1 -1.51160300 +18 4 s4/3 -1.78650426 +18 4 s4/6 -1.04823274 +18 4 s4/8 -1.37877490 +18 4 s4/10 0.00056587 +18 7 s7/1 -2.24869271 +18 7 s7/3 -2.25435452 +18 7 s7/6 -2.51758117 +18 7 s7/8 -3.12264137 +18 7 s7/10 -1.19400957 +18 8 s8/1 -4.40865575 +18 8 s8/3 -3.24464121 +18 8 s8/6 -3.27178166 +18 8 s8/8 -3.17717708 +18 8 s8/10 -2.51891143 +18 9 s9/1 -2.71073271 +18 9 s9/3 -2.35531507 +18 9 s9/6 -3.25621067 +18 9 s9/8 -1.97590114 +18 9 s9/10 -0.76175393 +18 13 s13/1 -0.02510170 +18 13 s13/3 -0.26407007 +18 13 s13/6 2.29579433 +18 13 s13/8 0.37543375 +18 13 s13/10 0.94774024 +18 15 s15/1 -2.07089854 +18 15 s15/3 -2.18974083 +18 15 s15/6 -2.02630640 +18 15 s15/8 -2.46289326 +18 15 s15/10 -1.02936595 +18 18 s18/1 5.02705302 +18 18 s18/3 1.34841014 +18 18 s18/6 1.85657348 +18 18 s18/8 1.67848621 +18 18 s18/10 1.22144113 +18 19 s19/1 -2.60594693 +18 19 s19/3 -2.57362870 +18 19 s19/6 -3.18700855 +18 19 s19/8 -2.58216086 +18 19 s19/10 -2.96666302 +18 22 s22/1 -5.47590533 +18 22 s22/3 -5.07853412 +18 22 s22/6 -6.61901797 +18 22 s22/8 -5.68613613 +18 22 s22/10 -5.89438235 +18 23 s23/1 -2.86227428 +18 23 s23/3 -3.05358603 +18 23 s23/6 -3.21855107 +18 23 s23/8 -1.84100287 +18 23 s23/10 -2.92696252 +18 25 s25/1 0.54308154 +18 25 s25/3 0.91802721 +18 25 s25/6 0.81543304 +18 25 s25/8 -0.94219419 +18 25 s25/10 0.92867394 +18 28 s28/1 -2.21860597 +18 28 s28/3 -2.52001709 +18 28 s28/6 -2.16908139 +18 28 s28/8 -1.34470135 +18 28 s28/10 -2.71946786 +18 30 s30/1 -3.20110671 +18 30 s30/3 -4.18064998 +18 30 s30/6 -3.21782403 +18 30 s30/8 -4.80125847 +18 30 s30/10 -3.84233053 +18 31 s31/1 -4.35795593 +18 31 s31/3 -3.77050953 +18 31 s31/6 -3.39051046 +18 31 s31/8 -3.79917936 +18 31 s31/10 -3.68825507 +18 32 s32/1 -0.93304588 +18 32 s32/3 -1.56689312 +18 32 s32/6 -2.03659358 +18 32 s32/8 -1.78472538 +18 32 s32/10 -2.39377105 +18 35 s35/1 -2.72826038 +18 35 s35/3 -1.73058319 +18 35 s35/6 0.37020681 +18 35 s35/8 -0.16175307 +18 35 s35/10 -1.31645757 +18 37 s37/1 -1.27284520 +18 37 s37/3 -1.71139632 +18 37 s37/6 -3.96159575 +18 37 s37/8 -3.59489008 +18 37 s37/10 -0.96315808 +18 38 s38/1 -3.99001802 +18 38 s38/3 -4.03530392 +18 38 s38/6 -4.56221062 +18 38 s38/8 -2.95878986 +18 38 s38/10 -3.64205183 +18 40 s40/1 1.32039195 +18 40 s40/3 2.53227924 +18 40 s40/6 -0.10590463 +18 40 s40/8 0.76660140 +18 40 s40/10 -1.32722676 +19 3 s3/1 -2.25016683 +19 3 s3/3 -2.75223708 +19 3 s3/6 -2.22345715 +19 3 s3/8 -2.53431718 +19 3 s3/10 -2.63883412 +19 4 s4/1 -2.66667195 +19 4 s4/3 -1.56303443 +19 4 s4/6 -0.84191026 +19 4 s4/8 -1.49193535 +19 4 s4/10 -3.34978032 +19 7 s7/1 -4.67261853 +19 7 s7/3 -4.38823617 +19 7 s7/6 -3.69266532 +19 7 s7/8 -4.92799700 +19 7 s7/10 -3.79114085 +19 8 s8/1 -4.10930712 +19 8 s8/3 -3.38779913 +19 8 s8/6 -3.08766882 +19 8 s8/8 -2.54032143 +19 8 s8/10 -3.51766813 +19 9 s9/1 -4.25645158 +19 9 s9/3 -3.78041332 +19 9 s9/6 -3.95689961 +19 9 s9/8 -4.12762786 +19 9 s9/10 -4.54419608 +19 13 s13/1 -1.22746264 +19 13 s13/3 -1.58794264 +19 13 s13/6 -1.77340913 +19 13 s13/8 -0.94233047 +19 13 s13/10 -1.45863902 +19 15 s15/1 -0.71935434 +19 15 s15/3 -0.42115685 +19 15 s15/6 -0.10912636 +19 15 s15/8 -1.52525471 +19 15 s15/10 -2.33806385 +19 18 s18/1 -2.77102903 +19 18 s18/3 -1.67482597 +19 18 s18/6 -1.58508185 +19 18 s18/8 -1.37109434 +19 18 s18/10 -2.63208851 +19 19 s19/1 6.73859727 +19 19 s19/3 5.15567655 +19 19 s19/6 2.63775308 +19 19 s19/8 0.33974700 +19 19 s19/10 4.59051626 +19 22 s22/1 -3.11122813 +19 22 s22/3 -3.41759737 +19 22 s22/6 -4.68952355 +19 22 s22/8 -3.82803825 +19 22 s22/10 -3.06767787 +19 23 s23/1 -4.98390191 +19 23 s23/3 -5.51185410 +19 23 s23/6 -4.65566349 +19 23 s23/8 -5.70942261 +19 23 s23/10 -4.43355249 +19 25 s25/1 -2.48842351 +19 25 s25/3 -1.75873443 +19 25 s25/6 -1.42832744 +19 25 s25/8 -1.28717301 +19 25 s25/10 -1.82938375 +19 28 s28/1 -2.44309525 +19 28 s28/3 -2.41725043 +19 28 s28/6 -2.80142995 +19 28 s28/8 -3.47777891 +19 28 s28/10 -1.65131176 +19 30 s30/1 -4.22437115 +19 30 s30/3 -5.16837644 +19 30 s30/6 -4.25190792 +19 30 s30/8 -4.54529395 +19 30 s30/10 -4.04975618 +19 31 s31/1 -5.18826313 +19 31 s31/3 -1.31852961 +19 31 s31/6 -2.81569342 +19 31 s31/8 -4.16514076 +19 31 s31/10 -2.20577364 +19 32 s32/1 -1.71979716 +19 32 s32/3 0.29174119 +19 32 s32/6 -1.08850818 +19 32 s32/8 -0.12444210 +19 32 s32/10 -0.77653821 +19 35 s35/1 -4.43852010 +19 35 s35/3 -1.60704562 +19 35 s35/6 -1.01225466 +19 35 s35/8 -1.97221338 +19 35 s35/10 -3.39385033 +19 37 s37/1 -3.41855108 +19 37 s37/3 -3.59332397 +19 37 s37/6 -1.78589729 +19 37 s37/8 -1.63149183 +19 37 s37/10 -2.27442973 +19 38 s38/1 -5.35029559 +19 38 s38/3 -4.62775955 +19 38 s38/6 -5.89546034 +19 38 s38/8 -5.52928808 +19 38 s38/10 -5.11682737 +19 40 s40/1 -3.41187404 +19 40 s40/3 -3.74908147 +19 40 s40/6 -3.41254128 +19 40 s40/8 -3.22821365 +19 40 s40/10 -3.24541995 +22 3 s3/1 -1.62862241 +22 3 s3/3 -2.39537703 +22 3 s3/6 -3.00715018 +22 3 s3/8 -2.87908549 +22 3 s3/10 -3.24577600 +22 4 s4/1 -1.89086455 +22 4 s4/3 -1.36165575 +22 4 s4/6 -3.21660198 +22 4 s4/8 -1.61047456 +22 4 s4/10 -3.98885577 +22 7 s7/1 -3.67520905 +22 7 s7/3 -4.02010894 +22 7 s7/6 -3.17680506 +22 7 s7/8 -3.74460050 +22 7 s7/10 -4.17456675 +22 8 s8/1 -3.69870951 +22 8 s8/3 -5.17075148 +22 8 s8/6 -5.16611103 +22 8 s8/8 -5.17126741 +22 8 s8/10 -5.12995148 +22 9 s9/1 -2.05385492 +22 9 s9/3 -2.01948294 +22 9 s9/6 -2.36555832 +22 9 s9/8 -2.92507429 +22 9 s9/10 -3.50858691 +22 13 s13/1 -3.63450348 +22 13 s13/3 -4.19108349 +22 13 s13/6 -4.64336036 +22 13 s13/8 -4.79778253 +22 13 s13/10 -4.16834591 +22 15 s15/1 -0.95280141 +22 15 s15/3 -0.53631492 +22 15 s15/6 -1.01667206 +22 15 s15/8 -0.31095668 +22 15 s15/10 -0.48943636 +22 18 s18/1 -6.30165813 +22 18 s18/3 -4.74641063 +22 18 s18/6 -5.13438860 +22 18 s18/8 -4.84634930 +22 18 s18/10 -5.65706659 +22 19 s19/1 -2.36130327 +22 19 s19/3 -3.61491134 +22 19 s19/6 -2.56217204 +22 19 s19/8 -3.61414291 +22 19 s19/10 -1.62477713 +22 22 s22/1 4.83957003 +22 22 s22/3 3.56735129 +22 22 s22/6 3.91449938 +22 22 s22/8 3.57302129 +22 22 s22/10 4.82307917 +22 23 s23/1 -3.50075540 +22 23 s23/3 -2.67410097 +22 23 s23/6 -2.05161253 +22 23 s23/8 -4.05151983 +22 23 s23/10 -3.07698269 +22 25 s25/1 -3.18553548 +22 25 s25/3 -3.37347161 +22 25 s25/6 -2.59142035 +22 25 s25/8 -2.74672603 +22 25 s25/10 -3.36995082 +22 28 s28/1 -2.74531586 +22 28 s28/3 -2.31659936 +22 28 s28/6 -2.45338738 +22 28 s28/8 -3.45838195 +22 28 s28/10 -3.17165883 +22 30 s30/1 -0.48612292 +22 30 s30/3 -1.06177707 +22 30 s30/6 -0.60787203 +22 30 s30/8 0.51360392 +22 30 s30/10 -0.23618410 +22 31 s31/1 -1.29723879 +22 31 s31/3 -0.91330254 +22 31 s31/6 -0.40668580 +22 31 s31/8 -0.85031665 +22 31 s31/10 -1.19182285 +22 32 s32/1 -5.36671447 +22 32 s32/3 -4.34447835 +22 32 s32/6 -3.64443142 +22 32 s32/8 -3.78218181 +22 32 s32/10 -2.89948031 +22 35 s35/1 -3.07568815 +22 35 s35/3 -0.93151492 +22 35 s35/6 -3.08684784 +22 35 s35/8 -3.14718004 +22 35 s35/10 -4.07973420 +22 37 s37/1 -3.17608265 +22 37 s37/3 -3.31736883 +22 37 s37/6 -1.15806744 +22 37 s37/8 -0.11350867 +22 37 s37/10 -3.10155955 +22 38 s38/1 -2.76813674 +22 38 s38/3 -1.65731869 +22 38 s38/6 -3.19292809 +22 38 s38/8 -3.21110422 +22 38 s38/10 -1.93163145 +22 40 s40/1 -3.65718541 +22 40 s40/3 -4.71112945 +22 40 s40/6 -3.64422978 +22 40 s40/8 -3.70350274 +22 40 s40/10 -3.04710304 +23 3 s3/1 0.25889809 +23 3 s3/3 1.33128180 +23 3 s3/6 0.76470992 +23 3 s3/8 -0.05959013 +23 3 s3/10 0.58975493 +23 4 s4/1 -1.18635036 +23 4 s4/3 -1.89578811 +23 4 s4/6 -1.34678267 +23 4 s4/8 -1.74152560 +23 4 s4/10 1.73214843 +23 7 s7/1 1.27383696 +23 7 s7/3 0.53605334 +23 7 s7/6 0.00455725 +23 7 s7/8 0.56839060 +23 7 s7/10 -0.11549178 +23 8 s8/1 -3.33846047 +23 8 s8/3 -2.36350973 +23 8 s8/6 -3.03423484 +23 8 s8/8 -2.89327048 +23 8 s8/10 -1.56500700 +23 9 s9/1 0.87285312 +23 9 s9/3 0.97408545 +23 9 s9/6 -0.16448263 +23 9 s9/8 0.48219318 +23 9 s9/10 2.27799632 +23 13 s13/1 -4.88955407 +23 13 s13/3 -5.52551546 +23 13 s13/6 -2.87149408 +23 13 s13/8 -3.85360668 +23 13 s13/10 -3.48473733 +23 15 s15/1 -1.65200018 +23 15 s15/3 -1.58435780 +23 15 s15/6 -2.19885326 +23 15 s15/8 -1.85404347 +23 15 s15/10 -0.50757450 +23 18 s18/1 -1.23631552 +23 18 s18/3 -3.17359010 +23 18 s18/6 -2.62050193 +23 18 s18/8 -3.19880481 +23 18 s18/10 -1.71796884 +23 19 s19/1 -4.93422445 +23 19 s19/3 -6.12781906 +23 19 s19/6 -5.75808576 +23 19 s19/8 -4.95379009 +23 19 s19/10 -4.88045343 +23 22 s22/1 -3.54258871 +23 22 s22/3 -2.99125406 +23 22 s22/6 -3.99762893 +23 22 s22/8 -3.94161227 +23 22 s22/10 -4.96243960 +23 23 s23/1 1.89075185 +23 23 s23/3 1.49105364 +23 23 s23/6 0.67482828 +23 23 s23/8 7.43918352 +23 23 s23/10 1.55108458 +23 25 s25/1 -0.04275044 +23 25 s25/3 0.02265971 +23 25 s25/6 -1.23063516 +23 25 s25/8 -2.64883930 +23 25 s25/10 0.08912824 +23 28 s28/1 -5.36739083 +23 28 s28/3 -5.08984044 +23 28 s28/6 -4.90105094 +23 28 s28/8 -3.69174166 +23 28 s28/10 -6.05880565 +23 30 s30/1 0.95361185 +23 30 s30/3 0.84724227 +23 30 s30/6 1.18807209 +23 30 s30/8 -0.96458074 +23 30 s30/10 0.33393046 +23 31 s31/1 0.07701611 +23 31 s31/3 -4.77704455 +23 31 s31/6 -1.56405155 +23 31 s31/8 -0.67786773 +23 31 s31/10 -4.97157900 +23 32 s32/1 -4.28429561 +23 32 s32/3 -5.61735462 +23 32 s32/6 -2.96507731 +23 32 s32/8 -4.31255389 +23 32 s32/10 -2.85859891 +23 35 s35/1 -2.62857072 +23 35 s35/3 -3.43814257 +23 35 s35/6 -1.59604603 +23 35 s35/8 -0.81881025 +23 35 s35/10 -1.97499670 +23 37 s37/1 -4.25585332 +23 37 s37/3 -4.85480419 +23 37 s37/6 -5.59421116 +23 37 s37/8 -4.81626645 +23 37 s37/10 -4.16332039 +23 38 s38/1 0.45941688 +23 38 s38/3 -0.83578228 +23 38 s38/6 0.05688509 +23 38 s38/8 2.39959777 +23 38 s38/10 0.85798614 +23 40 s40/1 0.02345898 +23 40 s40/3 0.87142438 +23 40 s40/6 -1.27986565 +23 40 s40/8 -0.88046096 +23 40 s40/10 -2.40444058 +25 3 s3/1 1.50962297 +25 3 s3/3 1.99481296 +25 3 s3/6 0.99016330 +25 3 s3/8 0.89468425 +25 3 s3/10 0.86046391 +25 4 s4/1 0.86343477 +25 4 s4/3 0.76108720 +25 4 s4/6 0.48137369 +25 4 s4/8 0.97226229 +25 4 s4/10 1.95971612 +25 7 s7/1 -2.31114899 +25 7 s7/3 -2.33766271 +25 7 s7/6 -1.99086572 +25 7 s7/8 -2.45758118 +25 7 s7/10 -2.15634008 +25 8 s8/1 -2.70372088 +25 8 s8/3 -1.94033080 +25 8 s8/6 -2.35473568 +25 8 s8/8 -1.85519283 +25 8 s8/10 -1.35130911 +25 9 s9/1 0.15530931 +25 9 s9/3 0.79349581 +25 9 s9/6 -0.37282499 +25 9 s9/8 0.26621074 +25 9 s9/10 0.69012051 +25 13 s13/1 -0.55449742 +25 13 s13/3 -1.91657458 +25 13 s13/6 0.48469334 +25 13 s13/8 -0.29583913 +25 13 s13/10 -0.00728049 +25 15 s15/1 -0.92279404 +25 15 s15/3 -0.98941846 +25 15 s15/6 -1.01100349 +25 15 s15/8 -1.48176666 +25 15 s15/10 0.75348009 +25 18 s18/1 0.54341252 +25 18 s18/3 0.83068501 +25 18 s18/6 0.49022226 +25 18 s18/8 0.79352049 +25 18 s18/10 0.59566745 +25 19 s19/1 -1.51454602 +25 19 s19/3 -2.24630235 +25 19 s19/6 -2.33232089 +25 19 s19/8 -2.94771134 +25 19 s19/10 -1.79491262 +25 22 s22/1 -3.06895588 +25 22 s22/3 -2.59287420 +25 22 s22/6 -4.10624247 +25 22 s22/8 -3.41348786 +25 22 s22/10 -3.73723376 +25 23 s23/1 -0.55569335 +25 23 s23/3 -0.89436921 +25 23 s23/6 -0.53713705 +25 23 s23/8 -0.70414527 +25 23 s23/10 -0.60726235 +25 25 s25/1 3.35185160 +25 25 s25/3 3.48072610 +25 25 s25/6 4.08960491 +25 25 s25/8 0.44947610 +25 25 s25/10 4.96195186 +25 28 s28/1 -2.05262984 +25 28 s28/3 -1.59343160 +25 28 s28/6 -1.66049112 +25 28 s28/8 -2.05824336 +25 28 s28/10 -2.14839538 +25 30 s30/1 0.07945735 +25 30 s30/3 -0.23671937 +25 30 s30/6 -0.84585919 +25 30 s30/8 -1.80234775 +25 30 s30/10 -0.51367340 +25 31 s31/1 -1.50921475 +25 31 s31/3 -2.89371214 +25 31 s31/6 -0.67929363 +25 31 s31/8 -0.95797367 +25 31 s31/10 -2.71616589 +25 32 s32/1 -1.49138504 +25 32 s32/3 -1.92532496 +25 32 s32/6 -1.13230689 +25 32 s32/8 -1.56596312 +25 32 s32/10 -1.11174270 +25 35 s35/1 -1.12837025 +25 35 s35/3 -1.09536532 +25 35 s35/6 1.88116203 +25 35 s35/8 1.23261801 +25 35 s35/10 -1.48927267 +25 37 s37/1 -1.94195555 +25 37 s37/3 -2.52647852 +25 37 s37/6 -3.12088680 +25 37 s37/8 -2.66787393 +25 37 s37/10 -1.80084092 +25 38 s38/1 -0.78309483 +25 38 s38/3 -0.58812901 +25 38 s38/6 -1.40454374 +25 38 s38/8 0.03317197 +25 38 s38/10 -1.05886508 +25 40 s40/1 0.70679455 +25 40 s40/3 -0.00763121 +25 40 s40/6 -0.04885698 +25 40 s40/8 0.42393938 +25 40 s40/10 -0.22412300 +28 3 s3/1 -1.00459918 +28 3 s3/3 -1.22985335 +28 3 s3/6 -1.55651937 +28 3 s3/8 -1.61461966 +28 3 s3/10 -1.19733906 +28 4 s4/1 -2.30224910 +28 4 s4/3 -1.82839534 +28 4 s4/6 -1.69431844 +28 4 s4/8 -1.70084964 +28 4 s4/10 -2.35354195 +28 7 s7/1 -2.64592324 +28 7 s7/3 -2.81811342 +28 7 s7/6 -2.16767850 +28 7 s7/8 -3.36500287 +28 7 s7/10 -2.35571272 +28 8 s8/1 -3.63723337 +28 8 s8/3 -3.50559822 +28 8 s8/6 -3.03942757 +28 8 s8/8 -3.79394507 +28 8 s8/10 -3.21596123 +28 9 s9/1 -3.26607318 +28 9 s9/3 -2.83549666 +28 9 s9/6 -3.32432662 +28 9 s9/8 -3.24317221 +28 9 s9/10 -3.24429936 +28 13 s13/1 -2.57702074 +28 13 s13/3 -3.11475960 +28 13 s13/6 -2.19368684 +28 13 s13/8 -2.36051220 +28 13 s13/10 -2.04374197 +28 15 s15/1 0.62163390 +28 15 s15/3 0.42013348 +28 15 s15/6 0.62993984 +28 15 s15/8 -1.24474942 +28 15 s15/10 -2.15680757 +28 18 s18/1 -3.06921418 +28 18 s18/3 -3.02261628 +28 18 s18/6 -2.87280777 +28 18 s18/8 -3.02322250 +28 18 s18/10 -3.50175760 +28 19 s19/1 -0.35504356 +28 19 s19/3 -1.11526449 +28 19 s19/6 -1.22649868 +28 19 s19/8 -0.26790077 +28 19 s19/10 -0.64606935 +28 22 s22/1 -1.61572878 +28 22 s22/3 -1.80184549 +28 22 s22/6 -3.05136289 +28 22 s22/8 -2.22008032 +28 22 s22/10 -2.25463305 +28 23 s23/1 -3.70319048 +28 23 s23/3 -3.58221461 +28 23 s23/6 -3.63422276 +28 23 s23/8 -3.80861224 +28 23 s23/10 -3.14490934 +28 25 s25/1 -2.04360463 +28 25 s25/3 -1.68351149 +28 25 s25/6 -1.44195424 +28 25 s25/8 -1.78997085 +28 25 s25/10 -1.80206710 +28 28 s28/1 -0.87542165 +28 28 s28/3 -1.36607038 +28 28 s28/6 -0.95506714 +28 28 s28/8 -1.19801993 +28 28 s28/10 -2.11373869 +28 30 s30/1 -3.50740201 +28 30 s30/3 -4.35776921 +28 30 s30/6 -3.35182119 +28 30 s30/8 -3.97542181 +28 30 s30/10 -3.39615350 +28 31 s31/1 -3.91485760 +28 31 s31/3 -1.93016147 +28 31 s31/6 -2.30253057 +28 31 s31/8 -3.15092711 +28 31 s31/10 -1.71286310 +28 32 s32/1 -1.65839446 +28 32 s32/3 -1.40114775 +28 32 s32/6 -0.84833661 +28 32 s32/8 -0.82690627 +28 32 s32/10 -0.42106636 +28 35 s35/1 -4.40744076 +28 35 s35/3 -2.20493410 +28 35 s35/6 -1.66522187 +28 35 s35/8 -2.29439767 +28 35 s35/10 -2.76648360 +28 37 s37/1 -2.00902096 +28 37 s37/3 -2.28412315 +28 37 s37/6 0.72544289 +28 37 s37/8 0.67807883 +28 37 s37/10 -1.14855391 +28 38 s38/1 -4.25319002 +28 38 s38/3 -3.72878431 +28 38 s38/6 -4.79527003 +28 38 s38/8 -4.56642566 +28 38 s38/10 -3.80320761 +28 40 s40/1 -3.12709725 +28 40 s40/3 -2.96208250 +28 40 s40/6 -3.38966763 +28 40 s40/8 -3.14569319 +28 40 s40/10 -3.54642286 +30 3 s3/1 -0.01303691 +30 3 s3/3 -1.38057783 +30 3 s3/6 -1.02892468 +30 3 s3/8 -1.70681175 +30 3 s3/10 -2.23270150 +30 4 s4/1 -0.19542171 +30 4 s4/3 -0.80987282 +30 4 s4/6 -2.59932889 +30 4 s4/8 -0.85730526 +30 4 s4/10 -1.46595687 +30 7 s7/1 -1.94121512 +30 7 s7/3 -2.06002226 +30 7 s7/6 -1.80862970 +30 7 s7/8 -1.72584975 +30 7 s7/10 -3.09828329 +30 8 s8/1 -2.58940636 +30 8 s8/3 -3.11717635 +30 8 s8/6 -3.89319967 +30 8 s8/8 -3.34204422 +30 8 s8/10 -2.92989285 +30 9 s9/1 1.16552061 +30 9 s9/3 1.03617147 +30 9 s9/6 -0.13105410 +30 9 s9/8 0.40454197 +30 9 s9/10 -0.50758695 +30 13 s13/1 -5.10519368 +30 13 s13/3 -6.21029345 +30 13 s13/6 -5.14447984 +30 13 s13/8 -5.50170284 +30 13 s13/10 -5.06867340 +30 15 s15/1 -0.67151390 +30 15 s15/3 -0.42559878 +30 15 s15/6 -1.09295600 +30 15 s15/8 -0.00229240 +30 15 s15/10 1.34601945 +30 18 s18/1 -5.33370649 +30 18 s18/3 -4.34794996 +30 18 s18/6 -4.82322543 +30 18 s18/8 -4.36597856 +30 18 s18/10 -4.09658552 +30 19 s19/1 -4.36440103 +30 19 s19/3 -5.83279159 +30 19 s19/6 -5.17615574 +30 19 s19/8 -5.53091423 +30 19 s19/10 -4.04762041 +30 22 s22/1 0.57354226 +30 22 s22/3 1.24564106 +30 22 s22/6 0.40968329 +30 22 s22/8 0.31453996 +30 22 s22/10 -0.90017046 +30 23 s23/1 0.22254644 +30 23 s23/3 0.97002569 +30 23 s23/6 0.72942073 +30 23 s23/8 -0.25706618 +30 23 s23/10 -0.17761090 +30 25 s25/1 -0.24798922 +30 25 s25/3 -0.71391679 +30 25 s25/6 -0.39711472 +30 25 s25/8 -2.77540110 +30 25 s25/10 -0.70173434 +30 28 s28/1 -6.06486705 +30 28 s28/3 -5.27353207 +30 28 s28/6 -5.40331723 +30 28 s28/8 -6.03415891 +30 28 s28/10 -6.15348981 +30 30 s30/1 5.79124540 +30 30 s30/3 4.75276832 +30 30 s30/6 5.45335177 +30 30 s30/8 5.42509852 +30 30 s30/10 5.70337546 +30 31 s31/1 1.37836586 +30 31 s31/3 -2.15770805 +30 31 s31/6 0.54111618 +30 31 s31/8 1.06705870 +30 31 s31/10 -2.32081811 +30 32 s32/1 -4.85669017 +30 32 s32/3 -5.23682176 +30 32 s32/6 -3.04289942 +30 32 s32/8 -4.42904105 +30 32 s32/10 -2.70207946 +30 35 s35/1 -0.92950286 +30 35 s35/3 -2.39471374 +30 35 s35/6 -1.43558559 +30 35 s35/8 -0.70844553 +30 35 s35/10 -3.83133102 +30 37 s37/1 -5.80779897 +30 37 s37/3 -6.21524781 +30 37 s37/6 -4.61165519 +30 37 s37/8 -3.42091986 +30 37 s37/10 -5.94726798 +30 38 s38/1 0.85187544 +30 38 s38/3 1.32242005 +30 38 s38/6 0.33561613 +30 38 s38/8 1.02603437 +30 38 s38/10 1.44804529 +30 40 s40/1 -2.51881619 +30 40 s40/3 -3.12520262 +30 40 s40/6 -1.79036492 +30 40 s40/8 -2.06770967 +30 40 s40/10 -1.98248335 +31 3 s3/1 -2.83920858 +31 3 s3/3 -3.45338732 +31 3 s3/6 -3.47144830 +31 3 s3/8 -3.74113607 +31 3 s3/10 -3.98285667 +31 4 s4/1 -2.43295062 +31 4 s4/3 -2.05587434 +31 4 s4/6 -2.68388706 +31 4 s4/8 -1.94091302 +31 4 s4/10 -3.65518903 +31 7 s7/1 -4.37058889 +31 7 s7/3 -4.15713686 +31 7 s7/6 -4.26590110 +31 7 s7/8 -4.80597696 +31 7 s7/10 -4.49881960 +31 8 s8/1 -5.10199347 +31 8 s8/3 -5.21135391 +31 8 s8/6 -5.84641763 +31 8 s8/8 -4.67591647 +31 8 s8/10 -4.95646994 +31 9 s9/1 -3.06914066 +31 9 s9/3 -2.63089112 +31 9 s9/6 -2.77284265 +31 9 s9/8 -3.32298262 +31 9 s9/10 -3.43722096 +31 13 s13/1 -5.31525343 +31 13 s13/3 -5.84201391 +31 13 s13/6 -5.35824301 +31 13 s13/8 -5.58806959 +31 13 s13/10 -5.41796982 +31 15 s15/1 -0.94022453 +31 15 s15/3 -1.02436610 +31 15 s15/6 -1.33893274 +31 15 s15/8 -0.18873364 +31 15 s15/10 -1.46648497 +31 18 s18/1 -5.64186382 +31 18 s18/3 -4.41514789 +31 18 s18/6 -4.83732052 +31 18 s18/8 -4.17042521 +31 18 s18/10 -4.85720634 +31 19 s19/1 -2.66095390 +31 19 s19/3 -3.89056021 +31 19 s19/6 -4.40959369 +31 19 s19/8 -4.66433082 +31 19 s19/10 -3.26936452 +31 22 s22/1 -1.32255957 +31 22 s22/3 -0.72351673 +31 22 s22/6 -1.87201388 +31 22 s22/8 -1.71418316 +31 22 s22/10 -2.36666802 +31 23 s23/1 -4.06140253 +31 23 s23/3 -3.54572145 +31 23 s23/6 -2.62145529 +31 23 s23/8 -4.37749646 +31 23 s23/10 -3.68766131 +31 25 s25/1 -2.93804097 +31 25 s25/3 -2.76857605 +31 25 s25/6 -2.31510637 +31 25 s25/8 -2.80883816 +31 25 s25/10 -3.11831413 +31 28 s28/1 -6.47535091 +31 28 s28/3 -6.33113828 +31 28 s28/6 -6.13808690 +31 28 s28/8 -6.65159269 +31 28 s28/10 -6.14386358 +31 30 s30/1 -1.04267844 +31 30 s30/3 -2.02260472 +31 30 s30/6 -1.17721599 +31 30 s30/8 -0.17692273 +31 30 s30/10 -0.62575026 +31 31 s31/1 -2.32720830 +31 31 s31/3 2.81232429 +31 31 s31/6 -0.57450634 +31 31 s31/8 -1.60069313 +31 31 s31/10 2.25417342 +31 32 s32/1 -3.33188688 +31 32 s32/3 -3.57119633 +31 32 s32/6 -3.04323795 +31 32 s32/8 -3.45446263 +31 32 s32/10 -2.75769449 +31 35 s35/1 -3.78431578 +31 35 s35/3 -2.81222767 +31 35 s35/6 -2.60072714 +31 35 s35/8 -2.86280299 +31 35 s35/10 -4.00724618 +31 37 s37/1 -6.43164759 +31 37 s37/3 -6.64127005 +31 37 s37/6 -3.75733239 +31 37 s37/8 -2.72461098 +31 37 s37/10 -6.23599844 +31 38 s38/1 -4.05769348 +31 38 s38/3 -3.68215605 +31 38 s38/6 -4.47002721 +31 38 s38/8 -4.76438799 +31 38 s38/10 -4.04991290 +31 40 s40/1 -5.12577375 +31 40 s40/3 -4.86739962 +31 40 s40/6 -4.86773167 +31 40 s40/8 -4.86360548 +31 40 s40/10 -4.55748088 +32 3 s3/1 -3.21593337 +32 3 s3/3 -3.64931281 +32 3 s3/6 -3.37295560 +32 3 s3/8 -3.68716712 +32 3 s3/10 -3.89075386 +32 4 s4/1 -3.16735654 +32 4 s4/3 -2.70602513 +32 4 s4/6 -2.27738819 +32 4 s4/8 -2.67732758 +32 4 s4/10 -4.33984173 +32 7 s7/1 -4.89173542 +32 7 s7/3 -4.35762296 +32 7 s7/6 -4.13932685 +32 7 s7/8 -5.35576299 +32 7 s7/10 -4.06297070 +32 8 s8/1 -3.34145666 +32 8 s8/3 -3.80284819 +32 8 s8/6 -3.67115837 +32 8 s8/8 -3.19713788 +32 8 s8/10 -3.88495342 +32 9 s9/1 -5.04992959 +32 9 s9/3 -4.87403278 +32 9 s9/6 -4.57220272 +32 9 s9/8 -4.71685373 +32 9 s9/10 -5.21348774 +32 13 s13/1 -2.07210767 +32 13 s13/3 -1.80084547 +32 13 s13/6 -2.04200412 +32 13 s13/8 -1.70147934 +32 13 s13/10 -1.88100127 +32 15 s15/1 -1.01452990 +32 15 s15/3 -1.16021356 +32 15 s15/6 -0.23619848 +32 15 s15/8 -2.11363242 +32 15 s15/10 -2.43239958 +32 18 s18/1 -2.51390926 +32 18 s18/3 -0.88798641 +32 18 s18/6 -1.15577972 +32 18 s18/8 -0.83857837 +32 18 s18/10 -2.10087861 +32 19 s19/1 -0.11614827 +32 19 s19/3 0.30620293 +32 19 s19/6 -0.63519570 +32 19 s19/8 -0.61439786 +32 19 s19/10 -0.83676871 +32 22 s22/1 -4.95954092 +32 22 s22/3 -5.16664387 +32 22 s22/6 -6.04805043 +32 22 s22/8 -5.62664100 +32 22 s22/10 -5.20868281 +32 23 s23/1 -5.11525475 +32 23 s23/3 -5.19185184 +32 23 s23/6 -4.63138691 +32 23 s23/8 -5.90791984 +32 23 s23/10 -4.84988596 +32 25 s25/1 -2.98356199 +32 25 s25/3 -2.63738232 +32 25 s25/6 -1.82602984 +32 25 s25/8 -2.17549755 +32 25 s25/10 -2.85573498 +32 28 s28/1 -4.06375871 +32 28 s28/3 -3.87747490 +32 28 s28/6 -4.23243074 +32 28 s28/8 -4.44949358 +32 28 s28/10 -3.25383578 +32 30 s30/1 -5.40079294 +32 30 s30/3 -5.90717683 +32 30 s30/6 -5.30106418 +32 30 s30/8 -5.70448640 +32 30 s30/10 -5.35525481 +32 31 s31/1 -6.25923803 +32 31 s31/3 -2.29540112 +32 31 s31/6 -4.88146952 +32 31 s31/8 -5.83793160 +32 31 s31/10 -2.15475612 +32 32 s32/1 0.97757532 +32 32 s32/3 4.27482984 +32 32 s32/6 -0.78474929 +32 32 s32/8 2.15639808 +32 32 s32/10 -0.88363097 +32 35 s35/1 -4.40973906 +32 35 s35/3 -2.45608719 +32 35 s35/6 -2.24242914 +32 35 s35/8 -2.90284925 +32 35 s35/10 -3.49193224 +32 37 s37/1 -4.04589351 +32 37 s37/3 -4.20996869 +32 37 s37/6 -2.42257136 +32 37 s37/8 -2.78656970 +32 37 s37/10 -2.93498349 +32 38 s38/1 -5.78904879 +32 38 s38/3 -5.67851174 +32 38 s38/6 -6.03192979 +32 38 s38/8 -6.18820499 +32 38 s38/10 -5.87769842 +32 40 s40/1 -3.44022043 +32 40 s40/3 -3.63612052 +32 40 s40/6 -3.14926642 +32 40 s40/8 -3.09136808 +32 40 s40/10 -2.72566816 +35 3 s3/1 0.40981936 +35 3 s3/3 -0.79593203 +35 3 s3/6 -0.13664359 +35 3 s3/8 -0.47871260 +35 3 s3/10 -1.68098521 +35 4 s4/1 0.51750680 +35 4 s4/3 0.20232899 +35 4 s4/6 -0.85259744 +35 4 s4/8 0.32628997 +35 4 s4/10 -1.41454556 +35 7 s7/1 -3.61702805 +35 7 s7/3 -3.65121979 +35 7 s7/6 -3.29394490 +35 7 s7/8 -3.92770035 +35 7 s7/10 -2.84163833 +35 8 s8/1 -3.47411066 +35 8 s8/3 -2.66532580 +35 8 s8/6 -3.33548230 +35 8 s8/8 -2.72647725 +35 8 s8/10 -2.47506940 +35 9 s9/1 -0.15624861 +35 9 s9/3 0.01479039 +35 9 s9/6 -1.14476374 +35 9 s9/8 -0.17609224 +35 9 s9/10 -0.94316421 +35 13 s13/1 -0.88517559 +35 13 s13/3 -1.98943830 +35 13 s13/6 -1.94640249 +35 13 s13/8 -1.25678213 +35 13 s13/10 -1.35533095 +35 15 s15/1 -1.91755598 +35 15 s15/3 -1.86651819 +35 15 s15/6 -2.04959152 +35 15 s15/8 -1.32231077 +35 15 s15/10 0.98797528 +35 18 s18/1 -2.37508278 +35 18 s18/3 -0.52213717 +35 18 s18/6 -1.27716473 +35 18 s18/8 -0.62178402 +35 18 s18/10 -0.71813417 +35 19 s19/1 -2.74830673 +35 19 s19/3 -3.47042220 +35 19 s19/6 -3.44096957 +35 19 s19/8 -4.05293008 +35 19 s19/10 -2.88498749 +35 22 s22/1 -2.73449122 +35 22 s22/3 -2.27681750 +35 22 s22/6 -3.30598757 +35 22 s22/8 -2.82088969 +35 22 s22/10 -3.07824680 +35 23 s23/1 -1.60293184 +35 23 s23/3 -2.02627278 +35 23 s23/6 -1.69145264 +35 23 s23/8 -2.62506983 +35 23 s23/10 -1.72779549 +35 25 s25/1 1.67772930 +35 25 s25/3 1.32936312 +35 25 s25/6 1.98465444 +35 25 s25/8 -0.59973447 +35 25 s25/10 1.43413192 +35 28 s28/1 -3.57288134 +35 28 s28/3 -2.84298912 +35 28 s28/6 -3.25232935 +35 28 s28/8 -3.82886762 +35 28 s28/10 -2.92771664 +35 30 s30/1 0.01937254 +35 30 s30/3 -0.22424217 +35 30 s30/6 -0.70290480 +35 30 s30/8 -1.11118780 +35 30 s30/10 0.06505747 +35 31 s31/1 -1.26585474 +35 31 s31/3 -2.54968829 +35 31 s31/6 -1.08995980 +35 31 s31/8 -1.03510306 +35 31 s31/10 -2.67976728 +35 32 s32/1 -2.81893190 +35 32 s32/3 -3.13088555 +35 32 s32/6 -2.52326008 +35 32 s32/8 -3.05269586 +35 32 s32/10 -2.62903443 +35 35 s35/1 0.86825118 +35 35 s35/3 -0.89409714 +35 35 s35/6 2.89508438 +35 35 s35/8 3.09513059 +35 35 s35/10 -2.23120188 +35 37 s37/1 -2.93345462 +35 37 s37/3 -3.22283272 +35 37 s37/6 -3.63422465 +35 37 s37/8 -3.00011478 +35 37 s37/10 -2.93775456 +35 38 s38/1 -1.10038934 +35 38 s38/3 -0.32138380 +35 38 s38/6 -1.49382896 +35 38 s38/8 -0.88399216 +35 38 s38/10 -1.25307395 +35 40 s40/1 -0.47024132 +35 40 s40/3 -1.12932688 +35 40 s40/6 -0.08361409 +35 40 s40/8 -0.02460514 +35 40 s40/10 -0.58928711 +37 3 s3/1 -1.69824357 +37 3 s3/3 -2.07392667 +37 3 s3/6 -3.42157860 +37 3 s3/8 -3.12595538 +37 3 s3/10 -2.92732912 +37 4 s4/1 -3.41105609 +37 4 s4/3 -2.74266426 +37 4 s4/6 -3.22915207 +37 4 s4/8 -2.82520963 +37 4 s4/10 -4.79699705 +37 7 s7/1 -4.61533941 +37 7 s7/3 -4.86691482 +37 7 s7/6 -4.17278053 +37 7 s7/8 -5.15489391 +37 7 s7/10 -4.26834182 +37 8 s8/1 -4.71975271 +37 8 s8/3 -5.85799302 +37 8 s8/6 -5.47334379 +37 8 s8/8 -6.02713879 +37 8 s8/10 -5.84159878 +37 9 s9/1 -4.29377446 +37 9 s9/3 -3.94977877 +37 9 s9/6 -4.64852041 +37 9 s9/8 -4.78984429 +37 9 s9/10 -4.95752126 +37 13 s13/1 -1.38981323 +37 13 s13/3 -2.46700338 +37 13 s13/6 -2.33441296 +37 13 s13/8 -2.12444955 +37 13 s13/10 -1.89642188 +37 15 s15/1 -1.42006309 +37 15 s15/3 -1.52649380 +37 15 s15/6 -1.23757664 +37 15 s15/8 -2.23848101 +37 15 s15/10 -2.22980098 +37 18 s18/1 -4.70128462 +37 18 s18/3 -3.49292529 +37 18 s18/6 -3.81658739 +37 18 s18/8 -3.62775315 +37 18 s18/10 -4.54156069 +37 19 s19/1 -1.18741466 +37 19 s19/3 -1.43369176 +37 19 s19/6 -0.68240846 +37 19 s19/8 -0.60856918 +37 19 s19/10 -1.16226912 +37 22 s22/1 -1.29389693 +37 22 s22/3 -1.53001875 +37 22 s22/6 -2.66216288 +37 22 s22/8 -1.60331969 +37 22 s22/10 -1.15190649 +37 23 s23/1 -5.45601404 +37 23 s23/3 -5.11314533 +37 23 s23/6 -4.61734973 +37 23 s23/8 -5.84939572 +37 23 s23/10 -4.97345231 +37 25 s25/1 -3.58038547 +37 25 s25/3 -3.30413442 +37 25 s25/6 -2.32322887 +37 25 s25/8 -2.26160701 +37 25 s25/10 -3.49282864 +37 28 s28/1 -0.63201491 +37 28 s28/3 -1.01088220 +37 28 s28/6 -0.81826299 +37 28 s28/8 -1.48185388 +37 28 s28/10 -1.04619539 +37 30 s30/1 -4.49724511 +37 30 s30/3 -5.27669581 +37 30 s30/6 -4.46611430 +37 30 s30/8 -4.38696022 +37 30 s30/10 -4.22715814 +37 31 s31/1 -4.70816621 +37 31 s31/3 -2.09542171 +37 31 s31/6 -2.80346615 +37 31 s31/8 -3.89229451 +37 31 s31/10 -2.13492950 +37 32 s32/1 -2.83881356 +37 32 s32/3 -2.07536389 +37 32 s32/6 -2.19203431 +37 32 s32/8 -2.08469976 +37 32 s32/10 -1.65867167 +37 35 s35/1 -3.81755741 +37 35 s35/3 -1.53221574 +37 35 s35/6 -2.75335398 +37 35 s35/8 -3.57871563 +37 35 s35/10 -3.38505613 +37 37 s37/1 -1.31708964 +37 37 s37/3 -1.10177320 +37 37 s37/6 4.14557212 +37 37 s37/8 2.54042426 +37 37 s37/10 -0.41700137 +37 38 s38/1 -5.30817788 +37 38 s38/3 -4.25370005 +37 38 s38/6 -5.93696941 +37 38 s38/8 -5.97758641 +37 38 s38/10 -4.54836026 +37 40 s40/1 -3.37549639 +37 40 s40/3 -4.35081212 +37 40 s40/6 -3.23330659 +37 40 s40/8 -3.09198384 +37 40 s40/10 -2.86564027 +38 3 s3/1 1.25728025 +38 3 s3/3 -0.43495171 +38 3 s3/6 1.28210410 +38 3 s3/8 0.27613244 +38 3 s3/10 -1.07512764 +38 4 s4/1 0.75119395 +38 4 s4/3 -0.50217665 +38 4 s4/6 -2.07032591 +38 4 s4/8 -0.62759660 +38 4 s4/10 -1.22060763 +38 7 s7/1 -0.43833754 +38 7 s7/3 -0.30819194 +38 7 s7/6 -0.06150162 +38 7 s7/8 0.09662241 +38 7 s7/10 -1.78533863 +38 8 s8/1 -1.29773114 +38 8 s8/3 -1.04562261 +38 8 s8/6 -1.86736340 +38 8 s8/8 -1.73710624 +38 8 s8/10 -1.10506385 +38 9 s9/1 0.90563529 +38 9 s9/3 0.73363104 +38 9 s9/6 0.51902515 +38 9 s9/8 1.80028967 +38 9 s9/10 -0.93734886 +38 13 s13/1 -3.20742637 +38 13 s13/3 -4.28837233 +38 13 s13/6 -3.35435620 +38 13 s13/8 -3.54858347 +38 13 s13/10 -2.87732979 +38 15 s15/1 -1.52971316 +38 15 s15/3 -1.26505641 +38 15 s15/6 -1.77959805 +38 15 s15/8 -1.28090346 +38 15 s15/10 1.08439206 +38 18 s18/1 -4.02843918 +38 18 s18/3 -2.99662868 +38 18 s18/6 -2.78213140 +38 18 s18/8 -2.69506042 +38 18 s18/10 -2.14525991 +38 19 s19/1 -4.63802247 +38 19 s19/3 -5.88702849 +38 19 s19/6 -4.95786191 +38 19 s19/8 -4.84866895 +38 19 s19/10 -3.97857428 +38 22 s22/1 -1.86266347 +38 22 s22/3 -1.29566640 +38 22 s22/6 -1.96950550 +38 22 s22/8 -1.73579065 +38 22 s22/10 -2.78160859 +38 23 s23/1 3.60245043 +38 23 s23/3 1.03347742 +38 23 s23/6 1.52548157 +38 23 s23/8 0.56648503 +38 23 s23/10 2.55056171 +38 25 s25/1 0.74486191 +38 25 s25/3 0.39987370 +38 25 s25/6 -0.06261786 +38 25 s25/8 -2.03732313 +38 25 s25/10 -0.08185879 +38 28 s28/1 -4.43907798 +38 28 s28/3 -3.82538564 +38 28 s28/6 -3.96136949 +38 28 s28/8 -5.00965996 +38 28 s28/10 -4.83707010 +38 30 s30/1 2.12913847 +38 30 s30/3 2.25066243 +38 30 s30/6 2.61466416 +38 30 s30/8 1.00891625 +38 30 s30/10 2.38787926 +38 31 s31/1 0.62850723 +38 31 s31/3 -4.76627200 +38 31 s31/6 -1.45259661 +38 31 s31/8 -0.33965934 +38 31 s31/10 -4.98112362 +38 32 s32/1 -5.00419418 +38 32 s32/3 -5.47858190 +38 32 s32/6 -3.07023924 +38 32 s32/8 -4.48147532 +38 32 s32/10 -2.97276783 +38 35 s35/1 -0.09171088 +38 35 s35/3 -2.84761208 +38 35 s35/6 -1.08739376 +38 35 s35/8 -0.29937681 +38 35 s35/10 -2.98407286 +38 37 s37/1 -4.08349772 +38 37 s37/3 -4.45636026 +38 37 s37/6 -4.82165611 +38 37 s37/8 -3.79809372 +38 37 s37/10 -3.98495834 +38 38 s38/1 3.06673871 +38 38 s38/3 4.61434236 +38 38 s38/6 3.08495437 +38 38 s38/8 3.76649522 +38 38 s38/10 5.23987685 +38 40 s40/1 -1.24449909 +38 40 s40/3 -1.76607322 +38 40 s40/6 0.17339216 +38 40 s40/8 -0.37239480 +38 40 s40/10 -0.26943129 +40 3 s3/1 0.87665782 +40 3 s3/3 1.11819357 +40 3 s3/6 0.80186114 +40 3 s3/8 0.98118080 +40 3 s3/10 1.67201951 +40 4 s4/1 0.34191887 +40 4 s4/3 0.04769602 +40 4 s4/6 0.43622565 +40 4 s4/8 0.06139434 +40 4 s4/10 0.34346308 +40 7 s7/1 -0.14545210 +40 7 s7/3 -0.28507414 +40 7 s7/6 -0.16976610 +40 7 s7/8 -0.48862660 +40 7 s7/10 1.07906206 +40 8 s8/1 -2.60791438 +40 8 s8/3 -1.25812324 +40 8 s8/6 -1.49170353 +40 8 s8/8 -1.66171716 +40 8 s8/10 -1.24652551 +40 9 s9/1 -0.58335961 +40 9 s9/3 -0.33842397 +40 9 s9/6 -0.28334392 +40 9 s9/8 1.14037005 +40 9 s9/10 1.15310125 +40 13 s13/1 -0.50164906 +40 13 s13/3 -0.41827981 +40 13 s13/6 0.91088847 +40 13 s13/8 0.47258915 +40 13 s13/10 1.13098304 +40 15 s15/1 -1.53252810 +40 15 s15/3 -1.53711114 +40 15 s15/6 -1.57700568 +40 15 s15/8 -1.33699038 +40 15 s15/10 1.35628313 +40 18 s18/1 1.58572100 +40 18 s18/3 1.36996389 +40 18 s18/6 2.25785546 +40 18 s18/8 1.48553924 +40 18 s18/10 2.07169032 +40 19 s19/1 -2.63674260 +40 19 s19/3 -3.26797568 +40 19 s19/6 -3.19022229 +40 19 s19/8 -2.62226633 +40 19 s19/10 -2.59365487 +40 22 s22/1 -4.04496806 +40 22 s22/3 -3.56940254 +40 22 s22/6 -4.66868140 +40 22 s22/8 -4.04565704 +40 22 s22/10 -4.55251742 +40 23 s23/1 0.15610648 +40 23 s23/3 -1.45950462 +40 23 s23/6 -1.29681303 +40 23 s23/8 0.13223117 +40 23 s23/10 0.23506818 +40 25 s25/1 1.81717481 +40 25 s25/3 1.83577731 +40 25 s25/6 0.91391330 +40 25 s25/8 0.17766980 +40 25 s25/10 1.28163366 +40 28 s28/1 -1.19852041 +40 28 s28/3 -1.69321548 +40 28 s28/6 -0.91158920 +40 28 s28/8 -0.63545422 +40 28 s28/10 -2.73988382 +40 30 s30/1 -1.21659844 +40 30 s30/3 -2.22278273 +40 30 s30/6 -0.51638764 +40 30 s30/8 -3.01841757 +40 30 s30/10 -1.59869197 +40 31 s31/1 -1.24962540 +40 31 s31/3 -4.06071588 +40 31 s31/6 -1.43594529 +40 31 s31/8 -1.13499214 +40 31 s31/10 -4.06838613 +40 32 s32/1 -1.96577418 +40 32 s32/3 -2.79331539 +40 32 s32/6 -1.92914951 +40 32 s32/8 -1.99359145 +40 32 s32/10 -2.01722470 +40 35 s35/1 -1.22811040 +40 35 s35/3 -0.21949069 +40 35 s35/6 0.55891291 +40 35 s35/8 1.40848570 +40 35 s35/10 1.11026630 +40 37 s37/1 0.30265055 +40 37 s37/3 -0.17078220 +40 37 s37/6 -3.58805939 +40 37 s37/8 -2.97464014 +40 37 s37/10 -0.21116516 +40 38 s38/1 -1.44563354 +40 38 s38/3 -1.93949375 +40 38 s38/6 -2.09103668 +40 38 s38/8 -0.75697595 +40 38 s38/10 -1.09244927 +40 40 s40/1 2.18351295 +40 40 s40/3 4.95632680 +40 40 s40/6 1.58273576 +40 40 s40/8 2.37536414 +40 40 s40/10 -0.28599248 diff --git a/bob/bio/base/test/data/scores-ztnorm-calibrated-dev b/bob/bio/base/test/data/scores-ztnorm-calibrated-dev new file mode 100644 index 0000000000000000000000000000000000000000..cb022a1cc9b2c1b25d3cf1736544a644d8929095 --- /dev/null +++ b/bob/bio/base/test/data/scores-ztnorm-calibrated-dev @@ -0,0 +1,2000 @@ +3 3 s3/1 4.55060576 +3 3 s3/3 5.14283587 +3 3 s3/6 2.19351331 +3 3 s3/8 1.82455888 +3 3 s3/10 3.17454123 +3 4 s4/1 -3.97318504 +3 4 s4/3 -5.55433663 +3 4 s4/6 -5.25208618 +3 4 s4/8 -5.06167563 +3 4 s4/10 1.23076390 +3 7 s7/1 -1.42871162 +3 7 s7/3 -1.96950363 +3 7 s7/6 -1.99777466 +3 7 s7/8 -1.88853161 +3 7 s7/10 -1.26200302 +3 8 s8/1 -3.76831491 +3 8 s8/3 -4.24475895 +3 8 s8/6 -4.05352202 +3 8 s8/8 -4.95817686 +3 8 s8/10 -3.68148189 +3 9 s9/1 -1.08679985 +3 9 s9/3 -0.90393748 +3 9 s9/6 -2.36435778 +3 9 s9/8 -1.88676979 +3 9 s9/10 0.85000511 +3 13 s13/1 -2.95677825 +3 13 s13/3 -3.53029263 +3 13 s13/6 -1.13470236 +3 13 s13/8 -2.44761926 +3 13 s13/10 -2.19943835 +3 15 s15/1 -4.09487105 +3 15 s15/3 -4.44605083 +3 15 s15/6 -4.08542339 +3 15 s15/8 -5.12430363 +3 15 s15/10 -3.59614327 +3 18 s18/1 -0.37617967 +3 18 s18/3 -3.13538257 +3 18 s18/6 -3.04368409 +3 18 s18/8 -3.37755430 +3 18 s18/10 -2.76915583 +3 19 s19/1 -3.91169718 +3 19 s19/3 -3.91634343 +3 19 s19/6 -4.00670269 +3 19 s19/8 -4.30143170 +3 19 s19/10 -4.10172341 +3 22 s22/1 -3.34941745 +3 22 s22/3 -3.12725072 +3 22 s22/6 -3.65344930 +3 22 s22/8 -3.35342862 +3 22 s22/10 -3.77096775 +3 23 s23/1 -1.76049908 +3 23 s23/3 -2.14196626 +3 23 s23/6 -2.25111185 +3 23 s23/8 0.05194731 +3 23 s23/10 -1.30557948 +3 25 s25/1 -1.70988396 +3 25 s25/3 -1.47464106 +3 25 s25/6 -2.96191669 +3 25 s25/8 -5.23485724 +3 25 s25/10 -1.57826136 +3 28 s28/1 -2.14769406 +3 28 s28/3 -2.32592474 +3 28 s28/6 -1.80992521 +3 28 s28/8 -0.26714071 +3 28 s28/10 -3.40521535 +3 30 s30/1 -2.07620500 +3 30 s30/3 -2.55811524 +3 30 s30/6 -2.19842327 +3 30 s30/8 -3.10876482 +3 30 s30/10 -2.95963573 +3 31 s31/1 -1.09451001 +3 31 s31/3 -4.71589507 +3 31 s31/6 -2.45093301 +3 31 s31/8 -1.29881181 +3 31 s31/10 -4.63071354 +3 32 s32/1 -4.42210841 +3 32 s32/3 -4.28383803 +3 32 s32/6 -4.95114700 +3 32 s32/8 -4.65090614 +3 32 s32/10 -4.54207394 +3 35 s35/1 -3.53307879 +3 35 s35/3 -4.42953634 +3 35 s35/6 -3.83083790 +3 35 s35/8 -4.17134096 +3 35 s35/10 -1.31704330 +3 37 s37/1 -0.92515104 +3 37 s37/3 -1.45929708 +3 37 s37/6 -3.19390133 +3 37 s37/8 -2.98988361 +3 37 s37/10 -1.27584360 +3 38 s38/1 -1.92597877 +3 38 s38/3 -2.38526398 +3 38 s38/6 -2.29174835 +3 38 s38/8 -1.09813672 +3 38 s38/10 -1.95964829 +3 40 s40/1 -0.63423843 +3 40 s40/3 -0.27396330 +3 40 s40/6 -3.29848958 +3 40 s40/8 -1.67308096 +3 40 s40/10 -3.78585135 +4 3 s3/1 -0.94583052 +4 3 s3/3 -0.80774944 +4 3 s3/6 -1.17834271 +4 3 s3/8 -0.94637653 +4 3 s3/10 1.32325298 +4 4 s4/1 4.21790592 +4 4 s4/3 3.63110883 +4 4 s4/6 0.10330414 +4 4 s4/8 4.96484407 +4 4 s4/10 2.23502595 +4 7 s7/1 -3.48053855 +4 7 s7/3 -3.43834648 +4 7 s7/6 -3.53508079 +4 7 s7/8 -4.14320199 +4 7 s7/10 -2.53085222 +4 8 s8/1 -3.37842214 +4 8 s8/3 -1.59549964 +4 8 s8/6 -1.86865336 +4 8 s8/8 -1.32849482 +4 8 s8/10 0.12929683 +4 9 s9/1 -0.17907672 +4 9 s9/3 -0.19516052 +4 9 s9/6 -1.82480952 +4 9 s9/8 -0.99550973 +4 9 s9/10 0.15375046 +4 13 s13/1 -3.52435939 +4 13 s13/3 -4.68394650 +4 13 s13/6 -2.38706128 +4 13 s13/8 -3.94506030 +4 13 s13/10 -3.15116035 +4 15 s15/1 -3.43243336 +4 15 s15/3 -3.12357869 +4 15 s15/6 -3.95943258 +4 15 s15/8 -2.56934992 +4 15 s15/10 -3.78008888 +4 18 s18/1 -1.25300257 +4 18 s18/3 -3.36800490 +4 18 s18/6 -2.58318708 +4 18 s18/8 -3.25265980 +4 18 s18/10 -3.09060781 +4 19 s19/1 -3.47514965 +4 19 s19/3 -3.85634774 +4 19 s19/6 -3.93848029 +4 19 s19/8 -4.76862893 +4 19 s19/10 -3.43271280 +4 22 s22/1 -2.83084806 +4 22 s22/3 -2.16599496 +4 22 s22/6 -3.21533687 +4 22 s22/8 -2.76401290 +4 22 s22/10 -3.52125588 +4 23 s23/1 -2.46763112 +4 23 s23/3 -3.46951058 +4 23 s23/6 -4.03352571 +4 23 s23/8 -2.15048364 +4 23 s23/10 -2.55688989 +4 25 s25/1 0.81846225 +4 25 s25/3 1.04718661 +4 25 s25/6 0.42248721 +4 25 s25/8 -3.78552229 +4 25 s25/10 0.96700275 +4 28 s28/1 -4.50005610 +4 28 s28/3 -4.06293648 +4 28 s28/6 -4.06985021 +4 28 s28/8 -2.62362743 +4 28 s28/10 -3.82671115 +4 30 s30/1 -0.89525790 +4 30 s30/3 -1.64352416 +4 30 s30/6 -1.48892681 +4 30 s30/8 -2.08294286 +4 30 s30/10 -1.86140236 +4 31 s31/1 -1.11683495 +4 31 s31/3 -3.80424372 +4 31 s31/6 -0.33480569 +4 31 s31/8 -0.03081953 +4 31 s31/10 -3.70869154 +4 32 s32/1 -3.54966136 +4 32 s32/3 -3.61469767 +4 32 s32/6 -4.19761689 +4 32 s32/8 -3.99019172 +4 32 s32/10 -4.16731804 +4 35 s35/1 -5.56481483 +4 35 s35/3 -5.18326225 +4 35 s35/6 -0.93198842 +4 35 s35/8 -1.70015156 +4 35 s35/10 -5.24201767 +4 37 s37/1 -3.48475135 +4 37 s37/3 -4.17902030 +4 37 s37/6 -3.95850301 +4 37 s37/8 -3.83206260 +4 37 s37/10 -3.30940821 +4 38 s38/1 -2.74905634 +4 38 s38/3 -2.16130151 +4 38 s38/6 -3.22914801 +4 38 s38/8 -1.57493316 +4 38 s38/10 -2.81940806 +4 40 s40/1 -2.30465180 +4 40 s40/3 -1.56479519 +4 40 s40/6 -4.10457006 +4 40 s40/8 -2.66652192 +4 40 s40/10 -5.91388314 +7 3 s3/1 -2.23941106 +7 3 s3/3 -2.17057097 +7 3 s3/6 -2.10298280 +7 3 s3/8 -2.92214914 +7 3 s3/10 -1.06383421 +7 4 s4/1 -4.71421925 +7 4 s4/3 -7.06417032 +7 4 s4/6 -6.41254179 +7 4 s4/8 -6.79007487 +7 4 s4/10 -2.17022334 +7 7 s7/1 5.20345792 +7 7 s7/3 5.29932126 +7 7 s7/6 5.50166090 +7 7 s7/8 3.29810717 +7 7 s7/10 5.36399978 +7 8 s8/1 -2.60362889 +7 8 s8/3 -1.72943208 +7 8 s8/6 -1.81476477 +7 8 s8/8 -2.92329360 +7 8 s8/10 -1.90909678 +7 9 s9/1 -2.42295551 +7 9 s9/3 -2.99018086 +7 9 s9/6 -3.64396625 +7 9 s9/8 -2.44907478 +7 9 s9/10 -2.44960619 +7 13 s13/1 -5.36151997 +7 13 s13/3 -5.11863411 +7 13 s13/6 -5.13088153 +7 13 s13/8 -5.13006009 +7 13 s13/10 -4.95301646 +7 15 s15/1 -0.67925933 +7 15 s15/3 -0.51081374 +7 15 s15/6 -1.43136889 +7 15 s15/8 -0.20811661 +7 15 s15/10 -3.52265029 +7 18 s18/1 -3.48929515 +7 18 s18/3 -5.95984696 +7 18 s18/6 -4.36698267 +7 18 s18/8 -5.57991327 +7 18 s18/10 -4.91427234 +7 19 s19/1 -3.49036465 +7 19 s19/3 -3.67104486 +7 19 s19/6 -4.09616114 +7 19 s19/8 -2.41164406 +7 19 s19/10 -3.81904045 +7 22 s22/1 -2.07566940 +7 22 s22/3 -2.02626500 +7 22 s22/6 -1.29526536 +7 22 s22/8 -1.73373993 +7 22 s22/10 -1.98991660 +7 23 s23/1 -0.20609330 +7 23 s23/3 -0.58613457 +7 23 s23/6 -1.52087630 +7 23 s23/8 -0.01367738 +7 23 s23/10 0.11282035 +7 25 s25/1 -4.65656807 +7 25 s25/3 -5.13888028 +7 25 s25/6 -6.36691095 +7 25 s25/8 -8.13490997 +7 25 s25/10 -4.85388572 +7 28 s28/1 -3.86022798 +7 28 s28/3 -4.42541684 +7 28 s28/6 -3.86963915 +7 28 s28/8 -2.81490732 +7 28 s28/10 -4.61094192 +7 30 s30/1 -1.67246261 +7 30 s30/3 -1.45760023 +7 30 s30/6 -1.30179319 +7 30 s30/8 -2.14869523 +7 30 s30/10 -2.04065766 +7 31 s31/1 -0.91413204 +7 31 s31/3 -3.47988277 +7 31 s31/6 -2.84676377 +7 31 s31/8 -1.86010013 +7 31 s31/10 -3.69174063 +7 32 s32/1 -3.10332230 +7 32 s32/3 -3.98281217 +7 32 s32/6 -1.83773509 +7 32 s32/8 -3.49894460 +7 32 s32/10 -1.27012954 +7 35 s35/1 -3.19336001 +7 35 s35/3 -4.77540097 +7 35 s35/6 -6.12527489 +7 35 s35/8 -4.77030969 +7 35 s35/10 -1.31333610 +7 37 s37/1 -3.16685823 +7 37 s37/3 -3.29656855 +7 37 s37/6 -2.55923379 +7 37 s37/8 -2.38056387 +7 37 s37/10 -3.32288665 +7 38 s38/1 -1.00392734 +7 38 s38/3 -1.63553343 +7 38 s38/6 -1.06532410 +7 38 s38/8 -0.40209071 +7 38 s38/10 -0.43276516 +7 40 s40/1 -4.09905359 +7 40 s40/3 -2.65070807 +7 40 s40/6 -4.53074023 +7 40 s40/8 -4.53804538 +7 40 s40/10 -6.27510996 +8 3 s3/1 -5.74447618 +8 3 s3/3 -5.44405318 +8 3 s3/6 -2.28238497 +8 3 s3/8 -1.16305244 +8 3 s3/10 -5.52671057 +8 4 s4/1 -2.12019026 +8 4 s4/3 -2.39816649 +8 4 s4/6 -2.71729069 +8 4 s4/8 -3.53034244 +8 4 s4/10 -6.00868047 +8 7 s7/1 -2.73016634 +8 7 s7/3 -1.97769331 +8 7 s7/6 -1.25323713 +8 7 s7/8 -0.24295494 +8 7 s7/10 -4.42627015 +8 8 s8/1 5.87646675 +8 8 s8/3 5.13278987 +8 8 s8/6 5.48129289 +8 8 s8/8 4.77292588 +8 8 s8/10 4.21781496 +8 9 s9/1 -4.97755883 +8 9 s9/3 -5.53896541 +8 9 s9/6 -1.00075799 +8 9 s9/8 -1.88469319 +8 9 s9/10 -5.90080677 +8 13 s13/1 -3.82944403 +8 13 s13/3 -2.65384130 +8 13 s13/6 -4.78095670 +8 13 s13/8 -3.77875335 +8 13 s13/10 -3.67452371 +8 15 s15/1 -3.35930539 +8 15 s15/3 -2.38094901 +8 15 s15/6 -2.87214939 +8 15 s15/8 -2.23400625 +8 15 s15/10 -1.48485219 +8 18 s18/1 -4.99253438 +8 18 s18/3 -3.05341107 +8 18 s18/6 -2.69500024 +8 18 s18/8 -3.42641897 +8 18 s18/10 -2.80068119 +8 19 s19/1 -2.73505689 +8 19 s19/3 -3.10143613 +8 19 s19/6 -2.43658672 +8 19 s19/8 -0.48356560 +8 19 s19/10 -1.80249482 +8 22 s22/1 -2.48138415 +8 22 s22/3 -2.82434171 +8 22 s22/6 -1.82971701 +8 22 s22/8 -2.22667433 +8 22 s22/10 -2.42555141 +8 23 s23/1 -0.01351984 +8 23 s23/3 -3.01835073 +8 23 s23/6 -1.72573320 +8 23 s23/8 -3.70464405 +8 23 s23/10 0.27320126 +8 25 s25/1 -5.01974880 +8 25 s25/3 -5.78172630 +8 25 s25/6 -5.01161464 +8 25 s25/8 -3.01918970 +8 25 s25/10 -5.30534200 +8 28 s28/1 -1.82553805 +8 28 s28/3 -1.94526453 +8 28 s28/6 -2.10047368 +8 28 s28/8 -5.43789730 +8 28 s28/10 -2.34790425 +8 30 s30/1 -2.99967483 +8 30 s30/3 -2.48580662 +8 30 s30/6 -2.65372623 +8 30 s30/8 -3.02900956 +8 30 s30/10 -2.24274544 +8 31 s31/1 -4.40176140 +8 31 s31/3 -3.98543972 +8 31 s31/6 -5.96290937 +8 31 s31/8 -5.35769905 +8 31 s31/10 -3.81074047 +8 32 s32/1 -2.13466502 +8 32 s32/3 -2.07326682 +8 32 s32/6 -0.16611082 +8 32 s32/8 -0.46114374 +8 32 s32/10 -0.15816993 +8 35 s35/1 -4.56310898 +8 35 s35/3 -2.99174743 +8 35 s35/6 -4.61445235 +8 35 s35/8 -4.25358346 +8 35 s35/10 -4.37530421 +8 37 s37/1 -4.47316430 +8 37 s37/3 -3.96613280 +8 37 s37/6 -3.30831427 +8 37 s37/8 -3.15416079 +8 37 s37/10 -3.71086808 +8 38 s38/1 0.33603851 +8 38 s38/3 -0.41955529 +8 38 s38/6 0.22233379 +8 38 s38/8 -2.08343085 +8 38 s38/10 -1.44716605 +8 40 s40/1 -6.34486083 +8 40 s40/3 -5.28783585 +8 40 s40/6 -3.81358158 +8 40 s40/8 -5.04192362 +8 40 s40/10 -1.66283622 +9 3 s3/1 -2.65779961 +9 3 s3/3 -3.01904917 +9 3 s3/6 -2.66847027 +9 3 s3/8 -3.10559909 +9 3 s3/10 -2.90678458 +9 4 s4/1 -1.18572119 +9 4 s4/3 -2.63384282 +9 4 s4/6 -4.58963371 +9 4 s4/8 -2.82986352 +9 4 s4/10 -1.72391829 +9 7 s7/1 -2.27652870 +9 7 s7/3 -2.50355894 +9 7 s7/6 -2.82576753 +9 7 s7/8 -1.88170246 +9 7 s7/10 -2.53496615 +9 8 s8/1 -2.74558833 +9 8 s8/3 -1.97729889 +9 8 s8/6 -2.62952858 +9 8 s8/8 -2.21606334 +9 8 s8/10 -1.70360740 +9 9 s9/1 3.48445316 +9 9 s9/3 4.17200741 +9 9 s9/6 2.16541589 +9 9 s9/8 1.88689486 +9 9 s9/10 1.38181885 +9 13 s13/1 -3.78740457 +9 13 s13/3 -4.56538692 +9 13 s13/6 -3.96920065 +9 13 s13/8 -4.39247741 +9 13 s13/10 -4.28856673 +9 15 s15/1 -4.76490089 +9 15 s15/3 -4.69676477 +9 15 s15/6 -4.95944728 +9 15 s15/8 -4.88677390 +9 15 s15/10 -3.66848991 +9 18 s18/1 -3.49548320 +9 18 s18/3 -4.30851596 +9 18 s18/6 -4.59688462 +9 18 s18/8 -4.31930812 +9 18 s18/10 -3.42598064 +9 19 s19/1 -3.94501353 +9 19 s19/3 -4.00940971 +9 19 s19/6 -4.00124272 +9 19 s19/8 -4.54613461 +9 19 s19/10 -3.93049873 +9 22 s22/1 -2.71513137 +9 22 s22/3 -2.42215935 +9 22 s22/6 -2.22828036 +9 22 s22/8 -2.40735308 +9 22 s22/10 -2.83151298 +9 23 s23/1 -0.98167304 +9 23 s23/3 1.05319679 +9 23 s23/6 -1.43255938 +9 23 s23/8 -0.78239657 +9 23 s23/10 -1.30278234 +9 25 s25/1 -0.84942016 +9 25 s25/3 -1.01089596 +9 25 s25/6 -2.44612887 +9 25 s25/8 -4.42183060 +9 25 s25/10 -1.11671384 +9 28 s28/1 -4.24223341 +9 28 s28/3 -4.01947715 +9 28 s28/6 -4.11633887 +9 28 s28/8 -3.48979468 +9 28 s28/10 -4.12395581 +9 30 s30/1 -0.67741862 +9 30 s30/3 -0.09722096 +9 30 s30/6 -0.92490132 +9 30 s30/8 -1.14533661 +9 30 s30/10 -0.91612312 +9 31 s31/1 0.71112403 +9 31 s31/3 -3.73617892 +9 31 s31/6 -1.57330402 +9 31 s31/8 0.13496345 +9 31 s31/10 -3.75695893 +9 32 s32/1 -4.85766422 +9 32 s32/3 -4.26337203 +9 32 s32/6 -5.48574913 +9 32 s32/8 -4.66282084 +9 32 s32/10 -5.48807395 +9 35 s35/1 -0.48947110 +9 35 s35/3 -6.56197067 +9 35 s35/6 -3.80631876 +9 35 s35/8 -2.03941803 +9 35 s35/10 -4.95078057 +9 37 s37/1 -3.92876508 +9 37 s37/3 -3.91605945 +9 37 s37/6 -3.87072425 +9 37 s37/8 -4.22795418 +9 37 s37/10 -4.49221904 +9 38 s38/1 -0.38723934 +9 38 s38/3 -0.43005492 +9 38 s38/6 -0.12288727 +9 38 s38/8 0.22396279 +9 38 s38/10 0.12842879 +9 40 s40/1 -1.49761895 +9 40 s40/3 -2.19065104 +9 40 s40/6 0.88626858 +9 40 s40/8 -0.01251968 +9 40 s40/10 -2.59923154 +13 3 s3/1 -3.86971744 +13 3 s3/3 -3.61524978 +13 3 s3/6 -4.40186966 +13 3 s3/8 -3.48013422 +13 3 s3/10 -4.05059160 +13 4 s4/1 -4.37811648 +13 4 s4/3 -4.33081795 +13 4 s4/6 -3.40188304 +13 4 s4/8 -4.40866598 +13 4 s4/10 -4.80200935 +13 7 s7/1 -4.80469555 +13 7 s7/3 -4.80996873 +13 7 s7/6 -4.70784171 +13 7 s7/8 -4.64304493 +13 7 s7/10 -4.22077171 +13 8 s8/1 -2.96884487 +13 8 s8/3 -3.99482796 +13 8 s8/6 -3.38375228 +13 8 s8/8 -3.69454412 +13 8 s8/10 -4.80895745 +13 9 s9/1 -5.26529664 +13 9 s9/3 -5.16567942 +13 9 s9/6 -5.04502668 +13 9 s9/8 -4.43146256 +13 9 s9/10 -4.98365808 +13 13 s13/1 5.29651604 +13 13 s13/3 3.31393945 +13 13 s13/6 2.46440128 +13 13 s13/8 3.18982261 +13 13 s13/10 3.95254438 +13 15 s15/1 -5.59449028 +13 15 s15/3 -5.94027620 +13 15 s15/6 -4.66478386 +13 15 s15/8 -6.62146430 +13 15 s15/10 -4.32772328 +13 18 s18/1 -1.21791067 +13 18 s18/3 1.17653869 +13 18 s18/6 0.19209686 +13 18 s18/8 1.40085333 +13 18 s18/10 0.48279240 +13 19 s19/1 -2.03871388 +13 19 s19/3 -1.03328172 +13 19 s19/6 -0.46713718 +13 19 s19/8 -0.85860186 +13 19 s19/10 -1.70515362 +13 22 s22/1 -4.11744362 +13 22 s22/3 -4.56156443 +13 22 s22/6 -3.90316289 +13 22 s22/8 -4.06428127 +13 22 s22/10 -2.97047359 +13 23 s23/1 -4.67146791 +13 23 s23/3 -5.38501725 +13 23 s23/6 -4.76871013 +13 23 s23/8 -5.02365592 +13 23 s23/10 -5.13512780 +13 25 s25/1 -3.42933316 +13 25 s25/3 -3.05116367 +13 25 s25/6 -1.69621741 +13 25 s25/8 1.31526330 +13 25 s25/10 -3.09104519 +13 28 s28/1 2.03765950 +13 28 s28/3 1.79429610 +13 28 s28/6 1.78641561 +13 28 s28/8 0.62002168 +13 28 s28/10 2.71913220 +13 30 s30/1 -6.27889582 +13 30 s30/3 -5.65299081 +13 30 s30/6 -6.20515024 +13 30 s30/8 -5.09062189 +13 30 s30/10 -5.97370125 +13 31 s31/1 -5.51495480 +13 31 s31/3 -2.84638721 +13 31 s31/6 -5.56377745 +13 31 s31/8 -5.67359956 +13 31 s31/10 -2.96346060 +13 32 s32/1 -1.77969105 +13 32 s32/3 -1.32965432 +13 32 s32/6 -2.87324345 +13 32 s32/8 -1.64027996 +13 32 s32/10 -2.94651832 +13 35 s35/1 -0.55069620 +13 35 s35/3 -1.43655333 +13 35 s35/6 -2.53500132 +13 35 s35/8 -3.49116354 +13 35 s35/10 -1.59012691 +13 37 s37/1 2.30829569 +13 37 s37/3 2.89024964 +13 37 s37/6 -1.22699185 +13 37 s37/8 -1.45578177 +13 37 s37/10 1.56275677 +13 38 s38/1 -4.24177108 +13 38 s38/3 -3.53922148 +13 38 s38/6 -3.93684353 +13 38 s38/8 -4.60832471 +13 38 s38/10 -4.03500902 +13 40 s40/1 -0.14673475 +13 40 s40/3 -2.29394747 +13 40 s40/6 0.96653012 +13 40 s40/8 0.49427584 +13 40 s40/10 2.40862335 +15 3 s3/1 -3.72465314 +15 3 s3/3 -3.97616580 +15 3 s3/6 -3.26202329 +15 3 s3/8 -3.44753646 +15 3 s3/10 -4.46164753 +15 4 s4/1 -0.89936015 +15 4 s4/3 -2.23792112 +15 4 s4/6 -4.47168432 +15 4 s4/8 -2.98589363 +15 4 s4/10 -4.19942438 +15 7 s7/1 -3.01891813 +15 7 s7/3 -2.45770200 +15 7 s7/6 -2.08753465 +15 7 s7/8 -1.38256359 +15 7 s7/10 -3.23816703 +15 8 s8/1 -1.59299207 +15 8 s8/3 -3.34446926 +15 8 s8/6 -3.89269843 +15 8 s8/8 -3.33575250 +15 8 s8/10 -4.34051383 +15 9 s9/1 -2.85059736 +15 9 s9/3 -3.23455627 +15 9 s9/6 -0.11690542 +15 9 s9/8 0.07568155 +15 9 s9/10 -3.08091475 +15 13 s13/1 -3.18577538 +15 13 s13/3 -2.32876125 +15 13 s13/6 -3.90119704 +15 13 s13/8 -3.13253743 +15 13 s13/10 -3.08185352 +15 15 s15/1 -3.51271047 +15 15 s15/3 -3.00947056 +15 15 s15/6 -3.16082307 +15 15 s15/8 -0.76478760 +15 15 s15/10 6.66621111 +15 18 s18/1 -3.88937007 +15 18 s18/3 -0.84130496 +15 18 s18/6 -1.34449728 +15 18 s18/8 -0.88677456 +15 18 s18/10 -1.36827928 +15 19 s19/1 -4.35959888 +15 19 s19/3 -4.41708486 +15 19 s19/6 -4.67740631 +15 19 s19/8 -4.82114823 +15 19 s19/10 -4.40140829 +15 22 s22/1 -2.77620226 +15 22 s22/3 -2.65217053 +15 22 s22/6 -2.01922769 +15 22 s22/8 -2.57733427 +15 22 s22/10 -2.71968838 +15 23 s23/1 -0.05018570 +15 23 s23/3 -1.05501549 +15 23 s23/6 0.84950287 +15 23 s23/8 -2.39588438 +15 23 s23/10 -0.39542758 +15 25 s25/1 -1.52795666 +15 25 s25/3 -2.95618059 +15 25 s25/6 -3.04825431 +15 25 s25/8 -1.99655811 +15 25 s25/10 -3.38854958 +15 28 s28/1 -3.89879190 +15 28 s28/3 -4.34753215 +15 28 s28/6 -3.96104445 +15 28 s28/8 -5.80014835 +15 28 s28/10 -4.95520073 +15 30 s30/1 -0.73254701 +15 30 s30/3 -0.80868417 +15 30 s30/6 -0.07352191 +15 30 s30/8 -0.98137636 +15 30 s30/10 -0.37292963 +15 31 s31/1 -0.90029130 +15 31 s31/3 -3.12574128 +15 31 s31/6 -1.91917105 +15 31 s31/8 -1.46951089 +15 31 s31/10 -3.43689763 +15 32 s32/1 -4.46905903 +15 32 s32/3 -3.39064040 +15 32 s32/6 -4.75481835 +15 32 s32/8 -3.59618688 +15 32 s32/10 -4.45708103 +15 35 s35/1 1.33600275 +15 35 s35/3 1.68349066 +15 35 s35/6 -3.39313462 +15 35 s35/8 -0.72636052 +15 35 s35/10 2.20344878 +15 37 s37/1 -4.06351698 +15 37 s37/3 -3.72182733 +15 37 s37/6 -4.31115397 +15 37 s37/8 -4.46234789 +15 37 s37/10 -4.61731720 +15 38 s38/1 -0.75663258 +15 38 s38/3 -0.99380260 +15 38 s38/6 -0.60771717 +15 38 s38/8 -1.69597931 +15 38 s38/10 -1.36766878 +15 40 s40/1 -2.24691003 +15 40 s40/3 -2.09885041 +15 40 s40/6 -0.88747023 +15 40 s40/8 -2.01444585 +15 40 s40/10 1.82944411 +18 3 s3/1 -3.37970374 +18 3 s3/3 -1.38445970 +18 3 s3/6 -4.00448441 +18 3 s3/8 -3.86331015 +18 3 s3/10 -0.72173930 +18 4 s4/1 -5.08438076 +18 4 s4/3 -6.19089746 +18 4 s4/6 -2.09920794 +18 4 s4/8 -4.90110822 +18 4 s4/10 -0.65654592 +18 7 s7/1 -2.29610509 +18 7 s7/3 -2.30133876 +18 7 s7/6 -3.25860391 +18 7 s7/8 -3.00681299 +18 7 s7/10 -1.23657173 +18 8 s8/1 -3.40128281 +18 8 s8/3 -2.75230407 +18 8 s8/6 -2.46433719 +18 8 s8/8 -2.47757367 +18 8 s8/10 -2.05884244 +18 9 s9/1 -4.45347639 +18 9 s9/3 -4.33799014 +18 9 s9/6 -5.84362244 +18 9 s9/8 -4.13138743 +18 9 s9/10 -1.47012743 +18 13 s13/1 -0.28219210 +18 13 s13/3 1.04451300 +18 13 s13/6 2.65276877 +18 13 s13/8 0.78868757 +18 13 s13/10 0.90925787 +18 15 s15/1 -4.78460960 +18 15 s15/3 -5.17745870 +18 15 s15/6 -4.50002415 +18 15 s15/8 -5.22316142 +18 15 s15/10 -4.47189390 +18 18 s18/1 4.92023546 +18 18 s18/3 1.68947693 +18 18 s18/6 2.44680684 +18 18 s18/8 1.91138420 +18 18 s18/10 2.06204080 +18 19 s19/1 -2.78877197 +18 19 s19/3 -1.91355312 +18 19 s19/6 -2.53256445 +18 19 s19/8 -1.98584896 +18 19 s19/10 -3.20657552 +18 22 s22/1 -5.23242020 +18 22 s22/3 -5.52325289 +18 22 s22/6 -5.31107749 +18 22 s22/8 -5.33463488 +18 22 s22/10 -4.85700168 +18 23 s23/1 -4.12603150 +18 23 s23/3 -3.72303777 +18 23 s23/6 -5.00138587 +18 23 s23/8 -2.16873464 +18 23 s23/10 -4.68604935 +18 25 s25/1 -1.73772799 +18 25 s25/3 -1.17007011 +18 25 s25/6 -1.66332093 +18 25 s25/8 -1.80404068 +18 25 s25/10 -1.27935392 +18 28 s28/1 -1.23544144 +18 28 s28/3 -1.76481069 +18 28 s28/6 -1.43078223 +18 28 s28/8 0.46240357 +18 28 s28/10 -1.28896874 +18 30 s30/1 -5.08827396 +18 30 s30/3 -5.08625285 +18 30 s30/6 -5.14372796 +18 30 s30/8 -5.34685549 +18 30 s30/10 -5.65197454 +18 31 s31/1 -5.33268301 +18 31 s31/3 -3.11945338 +18 31 s31/6 -5.84355837 +18 31 s31/8 -5.56931379 +18 31 s31/10 -2.94022461 +18 32 s32/1 0.17673366 +18 32 s32/3 -1.30272648 +18 32 s32/6 -2.49292886 +18 32 s32/8 -1.88002277 +18 32 s32/10 -3.57471612 +18 35 s35/1 -3.18439534 +18 35 s35/3 -3.05877536 +18 35 s35/6 -1.00609851 +18 35 s35/8 -1.92565909 +18 35 s35/10 0.10882837 +18 37 s37/1 0.22019095 +18 37 s37/3 -0.00834541 +18 37 s37/6 -3.30569308 +18 37 s37/8 -3.82645237 +18 37 s37/10 -0.16517560 +18 38 s38/1 -4.98069169 +18 38 s38/3 -5.73819017 +18 38 s38/6 -4.74480135 +18 38 s38/8 -3.64833507 +18 38 s38/10 -4.91666013 +18 40 s40/1 1.87417360 +18 40 s40/3 2.19226956 +18 40 s40/6 -0.14907447 +18 40 s40/8 0.84088168 +18 40 s40/10 -1.79012178 +19 3 s3/1 -5.94083960 +19 3 s3/3 -4.66242783 +19 3 s3/6 -5.25854602 +19 3 s3/8 -5.63887387 +19 3 s3/10 -4.19766964 +19 4 s4/1 -6.08222452 +19 4 s4/3 -3.53869568 +19 4 s4/6 0.45255582 +19 4 s4/8 -3.38023871 +19 4 s4/10 -4.03406941 +19 7 s7/1 -4.12379615 +19 7 s7/3 -3.90758203 +19 7 s7/6 -3.73849420 +19 7 s7/8 -4.40790598 +19 7 s7/10 -3.43200947 +19 8 s8/1 -2.67723827 +19 8 s8/3 -1.97926437 +19 8 s8/6 -1.38104082 +19 8 s8/8 -0.63573404 +19 8 s8/10 -2.41154556 +19 9 s9/1 -5.51606327 +19 9 s9/3 -5.22872623 +19 9 s9/6 -5.68543535 +19 9 s9/8 -6.24862407 +19 9 s9/10 -5.23719284 +19 13 s13/1 -0.82098744 +19 13 s13/3 0.26017806 +19 13 s13/6 -1.40221057 +19 13 s13/8 -0.02586762 +19 13 s13/10 -1.27453130 +19 15 s15/1 -1.34988996 +19 15 s15/3 -1.09839531 +19 15 s15/6 -0.44767317 +19 15 s15/8 -2.36637982 +19 15 s15/10 -5.25560556 +19 18 s18/1 -1.96104561 +19 18 s18/3 -1.47394053 +19 18 s18/6 -1.34305656 +19 18 s18/8 -1.21190665 +19 18 s18/10 -2.38922909 +19 19 s19/1 4.40334627 +19 19 s19/3 4.04425120 +19 19 s19/6 3.23949330 +19 19 s19/8 1.54665928 +19 19 s19/10 3.96087764 +19 22 s22/1 -2.51756174 +19 22 s22/3 -3.11874681 +19 22 s22/6 -2.94773913 +19 22 s22/8 -2.82005415 +19 22 s22/10 -1.85440628 +19 23 s23/1 -5.71104973 +19 23 s23/3 -6.11889340 +19 23 s23/6 -6.07807237 +19 23 s23/8 -5.04735689 +19 23 s23/10 -5.68969500 +19 25 s25/1 -5.41825032 +19 25 s25/3 -4.38756924 +19 25 s25/6 -4.23805978 +19 25 s25/8 -0.97397445 +19 25 s25/10 -3.95546132 +19 28 s28/1 -0.58236177 +19 28 s28/3 -0.47258259 +19 28 s28/6 -1.27590197 +19 28 s28/8 -1.38734647 +19 28 s28/10 0.92340194 +19 30 s30/1 -5.34087960 +19 30 s30/3 -5.24803231 +19 30 s30/6 -5.41460910 +19 30 s30/8 -4.27295437 +19 30 s30/10 -5.01684035 +19 31 s31/1 -5.32947285 +19 31 s31/3 -0.22141507 +19 31 s31/6 -3.49582128 +19 31 s31/8 -4.91829201 +19 31 s31/10 -0.79189523 +19 32 s32/1 0.05202114 +19 32 s32/3 0.82023443 +19 32 s32/6 0.32489830 +19 32 s32/8 0.62486301 +19 32 s32/10 0.16354617 +19 35 s35/1 -4.77657826 +19 35 s35/3 -1.26693865 +19 35 s35/6 -2.28890363 +19 35 s35/8 -3.93447578 +19 35 s35/10 -3.42035658 +19 37 s37/1 -1.93946227 +19 37 s37/3 -1.61620433 +19 37 s37/6 -0.96339216 +19 37 s37/8 -1.21288868 +19 37 s37/10 -0.99692189 +19 38 s38/1 -5.63599508 +19 38 s38/3 -5.45946139 +19 38 s38/6 -5.31293747 +19 38 s38/8 -5.50712294 +19 38 s38/10 -5.68168473 +19 40 s40/1 -4.56661024 +19 40 s40/3 -4.27385007 +19 40 s40/6 -5.15224709 +19 40 s40/8 -4.97718921 +19 40 s40/10 -4.22882840 +22 3 s3/1 -4.92308169 +22 3 s3/3 -4.32158174 +22 3 s3/6 -7.13323906 +22 3 s3/8 -6.63266310 +22 3 s3/10 -5.14172060 +22 4 s4/1 -4.43724396 +22 4 s4/3 -3.06686106 +22 4 s4/6 -6.48559887 +22 4 s4/8 -3.78069933 +22 4 s4/10 -4.92069834 +22 7 s7/1 -3.11304008 +22 7 s7/3 -3.56583912 +22 7 s7/6 -3.21981003 +22 7 s7/8 -2.88472486 +22 7 s7/10 -3.96028620 +22 8 s8/1 -2.45809324 +22 8 s8/3 -4.23490161 +22 8 s8/6 -3.80147678 +22 8 s8/8 -4.16693607 +22 8 s8/10 -4.85237063 +22 9 s9/1 -2.59078918 +22 9 s9/3 -2.97536104 +22 9 s9/6 -2.79196257 +22 9 s9/8 -4.54179825 +22 9 s9/10 -4.05924150 +22 13 s13/1 -3.21106296 +22 13 s13/3 -2.88034001 +22 13 s13/6 -4.79661264 +22 13 s13/8 -4.67307726 +22 13 s13/10 -4.64468200 +22 15 s15/1 -1.77951795 +22 15 s15/3 -1.32043282 +22 15 s15/6 -1.87937581 +22 15 s15/8 -0.34217049 +22 15 s15/10 -2.94607612 +22 18 s18/1 -5.35440331 +22 18 s18/3 -5.56631962 +22 18 s18/6 -6.13198806 +22 18 s18/8 -5.69653862 +22 18 s18/10 -6.64649341 +22 19 s19/1 -2.10976995 +22 19 s19/3 -2.16062522 +22 19 s19/6 -1.34774899 +22 19 s19/8 -2.31452148 +22 19 s19/10 -1.41915356 +22 22 s22/1 4.17945290 +22 22 s22/3 3.56897815 +22 22 s22/6 4.19650299 +22 22 s22/8 3.98578471 +22 22 s22/10 4.54933870 +22 23 s23/1 -4.04977569 +22 23 s23/3 -2.15134316 +22 23 s23/6 -1.86023989 +22 23 s23/8 -3.59600817 +22 23 s23/10 -3.91873918 +22 25 s25/1 -6.57351443 +22 25 s25/3 -6.99093716 +22 25 s25/6 -6.14968760 +22 25 s25/8 -4.67171207 +22 25 s25/10 -5.94642908 +22 28 s28/1 -1.03285588 +22 28 s28/3 -0.39183657 +22 28 s28/6 -0.83722348 +22 28 s28/8 -1.44467429 +22 28 s28/10 -0.98672826 +22 30 s30/1 -1.43750088 +22 30 s30/3 -1.18902469 +22 30 s30/6 -1.50108484 +22 30 s30/8 0.62386382 +22 30 s30/10 -1.01851533 +22 31 s31/1 -0.55535589 +22 31 s31/3 0.11506008 +22 31 s31/6 0.61195745 +22 31 s31/8 -0.08147109 +22 31 s31/10 0.13188258 +22 32 s32/1 -4.49473671 +22 32 s32/3 -3.07226975 +22 32 s32/6 -4.07300471 +22 32 s32/8 -3.29442713 +22 32 s32/10 -3.28024366 +22 35 s35/1 -2.58566428 +22 35 s35/3 0.11243431 +22 35 s35/6 -5.91376909 +22 35 s35/8 -6.07227093 +22 35 s35/10 -5.36539886 +22 37 s37/1 -1.66655390 +22 37 s37/3 -1.32022897 +22 37 s37/6 -0.49555898 +22 37 s37/8 0.20853967 +22 37 s37/10 -2.17418407 +22 38 s38/1 -2.58659416 +22 38 s38/3 -1.84935406 +22 38 s38/6 -2.25812814 +22 38 s38/8 -3.17319665 +22 38 s38/10 -2.10797660 +22 40 s40/1 -5.05122677 +22 40 s40/3 -5.44834297 +22 40 s40/6 -5.71335465 +22 40 s40/8 -5.90995695 +22 40 s40/10 -3.94717240 +23 3 s3/1 -3.53812204 +23 3 s3/3 -1.57021559 +23 3 s3/6 -1.27763514 +23 3 s3/8 -2.18337436 +23 3 s3/10 -1.29692707 +23 4 s4/1 -4.82974949 +23 4 s4/3 -6.77040836 +23 4 s4/6 -3.54390011 +23 4 s4/8 -6.18875993 +23 4 s4/10 0.63253781 +23 7 s7/1 0.94935268 +23 7 s7/3 0.42412731 +23 7 s7/6 -0.77734540 +23 7 s7/8 1.49394498 +23 7 s7/10 -0.43001086 +23 8 s8/1 -2.57464952 +23 8 s8/3 -1.64974023 +23 8 s8/6 -2.05188760 +23 8 s8/8 -1.96967382 +23 8 s8/10 -0.85185034 +23 9 s9/1 -0.21735213 +23 9 s9/3 -0.60974759 +23 9 s9/6 -0.57877118 +23 9 s9/8 -1.11560461 +23 9 s9/10 1.31422479 +23 13 s13/1 -4.73294389 +23 13 s13/3 -4.70350244 +23 13 s13/6 -3.44468945 +23 13 s13/8 -4.09299317 +23 13 s13/10 -4.44047727 +23 15 s15/1 -4.29224777 +23 15 s15/3 -4.39530435 +23 15 s15/6 -4.82973832 +23 15 s15/8 -4.31779122 +23 15 s15/10 -4.23014514 +23 18 s18/1 -1.38134772 +23 18 s18/3 -4.24110551 +23 18 s18/6 -3.64601601 +23 18 s18/8 -4.30903456 +23 18 s18/10 -2.29368005 +23 19 s19/1 -4.17797301 +23 19 s19/3 -4.02438874 +23 19 s19/6 -4.32334198 +23 19 s19/8 -3.89987407 +23 19 s19/10 -4.52202991 +23 22 s22/1 -3.36393536 +23 22 s22/3 -3.34147007 +23 22 s22/6 -2.80153825 +23 22 s22/8 -3.40243707 +23 22 s22/10 -3.68385001 +23 23 s23/1 0.74013521 +23 23 s23/3 1.99384815 +23 23 s23/6 0.74254891 +23 23 s23/8 5.00550225 +23 23 s23/10 0.67819165 +23 25 s25/1 -3.34289241 +23 25 s25/3 -3.32279309 +23 25 s25/6 -5.36645850 +23 25 s25/8 -6.03639919 +23 25 s25/10 -2.94507241 +23 28 s28/1 -4.68864689 +23 28 s28/3 -5.04711064 +23 28 s28/6 -4.92187020 +23 28 s28/8 -2.38663279 +23 28 s28/10 -4.66799569 +23 30 s30/1 -1.19546627 +23 30 s30/3 -0.46881374 +23 30 s30/6 -0.90174596 +23 30 s30/8 -1.72622886 +23 30 s30/10 -1.60116953 +23 31 s31/1 -0.17999906 +23 31 s31/3 -3.65430252 +23 31 s31/6 -2.83340606 +23 31 s31/8 -1.25197845 +23 31 s31/10 -3.74250576 +23 32 s32/1 -3.64297270 +23 32 s32/3 -4.29245930 +23 32 s32/6 -3.93584834 +23 32 s32/8 -4.27408409 +23 32 s32/10 -4.20162998 +23 35 s35/1 -2.93378159 +23 35 s35/3 -6.42907734 +23 35 s35/6 -4.74543784 +23 35 s35/8 -3.62355986 +23 35 s35/10 -1.85159881 +23 37 s37/1 -3.90238590 +23 37 s37/3 -3.89919871 +23 37 s37/6 -4.16805360 +23 37 s37/8 -4.60048359 +23 37 s37/10 -4.16027353 +23 38 s38/1 -0.02638041 +23 38 s38/3 -1.98760888 +23 38 s38/6 0.29582974 +23 38 s38/8 1.20133103 +23 38 s38/10 -0.27180062 +23 40 s40/1 -0.93161717 +23 40 s40/3 -0.44592575 +23 40 s40/6 -2.84607099 +23 40 s40/8 -2.60011993 +23 40 s40/10 -4.03640808 +25 3 s3/1 -1.61192227 +25 3 s3/3 -0.67867499 +25 3 s3/6 -1.25347923 +25 3 s3/8 -0.70704530 +25 3 s3/10 -1.30377800 +25 4 s4/1 -1.43015466 +25 4 s4/3 -1.16941640 +25 4 s4/6 -0.21369754 +25 4 s4/8 -0.69576036 +25 4 s4/10 1.15578089 +25 7 s7/1 -4.08440740 +25 7 s7/3 -4.23282910 +25 7 s7/6 -4.34712407 +25 7 s7/8 -4.26462549 +25 7 s7/10 -4.17994202 +25 8 s8/1 -3.33308745 +25 8 s8/3 -2.91420475 +25 8 s8/6 -3.17294289 +25 8 s8/8 -2.60244557 +25 8 s8/10 -2.26058211 +25 9 s9/1 -1.77016358 +25 9 s9/3 -1.15938847 +25 9 s9/6 -2.32600007 +25 9 s9/8 -2.11378323 +25 9 s9/10 -0.70721681 +25 13 s13/1 -1.95069189 +25 13 s13/3 -2.72526229 +25 13 s13/6 -0.59480613 +25 13 s13/8 -1.35253746 +25 13 s13/10 -1.56527217 +25 15 s15/1 -4.88610351 +25 15 s15/3 -5.21416556 +25 15 s15/6 -4.83753239 +25 15 s15/8 -5.84134058 +25 15 s15/10 -3.22238508 +25 18 s18/1 -0.30489720 +25 18 s18/3 -0.11870947 +25 18 s18/6 -0.65759679 +25 18 s18/8 -0.33824173 +25 18 s18/10 -0.06719401 +25 19 s19/1 -2.97236349 +25 19 s19/3 -2.77344684 +25 19 s19/6 -3.13912032 +25 19 s19/8 -4.01258081 +25 19 s19/10 -3.41219628 +25 22 s22/1 -4.60120176 +25 22 s22/3 -4.62134790 +25 22 s22/6 -4.79481517 +25 22 s22/8 -4.84538138 +25 22 s22/10 -4.58360741 +25 23 s23/1 -2.68324134 +25 23 s23/3 -2.29865517 +25 23 s23/6 -2.32053383 +25 23 s23/8 -2.18951499 +25 23 s23/10 -3.00296867 +25 25 s25/1 2.32431390 +25 25 s25/3 2.60857552 +25 25 s25/6 3.56003487 +25 25 s25/8 -0.55660399 +25 25 s25/10 4.07613366 +25 28 s28/1 -2.94321720 +25 28 s28/3 -2.44136577 +25 28 s28/6 -2.75139434 +25 28 s28/8 -2.46812822 +25 28 s28/10 -2.43461388 +25 30 s30/1 -2.57300612 +25 30 s30/3 -2.08551709 +25 30 s30/6 -3.81115070 +25 30 s30/8 -3.73248393 +25 30 s30/10 -3.22095107 +25 31 s31/1 -3.38152356 +25 31 s31/3 -3.83187585 +25 31 s31/6 -3.04878959 +25 31 s31/8 -3.07388367 +25 31 s31/10 -3.56104573 +25 32 s32/1 -2.22394789 +25 32 s32/3 -2.84374950 +25 32 s32/6 -3.10430563 +25 32 s32/8 -3.12147886 +25 32 s32/10 -3.52041042 +25 35 s35/1 -2.57620463 +25 35 s35/3 -4.41320922 +25 35 s35/6 0.63644315 +25 35 s35/8 -0.72246619 +25 35 s35/10 -3.91919081 +25 37 s37/1 -3.05465558 +25 37 s37/3 -3.43633946 +25 37 s37/6 -4.00377239 +25 37 s37/8 -4.48527675 +25 37 s37/10 -3.27151170 +25 38 s38/1 -2.42514985 +25 38 s38/3 -2.76576408 +25 38 s38/6 -2.52118284 +25 38 s38/8 -1.49455950 +25 38 s38/10 -3.32028699 +25 40 s40/1 -0.49080124 +25 40 s40/3 -1.96775028 +25 40 s40/6 -2.02662387 +25 40 s40/8 -1.40277109 +25 40 s40/10 -1.68335850 +28 3 s3/1 -2.60362350 +28 3 s3/3 -2.41879286 +28 3 s3/6 -3.16120146 +28 3 s3/8 -2.77811974 +28 3 s3/10 -1.40696157 +28 4 s4/1 -5.85342018 +28 4 s4/3 -4.06357670 +28 4 s4/6 -1.47832614 +28 4 s4/8 -3.48028767 +28 4 s4/10 -3.16412405 +28 7 s7/1 -2.47549835 +28 7 s7/3 -2.82649019 +28 7 s7/6 -2.19279074 +28 7 s7/8 -3.67483237 +28 7 s7/10 -2.12187159 +28 8 s8/1 -3.15574632 +28 8 s8/3 -3.47975125 +28 8 s8/6 -2.21190868 +28 8 s8/8 -3.99621952 +28 8 s8/10 -3.29768580 +28 9 s9/1 -5.46816023 +28 9 s9/3 -4.83604504 +28 9 s9/6 -6.36841332 +28 9 s9/8 -6.32916453 +28 9 s9/10 -4.79988452 +28 13 s13/1 -2.56935678 +28 13 s13/3 -2.52324120 +28 13 s13/6 -2.09751440 +28 13 s13/8 -2.05798428 +28 13 s13/10 -2.07537588 +28 15 s15/1 3.88908037 +28 15 s15/3 3.02717983 +28 15 s15/6 3.50627157 +28 15 s15/8 -1.04917084 +28 15 s15/10 -5.22580703 +28 18 s18/1 -2.99865822 +28 18 s18/3 -4.23479250 +28 18 s18/6 -3.92364946 +28 18 s18/8 -4.27703282 +28 18 s18/10 -5.10963337 +28 19 s19/1 0.16257873 +28 19 s19/3 0.05591691 +28 19 s19/6 0.30996051 +28 19 s19/8 2.11571018 +28 19 s19/10 0.25368497 +28 22 s22/1 -1.07340131 +28 22 s22/3 -1.48735101 +28 22 s22/6 -2.25583217 +28 22 s22/8 -1.53488379 +28 22 s22/10 -1.38297808 +28 23 s23/1 -5.69759764 +28 23 s23/3 -5.05432238 +28 23 s23/6 -6.40454474 +28 23 s23/8 -4.53858973 +28 23 s23/10 -5.11583928 +28 25 s25/1 -4.85577399 +28 25 s25/3 -3.98748210 +28 25 s25/6 -3.69878402 +28 25 s25/8 -1.94372494 +28 25 s25/10 -3.80066307 +28 28 s28/1 2.37064499 +28 28 s28/3 1.73463579 +28 28 s28/6 2.47045213 +28 28 s28/8 2.24659691 +28 28 s28/10 0.21113470 +28 30 s30/1 -5.77295792 +28 30 s30/3 -6.17291749 +28 30 s30/6 -5.54057206 +28 30 s30/8 -5.14035470 +28 30 s30/10 -5.43274294 +28 31 s31/1 -5.51254297 +28 31 s31/3 -0.76057771 +28 31 s31/6 -3.06477789 +28 31 s31/8 -4.70951821 +28 31 s31/10 -0.17703504 +28 32 s32/1 0.37067036 +28 32 s32/3 -0.25958476 +28 32 s32/6 2.04060899 +28 32 s32/8 0.72563641 +28 32 s32/10 2.44847030 +28 35 s35/1 -7.70592937 +28 35 s35/3 -2.94769476 +28 35 s35/6 -3.06603880 +28 35 s35/8 -4.93696023 +28 35 s35/10 -3.33970915 +28 37 s37/1 0.08785336 +28 37 s37/3 -0.15188744 +28 37 s37/6 2.50179776 +28 37 s37/8 2.74990676 +28 37 s37/10 1.25333108 +28 38 s38/1 -6.32037824 +28 38 s38/3 -5.93785387 +28 38 s38/6 -6.41576412 +28 38 s38/8 -6.46513820 +28 38 s38/10 -5.71294287 +28 40 s40/1 -5.45266330 +28 40 s40/3 -4.21704788 +28 40 s40/6 -7.07381582 +28 40 s40/8 -6.32833996 +28 40 s40/10 -7.14986182 +30 3 s3/1 -4.19128273 +30 3 s3/3 -4.13491505 +30 3 s3/6 -4.78286940 +30 3 s3/8 -5.60382778 +30 3 s3/10 -4.58952640 +30 4 s4/1 -3.20828961 +30 4 s4/3 -4.33099067 +30 4 s4/6 -6.24337756 +30 4 s4/8 -4.38233300 +30 4 s4/10 -2.77271698 +30 7 s7/1 -1.97737699 +30 7 s7/3 -2.05915186 +30 7 s7/6 -2.49256532 +30 7 s7/8 -1.13968956 +30 7 s7/10 -3.17357628 +30 8 s8/1 -2.08690950 +30 8 s8/3 -2.21273410 +30 8 s8/6 -2.58491176 +30 8 s8/8 -2.20738359 +30 8 s8/10 -2.30088744 +30 9 s9/1 -0.23558840 +30 9 s9/3 -0.86866738 +30 9 s9/6 -0.76919856 +30 9 s9/8 -1.49051931 +30 9 s9/10 -1.68755699 +30 13 s13/1 -4.54141639 +30 13 s13/3 -4.80819099 +30 13 s13/6 -5.23690169 +30 13 s13/8 -5.25702294 +30 13 s13/10 -5.62243428 +30 15 s15/1 -3.03300073 +30 15 s15/3 -2.94474530 +30 15 s15/6 -3.42958206 +30 15 s15/8 -1.87953871 +30 15 s15/10 -2.58328572 +30 18 s18/1 -4.27430946 +30 18 s18/3 -5.14958966 +30 18 s18/6 -5.66178221 +30 18 s18/8 -5.18118684 +30 18 s18/10 -4.68991099 +30 19 s19/1 -3.61274176 +30 19 s19/3 -3.52573082 +30 19 s19/6 -3.54760102 +30 19 s19/8 -3.96441653 +30 19 s19/10 -3.67339537 +30 22 s22/1 -0.58812288 +30 22 s22/3 -0.14860867 +30 22 s22/6 0.16034512 +30 22 s22/8 -0.23205965 +30 22 s22/10 -0.92415224 +30 23 s23/1 -1.12628292 +30 23 s23/3 1.01169481 +30 23 s23/6 0.45892229 +30 23 s23/8 -1.12946195 +30 23 s23/10 -1.51031086 +30 25 s25/1 -3.79121643 +30 25 s25/3 -4.40978682 +30 25 s25/6 -4.40545062 +30 25 s25/8 -5.95283682 +30 25 s25/10 -3.87410672 +30 28 s28/1 -4.83447421 +30 28 s28/3 -4.68038335 +30 28 s28/6 -4.94579767 +30 28 s28/8 -4.35882776 +30 28 s28/10 -4.17257093 +30 30 s30/1 2.37263319 +30 30 s30/3 2.22668587 +30 30 s30/6 2.27890242 +30 30 s30/8 2.89072461 +30 30 s30/10 2.46646026 +30 31 s31/1 0.84399540 +30 31 s31/3 -1.59155942 +30 31 s31/6 -0.07995863 +30 31 s31/8 0.57052894 +30 31 s31/10 -1.52151167 +30 32 s32/1 -3.80432957 +30 32 s32/3 -3.69624188 +30 32 s32/6 -3.76231373 +30 32 s32/8 -4.04971109 +30 32 s32/10 -3.77666166 +30 35 s35/1 -0.57282589 +30 35 s35/3 -4.31045767 +30 35 s35/6 -4.50475601 +30 35 s35/8 -3.58236329 +30 35 s35/10 -5.27930320 +30 37 s37/1 -5.20515478 +30 37 s37/3 -4.82039938 +30 37 s37/6 -3.24996494 +30 37 s37/8 -3.27352321 +30 37 s37/10 -5.56502253 +30 38 s38/1 0.09936438 +30 38 s38/3 -0.05931186 +30 38 s38/6 0.36540390 +30 38 s38/8 -0.27129102 +30 38 s38/10 -0.03095374 +30 40 s40/1 -4.13064335 +30 40 s40/3 -4.09213013 +30 40 s40/6 -3.59114561 +30 40 s40/8 -4.22692978 +30 40 s40/10 -3.19117738 +31 3 s3/1 -5.20048084 +31 3 s3/3 -4.44024504 +31 3 s3/6 -6.03661894 +31 3 s3/8 -6.52546151 +31 3 s3/10 -4.95869200 +31 4 s4/1 -3.12312418 +31 4 s4/3 -1.67475842 +31 4 s4/6 -1.82573397 +31 4 s4/8 -1.50299557 +31 4 s4/10 -3.33512473 +31 7 s7/1 -2.99707999 +31 7 s7/3 -2.74791202 +31 7 s7/6 -3.53262487 +31 7 s7/8 -3.34560895 +31 7 s7/10 -3.42715106 +31 8 s8/1 -2.92656249 +31 8 s8/3 -3.47546219 +31 8 s8/6 -3.94143401 +31 8 s8/8 -2.52622081 +31 8 s8/10 -3.57469829 +31 9 s9/1 -2.59034714 +31 9 s9/3 -2.34119619 +31 9 s9/6 -1.54190903 +31 9 s9/8 -3.67223629 +31 9 s9/10 -2.79646808 +31 13 s13/1 -4.22691722 +31 13 s13/3 -4.18143312 +31 13 s13/6 -4.88698183 +31 13 s13/8 -4.90148221 +31 13 s13/10 -5.40869257 +31 15 s15/1 0.52645847 +31 15 s15/3 0.10779890 +31 15 s15/6 -0.35963182 +31 15 s15/8 2.42803394 +31 15 s15/10 -2.55728970 +31 18 s18/1 -4.17040673 +31 18 s18/3 -4.08607970 +31 18 s18/6 -4.76881275 +31 18 s18/8 -3.76678814 +31 18 s18/10 -4.54265921 +31 19 s19/1 -1.54390440 +31 19 s19/3 -1.73016778 +31 19 s19/6 -2.28128748 +31 19 s19/8 -2.60501602 +31 19 s19/10 -1.99710537 +31 22 s22/1 0.05753730 +31 22 s22/3 0.77923475 +31 22 s22/6 0.36341327 +31 22 s22/8 0.22898376 +31 22 s22/10 -0.40303258 +31 23 s23/1 -3.70404887 +31 23 s23/3 -2.05704343 +31 23 s23/6 -0.99176504 +31 23 s23/8 -3.15630227 +31 23 s23/10 -3.49979718 +31 25 s25/1 -4.58409867 +31 25 s25/3 -4.36094703 +31 25 s25/6 -3.88730236 +31 25 s25/8 -2.20088714 +31 25 s25/10 -4.35989503 +31 28 s28/1 -5.24460751 +31 28 s28/3 -5.81088904 +31 28 s28/6 -5.56647784 +31 28 s28/8 -5.07649948 +31 28 s28/10 -4.00960934 +31 30 s30/1 -0.59191693 +31 30 s30/3 -0.95910660 +31 30 s30/6 -0.66922067 +31 30 s30/8 1.41325078 +31 30 s30/10 0.08162919 +31 31 s31/1 -0.41953457 +31 31 s31/3 5.26832368 +31 31 s31/6 2.80923612 +31 31 s31/8 0.67618734 +31 31 s31/10 5.22343004 +31 32 s32/1 -0.78436959 +31 32 s32/3 -1.64280684 +31 32 s32/6 -1.31486998 +31 32 s32/8 -1.92889934 +31 32 s32/10 -1.34161765 +31 35 s35/1 -2.26395078 +31 35 s35/3 -1.66287878 +31 35 s35/6 -3.19116795 +31 35 s35/8 -3.72792994 +31 35 s35/10 -2.93832097 +31 37 s37/1 -5.90009568 +31 37 s37/3 -5.38225892 +31 37 s37/6 -1.84389945 +31 37 s37/8 -1.26786097 +31 37 s37/10 -5.73689579 +31 38 s38/1 -3.12160406 +31 38 s38/3 -3.23614180 +31 38 s38/6 -2.83620024 +31 38 s38/8 -4.03068677 +31 38 s38/10 -3.56657759 +31 40 s40/1 -6.30065480 +31 40 s40/3 -4.80660684 +31 40 s40/6 -6.67764379 +31 40 s40/8 -6.67898175 +31 40 s40/10 -5.45303802 +32 3 s3/1 -6.37077920 +32 3 s3/3 -4.90554551 +32 3 s3/6 -6.25236294 +32 3 s3/8 -6.82989958 +32 3 s3/10 -5.04368242 +32 4 s4/1 -5.58318200 +32 4 s4/3 -4.59079711 +32 4 s4/6 -1.33061485 +32 4 s4/8 -4.44770865 +32 4 s4/10 -4.50806207 +32 7 s7/1 -3.75694973 +32 7 s7/3 -3.17027007 +32 7 s7/6 -3.53049172 +32 7 s7/8 -4.29293628 +32 7 s7/10 -3.01042000 +32 8 s8/1 -1.73608626 +32 8 s8/3 -1.68145528 +32 8 s8/6 -1.27895600 +32 8 s8/8 -0.55274836 +32 8 s8/10 -1.99965959 +32 9 s9/1 -5.85737973 +32 9 s9/3 -5.93050164 +32 9 s9/6 -5.73710134 +32 9 s9/8 -6.27165710 +32 9 s9/10 -5.41133634 +32 13 s13/1 -0.83559206 +32 13 s13/3 1.01420405 +32 13 s13/6 -0.75361987 +32 13 s13/8 0.09946957 +32 13 s13/10 -0.75921754 +32 15 s15/1 -0.30120688 +32 15 s15/3 -0.80773476 +32 15 s15/6 0.89861546 +32 15 s15/8 -1.96510970 +32 15 s15/10 -4.37075984 +32 18 s18/1 -0.98669303 +32 18 s18/3 0.77190250 +32 18 s18/6 0.43098244 +32 18 s18/8 0.65462945 +32 18 s18/10 -0.53666568 +32 19 s19/1 0.24811767 +32 19 s19/3 1.38304236 +32 19 s19/6 1.22620881 +32 19 s19/8 1.56237759 +32 19 s19/10 0.10744311 +32 22 s22/1 -3.60315753 +32 22 s22/3 -4.27932248 +32 22 s22/6 -3.70246822 +32 22 s22/8 -4.02108702 +32 22 s22/10 -3.15559792 +32 23 s23/1 -5.23815219 +32 23 s23/3 -4.91125009 +32 23 s23/6 -5.07942856 +32 23 s23/8 -4.80930201 +32 23 s23/10 -5.49252374 +32 25 s25/1 -5.04240322 +32 25 s25/3 -4.54866053 +32 25 s25/6 -3.52075421 +32 25 s25/8 -1.14210393 +32 25 s25/10 -4.29403826 +32 28 s28/1 -1.82857520 +32 28 s28/3 -1.68843939 +32 28 s28/6 -2.46533294 +32 28 s28/8 -1.86834073 +32 28 s28/10 -0.14931516 +32 30 s30/1 -6.04310559 +32 30 s30/3 -5.52691682 +32 30 s30/6 -5.98937530 +32 30 s30/8 -4.93288578 +32 30 s30/10 -5.85248593 +32 31 s31/1 -6.12921643 +32 31 s31/3 -0.37162167 +32 31 s31/6 -6.08805000 +32 31 s31/8 -6.69401973 +32 31 s31/10 0.02800184 +32 32 s32/1 4.70030641 +32 32 s32/3 5.30213917 +32 32 s32/6 2.43430725 +32 32 s32/8 4.32656345 +32 32 s32/10 1.48723514 +32 35 s35/1 -3.71484933 +32 35 s35/3 -1.38743041 +32 35 s35/6 -2.99777559 +32 35 s35/8 -4.24876634 +32 35 s35/10 -1.89710050 +32 37 s37/1 -1.92259267 +32 37 s37/3 -1.60773546 +32 37 s37/6 -0.83892152 +32 37 s37/8 -1.58616437 +32 37 s37/10 -0.88323912 +32 38 s38/1 -5.59823805 +32 38 s38/3 -6.16109142 +32 38 s38/6 -4.95447050 +32 38 s38/8 -5.74222889 +32 38 s38/10 -6.02202996 +32 40 s40/1 -3.52749224 +32 40 s40/3 -3.38370105 +32 40 s40/6 -3.29157097 +32 40 s40/8 -3.48535914 +32 40 s40/10 -1.65142255 +35 3 s3/1 -1.92713421 +35 3 s3/3 -3.38024117 +35 3 s3/6 -1.84337574 +35 3 s3/8 -2.22167785 +35 3 s3/10 -4.42515908 +35 4 s4/1 0.33823221 +35 4 s4/3 0.20676441 +35 4 s4/6 -1.90391998 +35 4 s4/8 0.30928557 +35 4 s4/10 -2.89380721 +35 7 s7/1 -4.96008677 +35 7 s7/3 -5.17770740 +35 7 s7/6 -5.22658091 +35 7 s7/8 -5.68955157 +35 7 s7/10 -4.11655827 +35 8 s8/1 -3.40362468 +35 8 s8/3 -2.88991619 +35 8 s8/6 -3.58204143 +35 8 s8/8 -2.82562029 +35 8 s8/10 -2.93696390 +35 9 s9/1 -0.72275269 +35 9 s9/3 -0.90641118 +35 9 s9/6 -2.14387831 +35 9 s9/8 -1.21368571 +35 9 s9/10 -1.89952819 +35 13 s13/1 -1.29054640 +35 13 s13/3 -1.65498807 +35 13 s13/6 -2.99951762 +35 13 s13/8 -1.53415275 +35 13 s13/10 -2.35991397 +35 15 s15/1 -5.30864225 +35 15 s15/3 -5.37993401 +35 15 s15/6 -5.33363157 +35 15 s15/8 -3.69443896 +35 15 s15/10 -1.23581876 +35 18 s18/1 -2.87215196 +35 18 s18/3 -0.88096146 +35 18 s18/6 -2.21646281 +35 18 s18/8 -1.19016052 +35 18 s18/10 -0.82483114 +35 19 s19/1 -3.42520621 +35 19 s19/3 -3.25705088 +35 19 s19/6 -3.60987488 +35 19 s19/8 -4.57884403 +35 19 s19/10 -3.81241432 +35 22 s22/1 -3.45976372 +35 22 s22/3 -3.30486624 +35 22 s22/6 -3.21906233 +35 22 s22/8 -3.30281886 +35 22 s22/10 -3.17538459 +35 23 s23/1 -3.02878922 +35 23 s23/3 -2.92705451 +35 23 s23/6 -3.04461913 +35 23 s23/8 -3.56356818 +35 23 s23/10 -3.54829687 +35 25 s25/1 1.10454420 +35 25 s25/3 0.37497751 +35 25 s25/6 1.48056303 +35 25 s25/8 -1.06333782 +35 25 s25/10 0.12078337 +35 28 s28/1 -4.30569480 +35 28 s28/3 -3.44492706 +35 28 s28/6 -4.42158193 +35 28 s28/8 -4.30082899 +35 28 s28/10 -2.52254620 +35 30 s30/1 -1.40799672 +35 30 s30/3 -0.91073930 +35 30 s30/6 -2.40265354 +35 30 s30/8 -1.82746588 +35 30 s30/10 -1.19028577 +35 31 s31/1 -1.67311062 +35 31 s31/3 -2.59275423 +35 31 s31/6 -2.08143816 +35 31 s31/8 -1.61363382 +35 31 s31/10 -2.63109922 +35 32 s32/1 -3.15067528 +35 32 s32/3 -3.36780426 +35 32 s32/6 -4.47312462 +35 32 s32/8 -4.15854518 +35 32 s32/10 -5.08030532 +35 35 s35/1 3.81932143 +35 35 s35/3 -1.51903204 +35 35 s35/6 5.28926033 +35 35 s35/8 5.92516206 +35 35 s35/10 -3.82270851 +35 37 s37/1 -3.56785063 +35 37 s37/3 -3.42736672 +35 37 s37/6 -3.84495687 +35 37 s37/8 -4.02104525 +35 37 s37/10 -3.97543408 +35 38 s38/1 -1.60402687 +35 38 s38/3 -0.92474902 +35 38 s38/6 -1.43901659 +35 38 s38/8 -1.56128146 +35 38 s38/10 -2.38350625 +35 40 s40/1 -1.04800123 +35 40 s40/3 -2.35860466 +35 40 s40/6 0.10501324 +35 40 s40/8 -0.35359327 +35 40 s40/10 -0.34903251 +37 3 s3/1 -3.71192059 +37 3 s3/3 -3.18811330 +37 3 s3/6 -7.03876931 +37 3 s3/8 -5.97599093 +37 3 s3/10 -3.90742765 +37 4 s4/1 -6.84956573 +37 4 s4/3 -5.36547579 +37 4 s4/6 -5.10663494 +37 4 s4/8 -5.49275269 +37 4 s4/10 -5.66823519 +37 7 s7/1 -3.87449016 +37 7 s7/3 -4.31639202 +37 7 s7/6 -3.99270477 +37 7 s7/8 -4.62287118 +37 7 s7/10 -3.70779647 +37 8 s8/1 -2.96961136 +37 8 s8/3 -5.03406365 +37 8 s8/6 -4.03590523 +37 8 s8/8 -5.28869452 +37 8 s8/10 -5.83565056 +37 9 s9/1 -5.25031200 +37 9 s9/3 -5.05869910 +37 9 s9/6 -6.67095805 +37 9 s9/8 -7.02752041 +37 9 s9/10 -5.60868060 +37 13 s13/1 -0.21776397 +37 13 s13/3 -0.08892877 +37 13 s13/6 -1.34967496 +37 13 s13/8 -0.65764892 +37 13 s13/10 -0.96906679 +37 15 s15/1 -1.21791491 +37 15 s15/3 -1.65929714 +37 15 s15/6 -0.92630868 +37 15 s15/8 -2.51576030 +37 15 s15/10 -4.32715646 +37 18 s18/1 -3.61718300 +37 18 s18/3 -3.33207807 +37 18 s18/6 -3.85396455 +37 18 s18/8 -3.60132577 +37 18 s18/10 -4.74004282 +37 19 s19/1 -0.65242730 +37 19 s19/3 -0.03620406 +37 19 s19/6 1.14375042 +37 19 s19/8 1.53424424 +37 19 s19/10 -0.27510048 +37 22 s22/1 -0.32451650 +37 22 s22/3 -0.59774227 +37 22 s22/6 -0.82312390 +37 22 s22/8 -0.10239660 +37 22 s22/10 0.35962244 +37 23 s23/1 -6.24966676 +37 23 s23/3 -5.44068937 +37 23 s23/6 -5.73190298 +37 23 s23/8 -5.23297804 +37 23 s23/10 -6.28422350 +37 25 s25/1 -6.52116960 +37 25 s25/3 -6.13130714 +37 25 s25/6 -4.68846728 +37 25 s25/8 -1.83889552 +37 25 s25/10 -5.54200694 +37 28 s28/1 2.89121511 +37 28 s28/3 2.94738472 +37 28 s28/6 2.94908176 +37 28 s28/8 2.18676381 +37 28 s28/10 2.68509502 +37 30 s30/1 -5.42292940 +37 30 s30/3 -5.30979911 +37 30 s30/6 -5.42924973 +37 30 s30/8 -3.91043545 +37 30 s30/10 -4.94441774 +37 31 s31/1 -4.54425002 +37 31 s31/3 -0.33228791 +37 31 s31/6 -2.58547496 +37 31 s31/8 -4.06121152 +37 31 s31/10 -0.11956229 +37 32 s32/1 -0.68795533 +37 32 s32/3 -0.59301905 +37 32 s32/6 -0.46287649 +37 32 s32/8 -0.74883953 +37 32 s32/10 -0.06843260 +37 35 s35/1 -3.18936820 +37 35 s35/3 0.50771706 +37 35 s35/6 -4.35242398 +37 35 s35/8 -6.07682554 +37 35 s35/10 -2.35545661 +37 37 s37/1 2.39241226 +37 37 s37/3 2.98804591 +37 37 s37/6 5.12247497 +37 37 s37/8 4.18519315 +37 37 s37/10 2.76377516 +37 38 s38/1 -5.53662865 +37 38 s38/3 -4.70222722 +37 38 s38/6 -5.45280989 +37 38 s38/8 -6.06064920 +37 38 s38/10 -4.82514035 +37 40 s40/1 -3.87565712 +37 40 s40/3 -4.70035601 +37 40 s40/6 -3.99533669 +37 40 s40/8 -3.94811978 +37 40 s40/10 -2.45466448 +38 3 s3/1 -2.77511227 +38 3 s3/3 -3.69387856 +38 3 s3/6 -1.21860023 +38 3 s3/8 -2.49639035 +38 3 s3/10 -3.89012383 +38 4 s4/1 -2.04683591 +38 4 s4/3 -4.57674590 +38 4 s4/6 -6.46596396 +38 4 s4/8 -4.79137806 +38 4 s4/10 -3.03031761 +38 7 s7/1 -1.08858123 +38 7 s7/3 -0.88402057 +38 7 s7/6 -1.31036075 +38 7 s7/8 0.37917098 +38 7 s7/10 -2.54971936 +38 8 s8/1 -1.72107150 +38 8 s8/3 -0.78415707 +38 8 s8/6 -1.39133247 +38 8 s8/8 -1.21418129 +38 8 s8/10 -0.87439000 +38 9 s9/1 -0.74173213 +38 9 s9/3 -1.42337082 +38 9 s9/6 -0.25850495 +38 9 s9/8 -0.05856456 +38 9 s9/10 -2.51974881 +38 13 s13/1 -3.73166556 +38 13 s13/3 -3.93103641 +38 13 s13/6 -4.38310909 +38 13 s13/8 -4.25949359 +38 13 s13/10 -4.30046621 +38 15 s15/1 -4.79195752 +38 15 s15/3 -4.61585368 +38 15 s15/6 -4.90400290 +38 15 s15/8 -4.17960184 +38 15 s15/10 -3.03433400 +38 18 s18/1 -3.98511272 +38 18 s18/3 -4.56846458 +38 18 s18/6 -4.36043387 +38 18 s18/8 -4.27574290 +38 18 s18/10 -3.34658178 +38 19 s19/1 -4.28155267 +38 19 s19/3 -4.15726898 +38 19 s19/6 -4.07286167 +38 19 s19/8 -4.19605410 +38 19 s19/10 -4.20294802 +38 22 s22/1 -2.50221243 +38 22 s22/3 -2.34915398 +38 22 s22/6 -1.70388698 +38 22 s22/8 -2.04852822 +38 22 s22/10 -2.50610452 +38 23 s23/1 1.95971946 +38 23 s23/3 0.84435491 +38 23 s23/6 1.25465719 +38 23 s23/8 -0.75625778 +38 23 s23/10 1.27187264 +38 25 s25/1 -2.94719114 +38 25 s25/3 -3.46385804 +38 25 s25/6 -4.44218481 +38 25 s25/8 -5.75115444 +38 25 s25/10 -3.63876202 +38 28 s28/1 -4.18853307 +38 28 s28/3 -4.01951926 +38 28 s28/6 -4.33021174 +38 28 s28/8 -4.35849283 +38 28 s28/10 -3.88576972 +38 30 s30/1 -0.57902113 +38 30 s30/3 0.30936135 +38 30 s30/6 -0.03672568 +38 30 s30/8 -0.49239140 +38 30 s30/10 -0.19213122 +38 31 s31/1 -0.10877860 +38 31 s31/3 -4.00046339 +38 31 s31/6 -3.37122460 +38 31 s31/8 -1.43153656 +38 31 s31/10 -4.12407652 +38 32 s32/1 -4.87599896 +38 32 s32/3 -4.52183994 +38 32 s32/6 -4.76343703 +38 32 s32/8 -4.84617381 +38 32 s32/10 -4.99432073 +38 35 s35/1 0.01910917 +38 35 s35/3 -6.21397655 +38 35 s35/6 -4.70138198 +38 35 s35/8 -3.56666694 +38 35 s35/10 -5.10028340 +38 37 s37/1 -4.28015165 +38 37 s37/3 -3.98005175 +38 37 s37/6 -3.96240795 +38 37 s37/8 -4.15612277 +38 37 s37/10 -4.49019570 +38 38 s38/1 2.15588557 +38 38 s38/3 3.22815027 +38 38 s38/6 2.80357365 +38 38 s38/8 1.97247863 +38 38 s38/10 3.50406545 +38 40 s40/1 -3.25215654 +38 40 s40/3 -3.44295083 +38 40 s40/6 -1.28308777 +38 40 s40/8 -2.56000869 +38 40 s40/10 -1.20048640 +40 3 s3/1 -3.38720462 +40 3 s3/3 -2.17503100 +40 3 s3/6 -2.24495618 +40 3 s3/8 -0.98668516 +40 3 s3/10 -0.25505772 +40 4 s4/1 -3.27208777 +40 4 s4/3 -4.08208343 +40 4 s4/6 -0.85480403 +40 4 s4/8 -4.02059153 +40 4 s4/10 -1.61296430 +40 7 s7/1 -1.20247996 +40 7 s7/3 -1.32200857 +40 7 s7/6 -1.82734988 +40 7 s7/8 -0.93669208 +40 7 s7/10 0.31404723 +40 8 s8/1 -3.16431061 +40 8 s8/3 -1.85986729 +40 8 s8/6 -1.91174005 +40 8 s8/8 -2.22237636 +40 8 s8/10 -2.06336731 +40 9 s9/1 -3.13243935 +40 9 s9/3 -3.16854624 +40 9 s9/6 -2.28874157 +40 9 s9/8 -0.81040698 +40 9 s9/10 -0.28272388 +40 13 s13/1 -1.95515975 +40 13 s13/3 -0.57891340 +40 13 s13/6 -0.21785239 +40 13 s13/8 -0.39839618 +40 13 s13/10 -0.09646982 +40 15 s15/1 -6.11258032 +40 15 s15/3 -6.29601215 +40 15 s15/6 -5.88438688 +40 15 s15/8 -5.50701097 +40 15 s15/10 -2.58110213 +40 18 s18/1 0.67010874 +40 18 s18/3 0.43296982 +40 18 s18/6 1.84532769 +40 18 s18/8 0.42807873 +40 18 s18/10 2.04488987 +40 19 s19/1 -3.88773553 +40 19 s19/3 -3.54110486 +40 19 s19/6 -3.91871691 +40 19 s19/8 -3.47593381 +40 19 s19/10 -4.16735298 +40 22 s22/1 -5.40072650 +40 22 s22/3 -5.57836355 +40 22 s22/6 -5.09653022 +40 22 s22/8 -5.31880069 +40 22 s22/10 -5.14717399 +40 23 s23/1 -1.78321088 +40 23 s23/3 -3.28881509 +40 23 s23/6 -3.90134033 +40 23 s23/8 -1.33829366 +40 23 s23/10 -1.73846781 +40 25 s25/1 -1.13237480 +40 25 s25/3 -1.12782973 +40 25 s25/6 -3.15479737 +40 25 s25/8 -1.74853550 +40 25 s25/10 -2.06688426 +40 28 s28/1 -1.56502504 +40 28 s28/3 -2.55914370 +40 28 s28/6 -1.39435862 +40 28 s28/8 -0.19859673 +40 28 s28/10 -3.15816143 +40 30 s30/1 -4.30734209 +40 30 s30/3 -4.50365701 +40 30 s30/6 -3.43339279 +40 30 s30/8 -5.05680432 +40 30 s30/10 -4.63620797 +40 31 s31/1 -2.96694227 +40 31 s31/3 -4.89697676 +40 31 s31/6 -4.66766401 +40 31 s31/8 -3.41695280 +40 31 s31/10 -4.90783026 +40 32 s32/1 -2.86602626 +40 32 s32/3 -3.62474764 +40 32 s32/6 -4.68543690 +40 32 s32/8 -3.61106820 +40 32 s32/10 -5.21553717 +40 35 s35/1 -2.78657647 +40 35 s35/3 -2.25188817 +40 35 s35/6 -2.53450907 +40 35 s35/8 -0.79539886 +40 35 s35/10 3.97366269 +40 37 s37/1 0.98801004 +40 37 s37/3 0.56696094 +40 37 s37/6 -4.28069758 +40 37 s37/8 -4.68537114 +40 37 s37/10 -0.71232754 +40 38 s38/1 -3.41499980 +40 38 s38/3 -4.79529864 +40 38 s38/6 -3.42933567 +40 38 s38/8 -2.58348630 +40 38 s38/10 -3.38249518 +40 40 s40/1 1.89807436 +40 40 s40/3 4.44710296 +40 40 s40/6 1.35413733 +40 40 s40/8 2.24764626 +40 40 s40/10 -2.02973731 diff --git a/bob/bio/base/test/dummy/__init__.py b/bob/bio/base/test/dummy/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..fc3eb09b2ff61ff843e299a42a11c9c48b20cef8 100644 --- a/bob/bio/base/test/dummy/__init__.py +++ b/bob/bio/base/test/dummy/__init__.py @@ -0,0 +1,4 @@ +from . import database +from . import preprocessor +from . import extractor +from . import algorithm diff --git a/bob/bio/base/test/dummy/algorithm.py b/bob/bio/base/test/dummy/algorithm.py index c73b5282d5dfa5162c8e4cda5ca8e065e66dbfb9..61c874b25a626112706eef9051abfcdb6f3a45b2 100644 --- a/bob/bio/base/test/dummy/algorithm.py +++ b/bob/bio/base/test/dummy/algorithm.py @@ -1,16 +1,18 @@ -import bob.bio.base import scipy.spatial +import bob.io.base + +from bob.bio.base.algorithm import Algorithm _data = [5., 6., 7., 8., 9.] -class DummyAlgorithm (bob.bio.base.algorithm.Algorithm): +class DummyAlgorithm (Algorithm): """This class is used to test all the possible functions of the tool chain, but it does basically nothing.""" def __init__(self): """Generates a test value that is read and written""" # call base class constructor registering that this tool performs everything. - bob.bio.base.algorithm.Algorithm.__init__( + Algorithm.__init__( self, performs_projection = True, use_projected_features_for_enrollment = True, diff --git a/bob/bio/base/test/dummy/database.py b/bob/bio/base/test/dummy/database.py index 04bdb44f4d3af4e393e051d94a9031fff3c315d2..748b5123dd468763389886a64ac9195491134101 100644 --- a/bob/bio/base/test/dummy/database.py +++ b/bob/bio/base/test/dummy/database.py @@ -1,15 +1,17 @@ import bob.db.atnt -import bob.bio.base import os -class DummyDatabase (bob.bio.base.database.DatabaseBobZT): +from bob.bio.base.database import DatabaseBob, DatabaseBobZT +from bob.bio.base.test.utils import atnt_database_directory + +class DummyDatabase (DatabaseBobZT): def __init__(self): # call base class constructor with useful parameters - bob.bio.base.database.DatabaseBobZT.__init__( + DatabaseBobZT.__init__( self, database = bob.db.atnt.Database( - original_directory = bob.bio.base.test.utils.atnt_database_directory() + original_directory = atnt_database_directory() ), name = 'test', check_original_files_for_existence = True, @@ -17,19 +19,15 @@ class DummyDatabase (bob.bio.base.database.DatabaseBobZT): models_depend_on_protocol = False ) - def all_files(self, groups = ['dev']): - return bob.bio.base.database.DatabaseBob.all_files(self, groups) - + return DatabaseBob.all_files(self, groups) def t_model_ids(self, group = 'dev'): return self.model_ids(group) - def t_enroll_files(self, model_id, group = 'dev'): return self.enroll_files(model_id, group) - def z_probe_files(self, group = 'dev'): return self.probe_files(None, group) diff --git a/bob/bio/base/test/dummy/extractor.py b/bob/bio/base/test/dummy/extractor.py index ad3a798f6df30e9ed42e2cbc7694c0cc23eb7a00..0b95e046717a087fa4bb897b161340a1dff42541 100644 --- a/bob/bio/base/test/dummy/extractor.py +++ b/bob/bio/base/test/dummy/extractor.py @@ -1,19 +1,21 @@ -import bob.bio.base import numpy +import bob.io.base + +from bob.bio.base.extractor import Extractor _data = [0., 1., 2., 3., 4.] -class DummyExtractor (bob.bio.base.extractor.Extractor): +class DummyExtractor (Extractor): def __init__(self): - bob.bio.base.extractor.Extractor.__init__(self, requires_training=True) + Extractor.__init__(self, requires_training=True) self.model = False def train(self, train_data, extractor_file): assert isinstance(train_data, list) - bob.bio.base.save(_data, extractor_file) + bob.io.base.save(_data, extractor_file) def load(self, extractor_file): - data = bob.bio.base.load(extractor_file) + data = bob.io.base.load(extractor_file) assert (_data == data).all() self.model = True diff --git a/bob/bio/base/test/dummy/filelist.py b/bob/bio/base/test/dummy/filelist.py new file mode 100644 index 0000000000000000000000000000000000000000..dc59e4a170147bf32fe1e3f274668127df248f32 --- /dev/null +++ b/bob/bio/base/test/dummy/filelist.py @@ -0,0 +1,25 @@ +import bob.db.verification.filelist +from bob.bio.base.database import DatabaseFileList +from bob.bio.base.test.utils import atnt_database_directory +import pkg_resources + +database = DatabaseFileList( + database = bob.db.verification.filelist.Database( + base_dir = pkg_resources.resource_filename('bob.bio.base.test', 'data/atnt'), + original_directory = atnt_database_directory(), + original_extension = ".pgm", + dev_subdir = '.', + eval_subdir = '.', + world_filename = 'world.lst', + models_filename = 'models.lst', + probes_filename = 'probes.lst', + tnorm_filename = 'models.lst', + znorm_filename = 'probes.lst', + keep_read_lists_in_memory = True + ), + name = 'test_filelist', + protocol = None, + check_original_files_for_existence = True, + training_depends_on_protocol = False, + models_depend_on_protocol = False +) diff --git a/bob/bio/base/test/dummy/fileset.py b/bob/bio/base/test/dummy/fileset.py new file mode 100644 index 0000000000000000000000000000000000000000..e4de45f962daa943b72fde8f7ce8401de324caea --- /dev/null +++ b/bob/bio/base/test/dummy/fileset.py @@ -0,0 +1,52 @@ +import bob.db.atnt +import os + +from bob.bio.base.database import DatabaseBob, DatabaseBobZT +from bob.bio.base.test.utils import atnt_database_directory + +class FileSetDatabase (DatabaseBobZT): + + def __init__(self): + # call base class constructor with useful parameters + facereclib.databases.DatabaseBobZT.__init__( + self, + database = bob.db.atnt.Database( + original_directory = atnt_database_directory(), + ), + name = 'test_fileset', + check_original_files_for_existence = True, + training_depends_on_protocol = False, + models_depend_on_protocol = False + ) + + def uses_probe_file_sets(self): + return True + + def probe_file_sets(self, model_id = None, group = 'dev'): + """Returns the list of probe File objects (for the given model id, if given).""" + files = self.arrange_by_client(self.sort(self.database.objects(protocol = None, groups = group, purposes = 'probe'))) + # arrange files by clients + file_sets = [] + for client_files in files: + # generate file set for each client + file_set = facereclib.databases.FileSet(client_files[0].client_id, client_files[0].client_id, client_files[0].path) + file_set.files = client_files + file_sets.append(file_set) + return file_sets + + def all_files(self, groups = ['dev']): + return DatabaseBob.all_files(self, groups) + + def t_model_ids(self, group = 'dev'): + return self.model_ids(group) + + def t_enroll_files(self, model_id, group = 'dev'): + return self.enroll_files(model_id, group) + + def z_probe_files(self, group = 'dev'): + return self.probe_files(None, group) + + def z_probe_file_sets(self, group = 'dev'): + return self.probe_file_sets(None, group) + +database = FileSetDatabase() diff --git a/bob/bio/base/test/dummy/preprocessor.py b/bob/bio/base/test/dummy/preprocessor.py index 9f525a3368fc4fa6215eab7dc45562f14c541891..2770e2fe37fcb66053da2eba02cca3bc1ad71b27 100644 --- a/bob/bio/base/test/dummy/preprocessor.py +++ b/bob/bio/base/test/dummy/preprocessor.py @@ -1,9 +1,8 @@ +from bob.bio.base.preprocessor import Preprocessor -import bob.bio.base - -class DummyPreprocessor (bob.bio.base.preprocessor.Preprocessor): +class DummyPreprocessor (Preprocessor): def __init__(self): - bob.bio.base.preprocessor.Preprocessor.__init__(self) + Preprocessor.__init__(self) def __call__(self, data, annotation): """Does nothing, simply converts the data type of the data, ignoring any annotation.""" diff --git a/bob/bio/base/test/test_scripts.py b/bob/bio/base/test/test_scripts.py index 6ae497bc5cba3d4143a99a50c6e8b38b06ca092d..582dc4abe12818867c8c5740544998fbf5dafad1 100644 --- a/bob/bio/base/test/test_scripts.py +++ b/bob/bio/base/test/test_scripts.py @@ -13,12 +13,14 @@ import numpy import bob.io.base.test_utils import bob.io.image import bob.bio.base +from . import utils from nose.plugins.skip import SkipTest import pkg_resources -regenerate_reference = True +regenerate_reference = False + dummy_dir = pkg_resources.resource_filename('bob.bio.base', 'test/dummy') @@ -62,14 +64,7 @@ def _verify(parameters, test_dir, sub_dir, ref_modifier="", score_modifier=('sco shutil.rmtree(test_dir) -def grid_available(): - try: - import gridtk - except ImportError: - raise SkipTest("Skipping test since gridtk is not available") - - -def test_faceverify_local(): +def test_verify_local(): test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ @@ -87,7 +82,8 @@ def test_faceverify_local(): _verify(parameters, test_dir, 'test_local') -def test_faceverify_resources(): + +def test_verify_resources(): test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ @@ -106,7 +102,7 @@ def test_faceverify_resources(): _verify(parameters, test_dir, 'test_resource') -def test_faceverify_commandline(): +def test_verify_commandline(): test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ @@ -125,275 +121,141 @@ def test_faceverify_commandline(): _verify(parameters, test_dir, 'test_commandline') -""" -def test01c_faceverify_parallel(self): - self.grid_available() +@utils.grid_available +def test_verify_parallel(): test_dir = tempfile.mkdtemp(prefix='frltest_') test_database = os.path.join(test_dir, "database.sql3") # define dummy parameters parameters = [ - '-d', os.path.join(base_dir, 'scripts', 'atnt_Test.py'), - '-p', 'face-crop', - '-f', 'facereclib.features.Eigenface(subspace_dimension', '=', '100)', - '-t', 'facereclib.tools.Dummy()', + '-d', os.path.join(dummy_dir, 'database.py'), + '-p', 'dummy', + '-e', 'bob.bio.base.test.dummy.extractor.DummyExtractor()', + '-a', 'dummy', '--zt-norm', - '-b', 'test_c', + '-s', 'test_parallel', '--temp-directory', test_dir, - '--user-directory', test_dir, - '-g', 'facereclib.utils.GridParameters(grid = "local", number_of_parallel_processes = 2, scheduler_sleep_time = 0.1)', '-G', test_database, '--run-local-scheduler' + '--result-directory', test_dir, + '-g', 'bob.bio.base.grid.Grid(grid = "local", number_of_parallel_processes = 2, scheduler_sleep_time = 0.1)', '-G', test_database, '--run-local-scheduler', '-R', + '--import', 'bob.io.image' ] - print (facereclib.utils.command_line(parameters)) + print (bob.bio.base.tools.command_line(parameters)) - self.__face_verify__(parameters, test_dir, 'test_c') + _verify(parameters, test_dir, 'test_parallel') -def test01d_faceverify_compressed(self): +def test_verify_compressed(): test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ - '-d', os.path.join(base_dir, 'scripts', 'atnt_Test.py'), - '-p', 'face-crop', - '-f', 'facereclib.features.Eigenface(subspace_dimension', '=', '100)', - '-t', 'facereclib.tools.Dummy()', + '-d', 'dummy', + '-p', 'dummy', + '-e', 'dummy', + '-a', 'dummy', '--zt-norm', - '-b', 'test_d', + '-s', 'test_compressed', '--temp-directory', test_dir, - '--user-directory', test_dir, + '--result-directory', test_dir, '--write-compressed-score-files' ] - print (facereclib.utils.command_line(parameters)) + print (bob.bio.base.tools.command_line(parameters)) - self.__face_verify__(parameters, test_dir, 'test_d', score_modifier=('scores', '.tar.bz2')) + _verify(parameters, test_dir, 'test_compressed', score_modifier=('scores', '.tar.bz2')) -def test01m_faceverify_calibrate(self): +def test_verify_calibrate(): test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ - '-d', os.path.join(base_dir, 'scripts', 'atnt_Test.py'), - '-p', os.path.join(config_dir, 'preprocessing', 'face_crop.py'), - '-f', os.path.join(config_dir, 'features', 'eigenfaces.py'), - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), + '-d', 'dummy', + '-p', 'dummy', + '-e', 'dummy', + '-a', 'dummy', '--zt-norm', - '-b', 'test', + '-s', 'test_calibrate', '--temp-directory', test_dir, - '--user-directory', test_dir, + '--result-directory', test_dir, '--calibrate-scores' ] - print (facereclib.utils.command_line(parameters)) + print (bob.bio.base.tools.command_line(parameters)) - # check that the calibrated scores are as expected - self.__face_verify__(parameters, test_dir, 'test', '-calibrated', score_modifier=('calibrated', '')) + _verify(parameters, test_dir, 'test_calibrate', '-calibrated', score_modifier=('calibrated', '')) -def test01x_faceverify_filelist(self): - try: - import bob.db.verification.filelist - except ImportError: - raise SkipTest("Skipping test since bob.db.verification.filelist is not available") +def test_verify_fileset(): test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ - '-d', os.path.join(base_dir, 'databases', 'atnt_fl', 'atnt_fl_database.py'), -# '--protocol', 'None', - '-p', os.path.join(config_dir, 'preprocessing', 'face_crop.py'), - '-f', os.path.join(config_dir, 'features', 'eigenfaces.py'), - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), + '-d', os.path.join(dummy_dir, 'database.py'), + '-p', 'dummy', + '-e', 'bob.bio.base.test.dummy.extractor.DummyExtractor()', + '-a', 'dummy', '--zt-norm', - '-b', 'test_x', + '-s', 'test_fileset', '--temp-directory', test_dir, - '--user-directory', test_dir - ] - - print (facereclib.utils.command_line(parameters)) - - from facereclib.script.faceverify import main - main([sys.argv[0]] + parameters) - - # assert that the score file exists - score_files = (os.path.join(test_dir, 'test_x', 'scores', 'nonorm', 'scores-dev'), os.path.join(test_dir, 'test_x', 'scores', 'ztnorm', 'scores-dev')) - self.assertTrue(os.path.exists(score_files[0])) - self.assertTrue(os.path.exists(score_files[1])) - - # assert that the scores are are identical - reference_files = (os.path.join(base_dir, 'scripts', 'scores-nonorm-dev'), os.path.join(base_dir, 'scripts', 'scores-ztnorm-dev')) - - for i in (0,1): - - a1, b1 = bob.measure.load.split_four_column(score_files[i]) - a2, b2 = bob.measure.load.split_four_column(reference_files[i]) - - a1 = sorted(a1); a2 = sorted(a2); b1 = sorted(b1); b2 = sorted(b2) - - for i in range(len(a1)): - self.assertAlmostEqual(a1[i], a2[i], 6) - for i in range(len(b1)): - self.assertAlmostEqual(b1[i], b2[i], 6) - - shutil.rmtree(test_dir) - - - -def test02_faceverify_grid(self): - self.grid_available() - test_dir = tempfile.mkdtemp(prefix='frltest_') - # define dummy parameters including the dry-run - parameters = [ - sys.argv[0], - '-d', os.path.join(base_dir, 'scripts', 'atnt_Test.py'), - '-p', 'face-crop', - '-f', 'eigenfaces', - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), - '-g', 'grid', - '--zt-norm', - '--dry-run', - '--user-directory', test_dir, - '-b', 'dummy' - ] - - print (facereclib.utils.command_line(parameters)) - - # run the test; should not execute anything... - from facereclib.script.faceverify import main - main(parameters) - shutil.rmtree(test_dir) - - -def test03_faceverify_lfw_local(self): - # try to import the lfw database - try: - facereclib.utils.resources.load_resource('lfw','database') - except Exception as e: - raise SkipTest("The resource for database 'lfw' could not be loaded; probably you didn't define the 'bob.db.lfw' in your *buildout.cfg*. Here is the import error: '%s'" % e) - - test_dir = tempfile.mkdtemp(prefix='frltest_') - # define dummy parameters - parameters = [ - sys.argv[0], - '-p', 'face-crop', - '-f', 'eigenfaces', - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), - '--dry-run', - '--user-directory', test_dir, - '-b', 'dummy' + '--result-directory', test_dir ] - print (facereclib.utils.command_line(parameters)) - - # run the test; should not execute anything... - from facereclib.script.faceverify_lfw import main - main(parameters) - shutil.rmtree(test_dir) - - -def test04_faceverify_lfw_grid(self): - self.grid_available() - # try to import the lfw database - try: - facereclib.utils.resources.load_resource('lfw','database') - except Exception as e: - raise SkipTest("The resource for database 'lfw' could not be loaded; probably you didn't define the 'bob.db.lfw' in your *buildout.cfg*. Here is the import error: '%s'" % e) - - test_dir = tempfile.mkdtemp(prefix='frltest_') - # define dummy parameters - parameters = [ - sys.argv[0], - '-p', 'face-crop', - '-f', 'eigenfaces', - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), - '-g', 'grid', - '--dry-run', - '--user-directory', test_dir, - '-b', 'dummy' - ] + print (bob.bio.base.tools.command_line(parameters)) - print (facereclib.utils.command_line(parameters)) + _verify(parameters, test_dir, 'test_fileset', ref_modifier="-fileset") - # run the test; should not execute anything... - from facereclib.script.faceverify_lfw import main - main(parameters) - shutil.rmtree(test_dir) -def test05_faceverify_gbu_local(self): - # try to import the gbu database +def test_verify_filelist(): try: - facereclib.utils.resources.load_resource('gbu','database') - except Exception as e: - raise SkipTest("The resource for database 'gbu' could not be loaded; probably you didn't define the 'bob.db.gbu' in your *buildout.cfg*. Here is the import error: '%s'" % e) - + import bob.db.verification.filelist + except ImportError: + raise SkipTest("Skipping test since bob.db.verification.filelist is not available") test_dir = tempfile.mkdtemp(prefix='frltest_') # define dummy parameters parameters = [ - sys.argv[0], - '-p', 'face-crop', - '-f', 'eigenfaces', - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), - '--dry-run', - '--user-directory', test_dir, - '-b', 'dummy' + '-d', os.path.join(dummy_dir, 'filelist.py'), + '-p', 'dummy', + '-e', 'dummy', + '-a', 'dummy', + '--zt-norm', + '-s', 'test_filelist', + '--temp-directory', test_dir, + '--result-directory', test_dir ] - print (facereclib.utils.command_line(parameters)) - - # run the test; should not execute anything... - from facereclib.script.faceverify_gbu import main - main(parameters) - shutil.rmtree(test_dir) - + print (bob.bio.base.tools.command_line(parameters)) -def test06_faceverify_gbu_grid(self): - self.grid_available() - # try to import the gbu database try: - facereclib.utils.resources.load_resource('gbu','database') - except Exception as e: - raise SkipTest("The resource for database 'gbu' could not be loaded; probably you didn't define the 'bob.db.gbu' in your *buildout.cfg*. Here is the import error: '%s'" % e) - - test_dir = tempfile.mkdtemp(prefix='frltest_') - # define dummy parameters - parameters = [ - sys.argv[0], - '-p', 'face-crop', - '-f', 'eigenfaces', - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), - '-g', 'grid', - '--dry-run', - '--user-directory', test_dir, - '-b', 'dummy' - ] - - print (facereclib.utils.command_line(parameters)) + from bob.bio.base.script.verify import main + main([sys.argv[0]] + parameters) - # run the test; should not execute anything... - from facereclib.script.faceverify_gbu import main - main(parameters) - shutil.rmtree(test_dir) + # assert that the score file exists + score_files = [os.path.join(test_dir, 'test_filelist', 'None', norm, 'scores-dev') for norm in ('nonorm', 'ztnorm')] + assert os.path.exists(score_files[0]), "Score file %s does not exist" % score_files[0] + assert os.path.exists(score_files[1]), "Score file %s does not exist" % score_files[1] + # assert that the scores are are identical (might be in a different order, though + reference_files = [os.path.join(data_dir, 'scores-%s-dev' % norm) for norm in ('nonorm', 'ztnorm')] -def test10_faceverify_file_set(self): - test_dir = tempfile.mkdtemp(prefix='frltest_') - # define dummy parameters - parameters = [ - '-d', os.path.join(base_dir, 'scripts', 'fileset_Test.py'), - '-p', os.path.join(config_dir, 'preprocessing', 'face_crop.py'), - '-f', os.path.join(config_dir, 'features', 'eigenfaces.py'), - '-t', os.path.join(config_dir, 'tools', 'dummy.py'), - '--zt-norm', - '-b', 'test', - '--temp-directory', test_dir, - '--user-directory', test_dir - ] + for i in (0,1): + # load scores + a1, b1 = bob.measure.load.split_four_column(score_files[i]) + a2, b2 = bob.measure.load.split_four_column(reference_files[i]) + # sort scores + a1 = sorted(a1); a2 = sorted(a2); b1 = sorted(b1); b2 = sorted(b2) + + # assert that scores are almost equal + for i in range(len(a1)): + abs(a1[i] - a2[i]) < 1e-6 + for i in range(len(b1)): + abs(b1[i] - b2[i]) < 1e-6 - print (facereclib.utils.command_line(parameters)) + finally: + shutil.rmtree(test_dir) - self.__face_verify__(parameters, test_dir, 'test', ref_modifier="-fileset") +""" def test11_baselines_api(self): self.grid_available() # test that all of the baselines would execute diff --git a/bob/bio/base/test/utils.py b/bob/bio/base/test/utils.py index 7359ba0e296ff45680cb3d65eb622ecad57c8019..15a1f9c5295d582bf3913cf8d71f5f42469eb059 100644 --- a/bob/bio/base/test/utils.py +++ b/bob/bio/base/test/utils.py @@ -19,6 +19,9 @@ import numpy import os +import functools +from nose.plugins.skip import SkipTest + import logging logger = logging.getLogger("bob.bio.base") @@ -37,6 +40,17 @@ def random_training_set_by_id(shape, count = 50, minimum = 0, maximum = 1): train_set.append([numpy.random.random(shape) * (maximum - minimum) + minimum for j in range(count)]) return train_set +def grid_available(test): + '''Decorator to check if the gridtk is present, before running the test''' + @functools.wraps(test) + def wrapper(*args, **kwargs): + try: + import gridtk + return test(*args, **kwargs) + except ImportError: + raise SkipTest("Skipping test since gridtk is not available") + return wrapper + atnt_default_directory = os.environ['ATNT_DATABASE_DIRECTORY'] if 'ATNT_DATABASE_DIRECTORY' in os.environ else "/idiap/group/biometric/databases/orl/" global atnt_downloaded_directory diff --git a/bob/bio/base/tools/command_line.py b/bob/bio/base/tools/command_line.py index dc533e52a2a1a32f372b17708e17ea8abe37fc0d..03b52e391fcd790de5efbb3e1ce243da0506ffb3 100644 --- a/bob/bio/base/tools/command_line.py +++ b/bob/bio/base/tools/command_line.py @@ -80,6 +80,8 @@ def command_line_parser(description=__doc__, exclude_resources_from=[]): help = 'Name of the directory (relative to --result-directory) where to write the results to') sub_dir_group.add_argument('--zt-directories', metavar = 'DIR', nargs = 5, default = ['zt_norm_A', 'zt_norm_B', 'zt_norm_C', 'zt_norm_D', 'zt_norm_D_sameValue'], help = 'Name of the directories (of --temp-directory) where to write the ZT-norm values; only used with --zt-norm') + sub_dir_group.add_argument('--grid-log-directory', metavar = 'DIR', default = 'grid_tk_logs', + help = 'Name of the directory (relative to --temp-directory) where to log files are written; only used with --grid') flag_group = parser.add_argument_group('\nFlags that change the behavior of the experiment') bob.core.log.add_command_line_option(flag_group) @@ -97,6 +99,8 @@ def command_line_parser(description=__doc__, exclude_resources_from=[]): help = 'Measure and report the time required by the execution of the tool chain (only on local machine)') flag_group.add_argument('-L', '--run-local-scheduler', action='store_true', help = 'Starts the local scheduler after submitting the jobs to the local queue (by default, local jobs must be started by hand, e.g., using ./bin/jman --local -vv run-scheduler -x)') + flag_group.add_argument('-N', '--nice', type=int, default=10, + help = 'Runs the local scheduler with the given nice value') flag_group.add_argument('-c', '--calibrate-scores', action='store_true', help = 'Performs score calibration after the scores are computed.') flag_group.add_argument('-z', '--zt-norm', action='store_true', @@ -112,21 +116,6 @@ def command_line_parser(description=__doc__, exclude_resources_from=[]): } -def zt_options(parsers): - """Adds options for ZT score normalization to the parsers.""" - - ####################################################################################### - #################### sub-tasks being executed by this script ########################## - parser.add_argument('--sub-task', - choices = ('preprocess', 'train-extractor', 'extract', 'train-projector', 'project', 'train-enroller', 'enroll', 'compute-scores', 'concatenate', 'calibrate'), - help = argparse.SUPPRESS) #'Executes a subtask (FOR INTERNAL USE ONLY!!!)' - parser.add_argument('--model-type', choices = ['N', 'T'], - help = argparse.SUPPRESS) #'Which type of models to generate (Normal or TModels)' - parser.add_argument('--score-type', choices = ['A', 'B', 'C', 'D', 'Z'], - help = argparse.SUPPRESS) #'The type of scores that should be computed' - parser.add_argument('--group', - help = argparse.SUPPRESS) #'The group for which the current action should be performed' - def initialize(parsers, command_line_parameters = None, skips = []): """Parses the command line and arranges the arguments accordingly, and returns the arguments. @@ -157,6 +146,10 @@ def initialize(parsers, command_line_parameters = None, skips = []): if args.timer is not None and not len(args.timer): args.timer = ('real', 'system', 'user') + # set base directories + args.temp_directory = os.path.join(args.temp_directory, args.sub_directory) + args.result_directory = os.path.join(args.result_directory, args.sub_directory) + # load configuration resources args.database = load_resource(' '.join(args.database), 'database', imports = args.imports) args.preprocessor = load_resource(' '.join(args.preprocessor), 'preprocessor', imports = args.imports) @@ -164,6 +157,7 @@ def initialize(parsers, command_line_parameters = None, skips = []): args.algorithm = load_resource(' '.join(args.algorithm), 'algorithm', imports = args.imports) if args.grid is not None: args.grid = load_resource(' '.join(args.grid), 'grid', imports = args.imports) + args.grid_log_dir = os.path.join(args.temp_directory, args.grid_log_directory) # protocol command line override if args.protocol is not None: @@ -171,9 +165,6 @@ def initialize(parsers, command_line_parameters = None, skips = []): protocol = 'None' if args.database.protocol is None else args.database.protocol - args.temp_directory = os.path.join(args.temp_directory, args.sub_directory) - args.result_directory = os.path.join(args.result_directory, args.sub_directory) - # result files args.info_file = os.path.join(args.result_directory, protocol, args.experiment_info_file) @@ -196,7 +187,7 @@ def initialize(parsers, command_line_parameters = None, skips = []): model_directories = [os.path.join(args.temp_directory, protocol, m) for m in args.model_directories], score_directories = [os.path.join(args.temp_directory, protocol, z) for z in args.score_directories], zt_score_directories = [os.path.join(args.result_directory, protocol, s) for s in args.zt_directories], - compressed_extension = 'tar.bz2' if args.write_compressed_score_files else '', + compressed_extension = '.tar.bz2' if args.write_compressed_score_files else '', default_extension = '.hdf5', ) diff --git a/bob/bio/base/tools/grid.py b/bob/bio/base/tools/grid.py index b8760845c7a91657735b41ff00b32c128959b214..45eb5cf0a6bb3c4285d83f7e6352516de4f92969 100644 --- a/bob/bio/base/tools/grid.py +++ b/bob/bio/base/tools/grid.py @@ -1,3 +1,15 @@ +from __future__ import print_function + +import sys +import os +import math +from ..grid import Grid +from .command_line import command_line + +import bob.core +import logging +logger = logging.getLogger("bob.bio.base") + def indices(list_to_split, number_of_parallel_jobs, task_id=None): """This function returns the first and last index for the files for the current job ID. If no job id is set (e.g., because a sub-job is executed locally), it simply returns all indices.""" @@ -18,3 +30,79 @@ def indices(list_to_split, number_of_parallel_jobs, task_id=None): start = job_id * number_of_objects_per_job end = min((job_id + 1) * number_of_objects_per_job, len(list_to_split)) return (start, end) + + +class GridSubmission: + def __init__(self, args, command_line_parameters, executable = './bin/verify.py', first_fake_job_id = 0): + assert os.path.isfile(executable) + assert isinstance(args.grid, Grid) + self.args = args + self.command_line = [p for p in command_line_parameters[1:] if not p.startswith('--skip') and p not in ('-q', '--dry-run', '-o', '--execute-only')] + self.executable = executable + self.fake_job_id = first_fake_job_id + + import gridtk + # setup logger + bob.core.log.set_verbosity_level(bob.core.log.setup("gridtk"), args.verbose) + Manager = gridtk.local.JobManagerLocal if args.grid.is_local() else gridtk.sge.JobManagerSGE + self.job_manager = Manager(database = args.gridtk_db_file) + self.submitted_job_ids = [] + + def submit(self, command, number_of_parallel_jobs = 1, dependencies=[], name = None, **kwargs): + """Submit a grid job with the given command, which is added to the default command line. + If the name is not given, it will take the second parameter of the ``command`` as name. + """ + dependencies = dependencies + self.args.external_dependencies + + # create the command to be executed + cmd = [self.executable] + self.command_line + cmd += command.split() + + # if no job name is specified, create one + if name is None: + name = command.split()[1] + # generate log directory + log_dir = os.path.join(self.args.grid_log_directory, name) + + # generate job array + if number_of_parallel_jobs > 1: + array = (1,number_of_parallel_jobs,1) + else: + array = None + + # submit the job to the job manager + if not self.args.dry_run: + job_id = self.job_manager.submit( + command_line = cmd, + name = name, + array = array, + dependencies = dependencies, + log_dir = log_dir, + stop_on_failure = self.args.delete_dependent_jobs_on_failure, + **kwargs + ) + logger.info("submitted: job '%s' with id '%d' and dependencies '%s'" % (name, job_id, dependencies)) + self.submitted_job_ids.append(job_id) + return job_id + else: + self.fake_job_id += 1 + print ('would have submitted job', name, 'with id', self.fake_job_id, 'with parameters', kwargs, end='') + if array: + print (' using', array[1], 'parallel jobs', end='') + print (' as:', command_line(cmd), '\nwith dependencies', dependencies) + return self.fake_job_id + + + def grid_job_id(self): + id = os.getenv('JOB_ID') + if id is not None: + return int(id) + return id + + def execute_local(self): + """Starts the local deamon and waits until it has finished.""" + logger.info("Starting jman deamon to run the jobs on the local machine.") + failures = self.job_manager.run_scheduler(job_ids=self.submitted_job_ids, parallel_jobs=self.args.grid.number_of_parallel_processes, sleep_time=self.args.grid.scheduler_sleep_time, die_when_finished=True, nice=self.args.nice) + if failures: + logger.error("The jobs with the following IDS did not finish successfully: '%s'.", ', '.join([str(f) for f in failures])) + self.job_manager.report(job_ids = failures[:1], output=False) diff --git a/bob/bio/base/tools/scoring.py b/bob/bio/base/tools/scoring.py index b8c902963dddd843a1b1780fe17cfdfda925044f..d14cb4fecf5db794eefb20b51875d7e5b5a6b762 100644 --- a/bob/bio/base/tools/scoring.py +++ b/bob/bio/base/tools/scoring.py @@ -140,7 +140,7 @@ def _scores_b(algorithm, model_ids, group, force): # test if the file is already there score_file = fs.b_file(model_id, group) if utils.check_file(score_file, force): - Logger.warn("Score file '%s' already exists.", score_file) + logger.warn("Score file '%s' already exists.", score_file) else: model = algorithm.read_model(fs.model_file(model_id, group)) b = _scores(algorithm, model, z_probe_files) @@ -399,11 +399,12 @@ def calibrate(norms = ['nonorm', 'ztnorm'], groups = ['dev', 'eval'], prior = 0. logger.info(" - Calibration: calibrating scores from '%s' to '%s'", score_file, calibrated_file) # iterate through the score file and calibrate scores - scores = _open_to_read(score_file) + scores = bob.measure.load.four_column(_open_to_read(score_file)) + f = _open_to_write(calibrated_file, write_compressed) for line in scores: - assert len(line) == 4 + assert len(line) == 4, "The line %s of score file %s cannot be interpreted" % (line, score_file) calibrated_score = llr_machine([line[3]]) f.write('%s %s %s %3.8f\n' % (line[0], line[1], line[2], calibrated_score[0])) _close_written(calibrated_file, f, write_compressed) diff --git a/bob/bio/base/utils/io.py b/bob/bio/base/utils/io.py index a7327f2dc2bb102f164f2c11f0439cb8c1a55fdd..8af99ced9ff41a534a2b43d4757ad31ca5fdf720 100644 --- a/bob/bio/base/utils/io.py +++ b/bob/bio/base/utils/io.py @@ -1,6 +1,9 @@ import os import tempfile, tarfile +import logging +logger = logging.getLogger("bob.bio.base") + import bob.io.base def check_file(filename, force, expected_file_size = 1):